原始文献 / 邮件 / Bitcoin P2P e-cash paper

Bitcoin P2P e-cash paper

Cryptography Mailing List · 2008-11-09 16:31:26 UTC

FromSatoshi Nakamoto
SubjectBitcoin P2P e-cash paper
Date2008-11-09 16:31:26 UTC
ListCryptography Mailing List · 原文

James A. Donald 写道:
>好,假设一个节点在工作量证明中纳入了一批交易,全部是诚实的合法单次支付,另一个节点在其工作量证明中纳入了另一批交易,也全部是同样诚实的合法单次支付,且两个证明在大约同一时间生成。
>
>那会发生什么?

它们都广播自己的区块。所有节点都收到这两个区块并都保留,但只在先收到的那个上工作。假设恰好一半节点先收到一个,另一半先收到另一个。

短时间内,所有交易都会传播完毕,每个人都拥有完整集合。在每一方工作的节点会试图补上本方缺失的交易。当下一个工作量证明被找到时,无论那个节点之前在哪边工作,那条分支都会变长、僵局被打破。无论是哪一方胜出,新区块都会包含另一半交易,所以无论哪种情况,分支都会包含所有交易。即使极不可能地连续分叉两次,第二次分叉的两边也都会包含完整的交易集合。

如果交易需要多等一个或几个周期才能进入区块,这不是问题。

Satoshi Nakamoto

---------------------------------------------------------------------
The Cryptography Mailing List
Unsubscribe by sending "unsubscribe cryptography" to majordomo at metzdowd.com

英文原文

James A. Donald wrote:
>OK, suppose one node incorporates a bunch of
>transactions in its proof of work, all of them honest
>legitimate single spends and another node incorporates a
>different bunch of transactions in its proof of
>work, all of them equally honest legitimate single
>spends, and both proofs are generated at about the same
>time.
>
>What happens then?

They both broadcast their blocks. All nodes receive them and keep both, but only work on the one they received first. We'll suppose exactly half received one first, half the other.

In a short time, all the transactions will finish propagating so that everyone has the full set. The nodes working on each side will be trying to add the transactions that are missing from their side. When the next proof-of-work is found, whichever previous block that node was working on, that branch becomes longer and the tie is broken. Whichever side it is, the new block will contain the other half of the transactions, so in either case, the branch will contain all transactions. Even in the unlikely event that a split happened twice in a row, both sides of the second split would contain the full set of transactions anyway.

It's not a problem if transactions have to wait one or a few extra cycles to get into a block.

Satoshi Nakamoto

---------------------------------------------------------------------
The Cryptography Mailing List
Unsubscribe by sending "unsubscribe cryptography" to majordomo at metzdowd.com