建议和反馈

请填写你的反馈内容

问答 > 以太坊 > 问答详情

如果我可以更改节点的代码并正常运行,那么区块链系统(例如以太坊)如何?10LK

让我们以太坊为例(这个问题对于所有公共区块链都是通用的)。我可以更改代码(例如发送交易但不减少帐户余额)并像往常一样运行它。有没有阻止这种情况的潜在机制?我的意思是,如果我可以运行它的修改版,那么系统如何安全?

2020-08-06
0
请先登陆或注册

月月月2020-08-06

关于第一个问题,除非您分叉并修改以太坊代码,否则您将无法进行所需的更改(发送交易时不扣除余额)。这也几乎回答了您的最后一个问题,您可以在此处找到部署代码或获取原始源代码所需的所有帮助。随时修改它。
https://github.com/ethereum

同样,工作或以太坊也不如您想象的那么简单。您不能只是编写代码(智能合约)并将其部署在以太坊区块链中,并期望它们免费运行。您需要以醚作为醚的燃料。要了解以太坊的安全性如何工作,您首先需要了解区块链的安全性。我不愿赘述,但是请注意,随着您进一步深入研究链,修改代码变得越来越困难。同样,以太坊是相当安全的,至少与您对区块链的期望一样多,尽管似乎时不时会出现安全漏洞,但是在2016年发生50M黑客攻击以及随后的硬叉以太坊之后,平均而言是相当安全的黑客。

综上所述,修改代码需要创建一个fork。而且这个分叉与主要的以太坊完全无关。因此,您不在链上运行以太坊的修改版,因此它仍然安全。同样,在进行智能合约时您非常有限,并且它们不允许直接修改区块链。


投一票
评论(0)
赞赏(0)
Diva2020-08-06

假设您运行了一个未经修改的以太坊节点,并且从帐户中的某处获取了3个以太币。现在,您重建自己的修改节点,以便向我发送2个以太币,但不会减少2个以太币。发生的事情是,我和世界其他地方将验证并处理您签署的交易,并从余额中减少2个以太币。我们不运行修改后的版本,对吧?你知道发生了什么吗?下次您尝试再花费2个以太币时,您的节点会认为您仍然有3个以太币,并且将签署并广播交易,但是世界上其他所有人都不接受您的交易,因为他们知道您只有1个以太币。因此,您只会伤害自己。

投一票
评论(0)
赞赏(0)

求助中

解决了这个问题,预计可以帮助到

  • 0
  • 0
  • 6
  • 2
  • 4
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励