第四节:比特币的共识协议
数字货币和纸质货币区别是可以复制,叫作双花攻击 即double spending attack。
去中心化货币要解决两个问题:①数字货币的发行②怎么验证交易的有效性,防止double spending attack。
答案:①比特币的发行是由挖矿决定的
②依靠区块链的数据结构
比特币的发行者A拥有铸币权(createcoin
) 假如发行10个比特币 A(10)分别给B和C各五个 → B(5)C(5) 该交易需要有A的签名,证明经A同意。(designed by A)同时还要说明花掉的10个比特币从哪来的。
参考拍的图四 第二个方框中的钱是从第一个框内铸币交易中来的。
比特币系统中每个交易都包含输入和输出两部分。输入部分要说明币的来源,输出部分要给出收款人公钥的哈希。
有的交易部分比较复杂,如C的货币来源是第二第三个方框,要标识清楚。
图四就构成了一个小型的区块链,这里有两种哈希指针,一种哈希指针是连接在各个区块之间的,把它们串起来构成一个链表,前面学的就是这种哈希指针。而在该图中还有第二种哈希指针,是指向前面某个交易的指针,用来指明币的来源。为什么要说明币的来源:证明币不是凭空捏造的是有记录的,同时也是防范double spending。
现在来看第二个方框里A向B的转账,该交易需要A的签名和B的地址。比特币系统里收款的地址是通过公钥推算出来的。比如B的地址就是B的公钥取哈希然后经过一些转换得到的。
A如何知道B的地址?比特币系统中没有查询对方地址的功能,必须通过其他渠道。比如某个电商网站,接受比特币支付,就可以公开它的地址或公钥。文章来源:https://www.toymoban.com/news/detail-707510.html
A需要知道B的地址,B需要知道A的什么信息吗?B其实也要知道A的公钥,这代表A的身份。不仅是B,文章来源地址https://www.toymoban.com/news/detail-707510.html
到了这里,关于区块链北大肖老师学习笔记3的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!