LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 《重新创造比特币》第6章:第二个版本上线啦

《重新创造比特币》第6章:第二个版本上线啦

2020-01-11 正東 来源:区块链网络

jackone ? 2019年11月18日 am10:13 ? BSV百科 ? 阅读 50

0.前言

中本聪和Gilfoyle一起合作,完成了Bitcoin0.0.2版本的设计工作。

重要的改变包括:

1.加入数字签名。

2.公钥替代用户名。

3.将签名加入交易模型。

4.删除了账号模型。

新版本,让交易变得更自由!

1.创建私钥

中途镇,咖啡馆,经过一周的开发和测试,Bitcoin0.0.2版本上线了。

中本聪找到Bob:“Hi,老板,Bitcoin的新版本上线啦!再有新客户想加入,不用再来找我注册啦,他们自己就可以创建账号(其实是地址,Bitcoin已经没有账户模型了)啦”。

Bob朝着大厅喊道:“太好了!有人要来杯咖啡吗?顺便试试新系统!”

Alice走过来:“我来吧,正好想再喝一杯卡布奇诺。”

Alice拿出手机,打开浏览器,输入bitcoin.org。出现了这样的界面。

Alice叫到:“怎么和以前不一样了!”(见下图)

《重新创造比特币》第6章:第二个版本上线啦

新版本的登陆页面

中本聪说:“你需要先创建私钥”

Alice问:“什么是私钥?“

中本聪:“你可以把私钥当成是你的账号密码,这个密码很长,可以代替之前的用户名+密码”。

Alice:“这么说我就理解了”

中本聪:“你先创建私钥吧”

Alice选择创建私钥,点击了确定按钮,进入了下一个界面(见下图

《重新创造比特币》第6章:第二个版本上线啦

生成的私钥和公钥

Alice按照提示,拿出笔抄写着自己的私钥:“这个公钥又是什么?”

中本聪:“你可以理解成你的收款地址,你也可以用他来查询余额,公钥是公开的,只有私钥需要保密”

Bob在一旁看着,问到:“这个私钥看起来很重要,它是在哪里生成的?在服务端还是客户端(浏览器就是客户端),安全吗?可以和我说说你是如何做的吗?我以前学过点编程,应该能听懂。”;

中本聪说:“原来老板也懂编程啊,私钥是在客户端生成的,私钥永远不会在网络中传输,因为一旦被截获,别人将你的私钥导入,你的余额会被分分钟转走。”

中本聪继续解释:“但是生成私钥的算法代码是在服务端存储的,当浏览器第一次访问bitcoin.org的时候,服务端会将算法代码返回给浏览器,这时浏览器就拥有了生成私钥的计算能力,接下来用户点击创建私钥按钮的时候,浏览器运行自身的算法代码,并不会于服务端交互,所以私钥不会在网络中传输。”(见下图)

《重新创造比特币》第6章:第二个版本上线啦

生成私钥时,浏览器和服务端的交互

Bob:“听起来不错,这样我就放心了”。

中本聪:“其实,这样的设计还是不够安全,因为控制算法代码的是服务端,如果我想作恶,只要偷偷的在服务端更改算法代码,这样生成私钥的规则就由我说了算了。”

Bob说:“可是我们相信你不会作恶的”。

中本聪:“人性是不可靠的,如果诱惑足够大,我也不能保证自己不作恶哦。”

中本聪:“不过如果不嫌麻烦,你可以自己通过抛硬币生成私钥,然后将私钥导入”

2.交易

Alice说:“我相信你,我要操作转账啦,Bob你的收款地址是什么?”

Bob说:“我用短信发给你,这样你就不用手工抄写啦。”

中本聪说:“等一下Alice,你新创建的地址余额现在是0个Bitcoin,我得手工改下账本数据,将你之前账号里的余额割接过来。”

中本聪登陆到服务端将账本数据变更之后,Alice的余额恢复如初了。

Alice收到了Bob的短信,将公钥复制下来,粘贴到了转账界面,点击了转账。(见下图)

《重新创造比特币》第6章:第二个版本上线啦

转账到Bob的公钥地址

Bob打开手机查看自己的余额,已经收到了这笔转账。(见下图)

《重新创造比特币》第6章:第二个版本上线啦

Bob的余额界面

Bob说:“真神奇!去掉了用户注册,还用公钥地址保护了用户的隐私,可以再说说整个交易是如何处理的吗?”

中本聪说:“好,我们从Alice点击转账按钮开始“

“首先浏览器生成交易数据,交易数据由两个部分组成,分别是:业务数据和签名。业务数据是‘公钥A to 公钥B 30′,公钥A代表Alice的公钥,公钥B代表Bob的公钥。签名是用Alice的私钥通过加密Alice的公钥生成的密文。”

“然后,浏览器将生成的交易数据放入消息中,向服务端发起网络请求”

“服务端接收到此消息,解析后得到交易数据“

“服务端首先要验证余额是否足够:遍历账本(transaction.txt)找出属于公钥A的交易记录,合计得出余额”

”服务端接下来验证签名是否合法:使用公钥A来解密签名,判断解密后的签名是否等于公钥A,如果相等则验证成功。”

“服务端最后将交易数据写入到账本,并将结果通过消息反馈回浏览器”

“浏览器接收到消息反馈,在界面显示交易结果。”(见下图)

《重新创造比特币》第6章:第二个版本上线啦

交易发生时,浏览器和服务端的交互

Alice接过了Bob的咖啡,新版本的第一笔交易宣告成功!

这个版本升级的很顺利,自从有了Gilfoyle的合作,中本聪心理越来越踏实。

可是只要是人写的程序,怎么可能没有BUG。

3.后记

本篇的目的让读者看到一个系统运行起来的全景图。

但是现在的设计中存在bug,在下一篇会看到这个bug究竟是怎么回事。

【免责声明】本文仅代表作者本人观点,与本站无关。比特币元网站对文中关于比特币,BSV,比特币SV,bitcoinsv等观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何保证。请读者仅作参考,特此声明!转载请注明出处:http://www.bsvers.com/1707.html

—-

编译者/作者:正東

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...