区块链·02框架
.区块链使用场景
#登记、清算系统
降低账本维护成本,降低结算成本
#智能合约
合约公开透明,降低合约的建立、执行、仲裁等成本
#拓展…
.分层
#应用层:可编程货币/金融/社会 (智能合约)
#数据层:公共总账本/共识算法/密码学
#网络层:P2P网络、TCP/IP协议
.架构特点
#去中心化:所有节点都有同等权利和义务
#可靠数据库:任意节点都有完整数据库,一半以上的算力才能对数据进行修改
#开源可编程:数据和程序公开,可通过接口查询数据;提供脚本支持系统,支持智能合约
#集体维护:个体损坏不影响整体
#安全可信:
非对称密码学原理对交易数据进行签名,防止交易伪造
hash算法保证交易不可轻易被篡改
各节点共识算法(如:工作量证明)形成强大算力,抵制攻击
#交易准匿名:
用户只需公开地址,无需公开真实身份
同一用户可以不断变换地址
.共识机制
#1、pow(工作量证明)
尚未记录的现有交易打包到一个区块+通过遍历生成随机数的hash值,
若满足一定难度,则获取了区块链本轮记账权,并广播出去,
全网其它节点验证挖矿难度+交易数据,加入此区块到自己的链。
##优点:
去中心化、节点自由进出;
攻击者算力不超过总算力的50%就可以保证安全;
##缺点:
挖矿造成大量资源浪费;
挖矿的激励机制造成矿池算力高度集中,违背去中心化理念;
此机制达成共识时间周期长(7笔交易/秒),不适合商业应用;
#2、pos(权益证明)
节点提供拥有一定数量的代币证明来获取竞争区块链的记账权。
避免中心化:会在pos机制基础上,采用其他方式来增加随机性
##优点:
缩短共识机制时间,降低pow机制形成的资源浪费
##缺点:
攻击的成本低,网络安全有待验证;
代币多的节点获得记账权几率更大,失去公正性
#3、dpos(股份授权证明)
a、持股者投票选出一定数量的见证人
b、见证人按序在两秒内生成区块,若生成失败需交给下一见证人
c、持股人可以随时投票更换见证人
##优点:
大幅度缩少了参与验证和记账的节点
秒级快速共识
##缺点:
固定数量的见证人进行记账不适合完全去中心化场景;
在节点较少的场景下,选举的见证人代表性弱
#4、分布式一致算法
基于传统的分布式一致性技术;
适用于联盟链和私有链;
pbft(拜占庭容错算法)/paxos/raft
##优点:
秒级快速共识,保证一致性
##缺点:
去中心化程度弱于公有链共识机制;
适用于多方参与的多中心商业模式;
.交易流程
#交易创建:所有者A用私钥对前一次交易和下一所有者B签署数字签名,把此签名附加到货币末尾,制作成交易单
#交易传播:A将交易单广播,每个节点把交易信息纳入一个区块中
#工作量证明:节点进行计算,获得创建区块的权利,并获取相应奖励
#网络节点验证:某一节点找到解,把所有交易广播至网络中,由其它节点进行验证
#记录区块:区块通过验证后记录到区块链中,继续进行下一区块的竞争
【完】