观区块链最强大的一个特质就是我们能独立验证其执行中的每一个部分。即使大部分区块链矿工(或者权益证明中的验证者)被攻击,如果该攻击者企图让无效区块上链,网络也会拒绝。哪怕是没有实时验证区块的用户,(在变故发生时)也能够收到正在验证区块的用户的警告(这个过程有可能实现自动化),进而自行验证发现攻击者的链无效,自动拒绝接收这条链,然后与其他节点协调一致接收另一条遵循规则的链。 但在实践中,我们到底需要多少验证者?一百个独立验证的节点?一千个?我们是否需要让世界上每个普通人都运***来检查所有交易?回答这些问题是我们的挑战,尤其是,如果我们还想构建出比单一链的中本聪工作量证明更有优势的共识机制的区块链,解决这些问题就格外重要。 为什么要验证 - 51% 攻击者尝试让网络接受一个无效区块,而我们希望网络不会接受无效链!- 用户对区块链进行验证主要有两个好处。首先,这可以在最大程度上让节点参与到决定合法链(也就是被整个社区接受的、具备合法性的链)的过程中。通常来说,合法链被定义为 “有最多矿工或验证者支持的有效区块链”,比如比特币中的 “最长有效链”。无效链根据定义就会被拒绝,如果有多条有效链竞争,则获得最多矿工或验证者支持的链获胜。因此如果你运行一个验证所有区块有效性的节点,你将能检测到哪些链有效哪些无效,从而将最大程度地提高检测出合法链的机会。但用户对区块链进行验证其实还有一个更深层的益处。假如一个强大的参与者企图让网络接受某个对协议的变更(比如改变发行量),并且有多数矿工支持,在没有其他人对区块链进行验证的情况下,这个攻击很容易就实现了。并且,所有客户端都会 默认 接受这条新链。等到所有人回过神来意识到这件事时,只能靠 反对者 通过协调来拒绝这条新链链。但如果普通用户也参与验证,那么情况就完全不同了,企图变更协议的攻击者需要说服验证用户主动下载他们的软件补丁以变更协议。 如果有足够多的用户参与验证,那么当有人尝试对协议进行有争议的更改时,默认情况就不会是成功,而是造成混乱。天然混乱也会对网络产生破坏,需要协议层面外的社会协调来解决,但这也在攻击者面前放置了更大的障碍,让他们无法自信自己可以一击成功然后一走了之,也就大大降低了他们发动攻击的意愿。如果多数用户参与直接或间接的验证,并且攻击者只有多数矿工的支持,那么这次攻击天然会失败,这也是对所有人最好的结果。 —- 编译者/作者:杰哥 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
有关区块链验证的哲学
2020-09-09 杰哥 来源:区块链网络
- 上一篇:一个新的金融科技革命
- 下一篇:东亚引领加密市场,专业交易员主导加密货币交易量
LOADING...
相关阅读:
- 挣扎的比特币创造了新的历史哈希率记录,首次突破150 TH / s的稳定水平2020-09-09
- eToro与Ripple和Flare网络的讨论2020-09-09
- RFUEL准备升空,RioDeFi众筹爆炸2020-09-08
- 迦南将斥资1000万美元回购自己的股份2020-09-08
- 【「比特魔方双周报」| ?有产品有社区的DeFi币都暴涨了,静待游戏风口2020-09-08