Skip to content

回复:网络长时间分裂后再重新连接会发生什么? ​

原始发布页

打开来源页面
查看 1 个交叉存档

creighto:我同意这个想法。几小时后,客户端应该能够察觉区块流量的下降幅度是否已经大到不太可能只是偶然。它可以判断自己是否已听不到这个世界的嗡鸣。

引用 knightmb 于 2010 年 8 月 3 日 下午 07:02:13 的发言

引用 gavinandresen 于 2010 年 8 月 3 日 下午 06:38:44 的发言

或者,如果分裂持续得足够久(超过 100 个区块),涉及较短链上所生成币的交易会在合并时失效。

有意思的信息,也就是说,除了一些双重支付问题,只要区块链分开的时间没有超过大约 100 个区块(或 16 小时以上),

实际情况中,分裂很可能会非常不对称。很难把全世界从中间一分为二。更可能的情况是某一个国家对世界其他地区,比如说是 1:10 的分裂。在这种情况下,少数分叉生成 100 个区块所需的时间会长 10 倍,也就是大约 7 天。此外,客户端会非常容易发现自己听到的区块实在太少了,肯定出了问题。

引用 knightmb 于 2010 年 8 月 3 日 下午 07:02:13 的发言

分裂延迟有没有硬编码的限制?意思是,如果我有一个与公共网络分裂的小型网络,在里面花了一些币,几天后回来让它们与公共网络同步(如果期间发生了新币生成,则不算那些币),交易应该不会有问题吧?

没有时间限制。假设你没有花费少数分叉中生成的币,也没有花费你收到的某个人双重支付的币,那么你的交易以后任何时候都可以进入另一条链。

英文原文 ​

展开英文原文

creighto: I agree with that idea. After a few hours, it should be possible for the client to notice if the flow of blocks has dropped off by more than would be likely just by chance. It could tell if it's not hearing the hum of the world anymore.

Quote from: knightmb on August 03, 2010, 07:02:13 PM

Quote from: gavinandresen on August 03, 2010, 06:38:44 PM

Or if the split lasted long enough (more than 100 blocks), transactions that involve generated coins on the shorter chain would be invalid at the merge.

Interesting info, so other than some double-spending issues, as long as the block chain isn't separated for more than 100 or so blocks (or 16+ hours),

In practice, splits are likely to be very asymmetrical. It would be hard to split the world down the middle. More likely it would be a single country vs the rest of the world, lets say a 1:10 split. In that case, it would take the minority fork 10 times as long to generate 100 blocks, so about 7 days. Also it would be super easy for the client to realize it's hearing way too few blocks and something must be wrong.

Quote from: knightmb on August 03, 2010, 07:02:13 PM

If there a hard coded limit on split delay? Meaning if I had a small network split from the public network, spent some coin around, came back a few days later and got them sync up to the public network (other than coin generation if it happened) transactions should be fine?

There's no time limit. Assuming you weren't spending coins generated in the minority fork, or spending someone's double-spends you received, your transactions can get into the other chain at any time later.

为历史保存,为中文读者整理。每篇档案均附来源与英文原文。