FAQ:以太坊面临的硬分叉

叉叉XX   |     |   1256 次阅读

原文:https://blog.ethereum.org/2016/10/18/faq-upcoming-ethereum-hard-fork/
作者:Hudson Jameson
发布日期:2016.10.18
翻译:许昕&托亚

以太坊网络将在区块号到达2463000时进行一次硬分叉,具体分叉时间将会在中国时间2016年10月18日晚8-9点。可以在 https://fork.codetract.io/ 看到本次分叉的倒计时网页。

作为一个用户,我需要做些什么?

下载最新版本的以太坊客户端:

国内镜像可在EthFans知识库内找到:http://ethfans.org/wikis/Home

如果我不参与硬分叉,会发生什么?

如果你正在使用一个没有更新过的旧以太坊客户端,你的客户端会同步到分叉前的区块链。你会被困在一个不兼容且遵循旧秩序的链,你将不能在分叉后的以太坊网络上发送以太币或者进行操作。

以太坊中的硬分叉是什么?

硬分叉是一种对以太坊底层协议的改变,为了升级系统来建立新的规则。所有的以太坊客户端都需要被升级;不然他们会被困在一条不被兼容且遵循旧协议的老链。区块链系统的去中心化特性使得硬分叉升级变得困难。在一条区块链中进行硬分叉需要整个社区的合作与沟通,同时也需要各个以太坊客户端的开发者们进行合作,使得整个分叉过程变得流畅。

硬分叉时会发生什么?

在就硬分叉中需要做出的改变达成共识之后,这些协议上的改变会被编写到不同的以太坊客户端中去,比如geth、parity和ethereumJ。这些改变在一个特定的块时会被激活。任何不升级的节点会被废弃留在保持着原来规则旧链上。

我们为什么需要进行一次硬分叉?

自从9月18日起,以太坊网络就在受到一个人或群体的攻击,并导致大量的交易被延迟处理。整个网络现在已经充满了等待处理的交易,它们同时也导致用户们自己的交易也被延迟的恶性循环。你可以把这种行为理解为以太坊区块链上的拒绝服务(DoS)攻击。

每个在以太坊网络上被处理的合同都会消耗一定的gas费用。使用ADD这样的简单操作相对于复杂计算操作,例如用SHA256加密一个特定的数字,会消耗较少的gas。攻击者通过在他的交易合同中不断的使用某些特定的opcodes使得整个交易变得计算复杂却在网络上消耗极少的费用。为了防止攻击者继续使用这样的廉价高计算量合约毁坏整个网络,我们将会提高某些opcodes的价格。

为什么我们需要两次硬分叉?两次分叉会有什么影响?

两次分叉各自针对攻击中产生的不同问题。第一次硬分叉解决的是运行代码(opcode)价格过低导致的网络健康问题。像以太坊改善方案150中提出的,“EIP 150 硬分叉”,第一次硬分叉设定在第2463000块时发生,它将会调整那些因为价格过低而导致攻击的运行代码(opcode)的价格。第二次硬分叉旨在清除那些攻击者用来充斥泛滥以太坊网络的空账号,这些账号导致区块链网络产生肿胀。第二次分叉还在讨论中。第二次分叉实现之后,很有可能会有一个“清扫期”,期间可能延迟和处理交易以及网络同步困难的情况仍然会持续直到所有的网络肿胀的情况处理王完毕。

EIP 150硬分叉会怎样影响合约?

请阅读以下评论:
https://www.reddit.com/r/ethereum/comments/57p0bv/a_quick_note_on_how_the_call_gas_cost_increase/
中文翻译:
http://ethfans.org/topics/739

我在哪里可以找到更多有关这两次硬分叉会怎么影响底层协议的技术性文章?

针对以太坊底层协议的更改都被记录在GitHub的以太坊改造提议库内。

以下的两个EIP描述了目前面临的两次分叉的计划:

十分感谢以太坊社区的理解和耐心,感谢聚到一起提供想法,意见以及解决方案去解决这次攻击,帮助平台进化的所有不同客服端和平台的以太坊开发者们。

 
1 人喜欢