区块链中fork的分类:
state fork:
两个节点差不多同一个时候挖到了矿,就会出现一个临时性的分叉。
forking attack(deliberate fork):也是属于对比特币这个区块链当前的状态产生的意见分歧,只不过这个意见分歧是故意造成的,人为造成的。
protocol fork
1.hard fork:
由于去中心化的存在,各节点之间btc的协议在改变后,各节点产生的区块不同。
例如:block size limit;如果区块大小是1MB,一个交易大概250字节,那么一个区块只有4000个交易,一秒钟只有7个交易;
如果block size limit -> 4MB,并且大规模的新的节点已经改变了区块大小。还有部分旧的节点还是1MB。如果旧节点一直不更新软件,那么这种分叉就一直存在。
2. soft fork
如果block size limit -> 0.5MB,并且大规模的新的节点已经改变了区块大小。还有部分旧的节点还是1MB。如果旧节点一直不更新软件,那么就一直在白挖。
P2SH:Pay to Script Hash
付钱付给redeem Script。在验证的时候,新节点做两阶段的证明来验证。而旧节点是只有一阶段的验证。