原创/及时整编/linken
本文经原创作者授权转发
更多区块链知识请点击下方红色字体跳转阅读
比特币之小红花
假设阿聪老师发小红花给成绩突出的学生予以激励,小红花可以在学校图书馆换动漫书、小说等等。此举很受学生欢迎,学生私下的交易也使用小红花作为代币。小强用小红花换我的《火影忍者》,我又可以拿小红花去换小说,小红花自然成了学校的代币。
有学生为了换取更多书籍自己制作小红花,它的量越来越多,超过阿聪老师往书架补货的速度,所有图书被买空,小红花变得无用武之地一文不值。
小红花数据中心化
阿聪老师为了重整学生信心,开始记账。每位学生都有一个属于自己的“小红花账本”,同时在班长那里记录“小红花总账”。当同学之间发生交易,双方在班长的监视下核对交易数据,再把交易登记在“小红花总账”上。
例:我想要小明同学的漫画,支付给他1朵小红花,在自己的账本记“小红花-1”,小明在他的账本记“小红花+1”,然后我们拿给班长确认,没问题就在“小红花总账”上记录这笔交易。如果有学生未经班长审核修改自己的账本,肯定对不上总账。
但是某天某位同学发现班长的同桌傻妞有用不完的小红花……
小红花数据去中心化
如此如何是好?山穷水复疑无路,看似解决不了问题,但是阿聪老师想出一套绝妙的方案。(有人也许想到让纪律委员监督,此方治标不治本。还可能导致纪律委员和它的同桌甜妞也有了用不完的小红花)
方案如下:
不设立总账;
每笔交易全班同学共同记账;
当天发生的交易当天记录;
奖励1朵小红花给最先确认数据无误的同学;
前提是所有同学的账目一致才被承认有效。
学校or区块链(1)
把这个模式套入区块链,每位学生与自己的账本结合构成一个区块,所有同学数据相互链接构成区块链。
方案拆分:
账本上的小红花等同虚拟货币比特币;
全班同学组成p2p网络,每个同学等同一个节点;
同学+账本构成区块,所有同学账本数据同步链接构成区块链;
去中心化,不需要班长的“小红花总账”;
所有同学同步计算,最先计算出正确数据的同学得到奖励,就是币圈说的挖矿;
有同学用计算器算得比别人快,计算器就是一台硬件够牛的矿机;
如果所有同学的账本名字用代码表示,就是匿名性的体现。
如图所示把学校的例子嵌入互联网:
每个记账的同学相当一个节点。网络中用户在电脑上运行比特币客户端软件,这样的电脑称为一个节点。节点通过互联网连接形成p2p网络。网络节点都参与记账,形成互连的分布式同步数据库。
互联网安全多重要大家都知道,比特币程序用“密钥串”保证安全,一个私钥对接一个公钥。
学校or区块链(2)
再看学校的例子,假设每个同学都有自己的密码(私钥),然后去阿聪老师那里根据私钥领取对应的公钥。公钥作为同学们的账户名和地址。我要跟小明交易,他用公钥账户收款,我用公钥账户汇款,其他同学拿我公钥提交的数据去阿聪老师那里验证,公钥公开透明,但是我们的私钥所有同学都不知道,我们也不知道其它公钥哪个对应哪位同学。
返回网络,每个参与者随机生成一个字符串做私钥,转换变成公钥(也是一个字符串),公钥就是私人比特币账户。我向其他人转账的时候,我把数据发给其他的节点,然后传播到全网。网络上的其他节点使用对应的公钥对交易数据进行验证,同步记录交易数据。
所有节点一起验证交易数据,每10分钟的数据都被打包成一个“数据块”。例似学校每天计算的数据,比特币系统每10分钟统计一次交易数据,也就是每十分钟奖励一次小红花。
胜出者得到一定比特币的奖励,奖励最初设定为50比特币,每生成210K个区块,比特币的数量依次减半。直到第33次减半,每个数据块只能产出0.0021个比特币时直接减为0。
比特币程序每10分钟生成一个区块,210K个10分钟接近4年。所以比特币挖矿的收益大概每4年降低一半。2009年到现在已经降低2次,目前每次胜出者的奖励约12.5个比特币。
领取专属 10元无门槛券
私享最新 技术干货