我是区块链技术的初学者。关于区块链的防篡改机制,我有几个问题。
1)我的理解:我认为上一块的哈希+当前块的内容将作为哈希到下一块。如果我们篡改了一个块的内容,散列就会改变,到下一个块的链接就会断开。
我的问题是:如果疑犯在添加一个块很长时间之后更改了该块的内容,是否会自动计算散列并将散列放在下一个块中?假设有人已经非法更改了内容,链接被断开,是否有自动机制来触发链接已被断开的事件?区块链被篡改的副本将在什么时候被识别并失效?
2)我的理解:在Hyperledger fabric中,我理解为ledger =区块链+ worldstate。世界状态是基于区块链计算的。应用程序将依赖于WorldState值,应用程序不会遍历区块链来查找值。
我的问题是: i)重新计算世界状态的频率是多少?
ii)在重新计算世界状态时是否会检测到断链(在篡改的情况下)
iii)如果嫌犯篡改了同级的世界状态怎么办。这种情况是如何纠正的呢?在协商一致或任何其他活动期间,是否会检测到篡改?
我读懂了区块链是防篡改的,但真的想知道哪些进程安全地守护着BC?
发布于 2019-02-12 02:27:59
想象一下一个区块链世界,链上有1000 blocks
和100 nodes
。
现在,使用block 950
更改其hash
的node x
temperas。因此,所有连续块的hash
都会发生变化。因此,node x
现在有一个与其他99 nodes
不同的chain
版本。由于大多数节点仍然具有相同的chain
,因此将确定node x
的chain
有问题,并且在创建新的区块时不会考虑node x
的决定。这就是区块链成为防篡改的原因。
现在,让我们考虑一个边缘情况场景。在100个节点中,有51个节点使用block 950
并更改其hash
。现在,这些51 nodes
的chain
有故障,但chain
相同。因此,此chain
将占上风,而实际的chain
将被丢弃。这就是所谓的51% attack
。
https://stackoverflow.com/questions/54630084
复制相似问题