简体   繁体   English

如何在区块链和超级账本结构中检测到区块链或世界状态中的数据篡改(已添加块的数据)?

[英]how tampering of data (already added block's data) in blockchain or worldstate is detected in blockchain and hyperledger fabric?

I am a new learner of blockchain technology. 我是区块链技术的新手。 I have a couple of question regarding the tamper proof mechanism of the blockchain. 关于区块链的防篡改机制,我有几个问题。

1) My understanding: I understood that hash of [ hash the previous block + content of current block ] will go as a hash to the next block. 1)我的理解:我理解[哈希上一个块+当前块的内容]的哈希将作为哈希到下一个块。 if we tamper content of a block the hash will change and the link to the next block will be broken. 如果我们篡改一个块的内容,则哈希将更改,并且下一个块的链接将断开。

My Question: If a suspect changed the content of a block long after the block got added, will the calculation of hash and placing the hash in the next block happens automatically ?. 我的问题:如果嫌疑人在添加块之后很长时间更改了块的内容,哈希的计算并将哈希放入下一个块会自动发生吗? Suppose if some one has already illegally changed the content and the link is broken, is there an automatic mechanism to trigger the event that the link has been broken ?. 假设如果有人已经非法更改了内容并且链接断开,是否存在一种自动机制来触发链接断开的事件? At what time the tampered copy of blockchain will be identified and invalidated ? 何时会识别出被篡改的区块链副本并使其失效?

2) My understanding: In Hyperledger fabric I uderstood that ledger = blockchain + worldstate. 2)我的理解:在Hyperledger架构中,我了解到分类账=区块链+ worldstate。 The world state is calculated based on the blockchain. 世界状态是基于区块链计算的。 The application will depend on worldstate values, the applications will not traverse through blockchain to find a value. 该应用程序将取决于世界状态值,这些应用程序将不会遍历区块链以找到一个值。

My questions are: i) how frequetly the worldstate is recalculated ? 我的问题是:i)重新计算世界状态的频率如何?

ii) will a broken chain(in case of a tamper) is detected while re-calculating the worldstate ii)在重新计算世界状态时是否会检测到断链(如果被篡改)

iii) what if a suspect tampers the worldstate on a peer. iii)如果嫌疑人篡改同伴的世界状态该怎么办。 how this situation is set right ? 这种情况如何设置正确? will the tampering be detected during the consensus or any other acticity ? 在共识或其他任何行为期间是否会检测到篡改?

I read and understood that the blockchain is tamper proof, but really want to understand which processes safe guard the BC ? 我阅读并了解区块链是防篡改的,但我真的想了解哪个流程可以安全地保护BC?

Imagine a blockchain world where chain has 1000 blocks and 100 nodes . 想象一个1000 blocks链世界,其中链有1000 blocks100 nodes

Now node x temperas with block 950 and changes its hash . 现在, node x蛋彩图具有block 950并更改其hash As a result all consecutive block's hash changes. 结果,所有连续块的hash改变了。 So node x now has a version of chain that is different from other 99 nodes . 因此, node x现在具有的chain版本不同于其他99 nodes As majority of the nodes still has same chain it will be decided that node x has faulty chain and node x 's decision will not be taken into account when creating a new block. 由于大多数节点仍具有相同的chain因此将确定node x chain有故障,并且在创建新块时将不考虑node x的决定。 This is how blockchain becomes tamper proof. 这就是区块链成为防篡改的方式。

Now lets consider an edge case scenario. 现在,考虑一个极端情况。 Out of 100 nodes 51 nodes temperas with block 950 and changes its hash . block 950 ,每100个节点中有51个节点为蛋彩画,并更改其hash Now these 51 nodes has a faulty chain but same chain . 现在这51 nodeschain有故障,但chain相同。 As a result this chain will prevail and actual chain will be discarded. 结果,该chain将占上风,而实际的chain将被丢弃。 This is known as 51% attack . 这就是所谓的51% attack

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM