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