1.P2P网络 —— 去中心化的网络系统
区块链就是以P2P技术为基础的永不停止的全球网络!
2.数字签名方案:非对称加密算法(sk:私钥 pk:公钥)
3.哈希函数:
定义:
三大特性:
4.哈希指针
这样可以防止数据被篡改,因为你改一个数据整个链都不对了,除非你全改!
参考:http://8btc.com/thread-37209-1-1.html
5.默克尔树(Merkle Tree)
用哈希指针改写平衡二叉树得到 “默克尔树”。
每个区块中用默克尔树储存数据,然后用哈希指针连接成链。
参考:https://blog.csdn.net/wo541075754/article/details/54632929
6.UTXO – Unspent Transaction Output :未支出的交易输出
上一笔交易将比特币汇至某一地址,这笔比特币可长期存储,直到该地址的主人要将款项汇至下一个收款人。在某
笔款项尚未被提出汇至下一个地址之前,这笔款项被称为UTXO。
SHAPE \* MERGEFORMAT
UTXO模型由比特币使用,而以太坊使用账户/余额模型。
比特币的转账过程:
7. 分布式系统的共识算法
区块链和共识算法的关系:
数字货币会产生双花问题,解决需要把所有交易进行排序形成一个顺序账本(区块链),那解决区块链的所有节点同步问题就需要分布式系统的共识算法。
分布式系统的同步和异步:
分布式系统的一致性:
不能达成一致性的两种情况:
非拜占庭错误的两种解决方案:
拜占庭错误的解决方案:
①中本聪共识(POW):
工作证明机制。
②POS共识:
股权证明机制。资产会产生利息;决策时按股权比例投票。
③DPOS共识:
委托人机制,类似议会制度或人民代表大会制度。
④PBFT: 见上图,一般不可用。
不同共识算法的观点:
几种算法参考:https://blog.csdn.net/lsttoy/article/details/61624287