在阅读区块链简介后对于难点的POW和POS加深了理解:
POW的一般理解
根据难度做SHA256哈希运算, 不停寻找Nonce特定的HASH 前导0的个数越多,代表难度越大
优点是难于计算,一旦收到网络上的区块,能快速验证难度算法按高度动态调整,维持出块时间不变
POW规范链
POW易分叉,本地存储所有分叉区块CanonicalChain维护HASH和Number对应关系,标记最长链
当收到区块难度比本地高时,会发生区块回退reorg,执行块的交易,状态更新
POS
POS权益证明POW耗费电力,提高出块时间易分叉,TPS低持有Token参与质押来获取一定的收益
经济激励模型,对作恶节点有相应的惩罚以维护全网稳定
POS常用概念
委员会,持币用户质押竞选Leader出块,其他委员会成员校验块并提交签名
EPOCH 一定区块高度为一届选举 新的委员会成员 随机选举和按难度、质押量选举换届 本届出块完成即开启下届出块 提高全网安全,减少委员会攻击和作恶
交易
交易的不可篡改交易里面的字段做SHA3得到txhash私钥签名txhash,签名获取RSV,V含有ChainId
交易在传输中篡改, txHash会发生改变,校验签名不会通过交易记录nonce
重放攻击是指用户交易信息在一条链上再次发送,比如Alice转钱给Bob的交易发出后,Bob可以将这条交易信息重复发送到网络中,如果没有nonce,这笔交易会被当作合法交易,所以每笔交易必须有一个nonce值。nonce从0开始递增,每发送一笔交易,nonce便加1。
nonce小于当前的nonce,交易被拒绝
nonce大于当前使用的n