首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何验证块链/DLT未被篡改?

如何验证块链/DLT未被篡改?
EN

Stack Overflow用户
提问于 2018-11-14 17:58:40
回答 3查看 758关注 0票数 0

我理解分布式分类账是如何使用链式链表数据模型确保完整性的,根据这种模型,每个块都被链接到以前的所有块中。

我还理解在PoW/PoS/PoS/(此处插入任何不可信的协商一致机制)上下文中,验证过程使恶意(或一组)个人难以篡改块,因为他们没有必要的资源向所有网络成员广播分类帐实例,从而将其版本更新为错误的版本。

我的问题是,如果某个人确实设法改变了一个块,那么完整性检查过程会发生吗?这是否核查机制的一个实际部分,如果是的话,它在历史上走得有多远?是否有必要验证10000块中的第500个块的完整性,如果是的话,我该如何做?我是否需要从第10000块开始,并验证从那里到第500块的所有块?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-11-15 14:08:59

我的问题是,如果某个人确实设法改变了一个块,那么完整性检查过程会发生吗?

换个街区在哪里?如果您的意思是更改我的计算机块的副本,他们将如何做到这一点?闯入我的电脑?那会对其他人产生什么影响呢?

这是否核查机制的一个实际部分,如果是的话,它在历史上走得有多远?是否有必要验证10000块中的第500个块的完整性,如果是的话,我该如何做?我是否需要从第10000块开始,并验证从那里到第500块的所有块?

对于大多数块链来说,通常的规则是每个完整的节点检查它收到的每一个块,以确保它遵循每一个系统规则的有效性。

虽然您可以重新检查您已经检查过的每个块,以确保您的特定副本没有被篡改,但这通常没有用。可以篡改本地块存储的人也可以篡改本地检查代码。因此,这种检查通常不会提供任何额外的安全性。

票数 0
EN

Stack Overflow用户

发布于 2018-11-15 09:11:28

首先,篡改块并不是几乎不可能的,因为向所有节点广播错误分类账所需的资源短缺。广播不一定是资源密集型的。这是一个连锁反应,你只需触发。篡改块链块的挑战来自于重新计算所有连续块(被篡改后的块)的有效散列(满足块难度级别)的困难。因为修改一个块会改变它的散列,而哈希反过来又会改变下一个块的前一个散列属性,从而使它以前正确的散列无效,依此类推直到最后一个块。如果说最近的块索引是1000。如果你篡改了990街区。这意味着您必须重新挖掘(通过随机更改当前值来重新计算一个有效的散列)块从990到1000。这本身是很难做到的。但是如果你想要这么做的话,但当你广播更新的区块链时,其他矿商还会开采其他区块(指数中的指数是1001,1002)。所以你的不会是最长的有效区块链,因此会被拒绝。

票数 0
EN

Stack Overflow用户

发布于 2018-11-15 14:01:16

根据本文的观点,当一个新的块被广播到网络时,它的事务的完整性将根据事务的历史进行验证和验证。只有当恶意较长的块链被广播到网络时,完整性检查才会出现问题。在这种情况下,协议强制节点接受这个最长的链。请注意,这条最长的链维护自己的完整性,并由自己进行验证。但它是与它自己的真理版本相对照的。不过,请注意,这是可能的,只有当攻击者有哈希能力,至少是51%的网络哈希能力。这种力量实际上是不可能的。https://medium.com/coinmonks/what-is-a-51-attack-or-double-spend-attack-aa108db63474

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53306224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档