密码学邮件列表

比特币点对点电子现金论文

中本聪 · 2008 年 11 月 17 日

SN-10019 附来源、原文与上下文。

阅读语言

James A. Donald 写道:

James A. Donald wrote:

引用的来信James A. Donald来源 ↗
引用的中本聪旧文中本聪来源 ↗

幸好,只需要为当前最佳分支保留一个待处理交易池。

Fortunately, it's only necessary to keep a pending-transaction pool for the current best branch.

这要求我们知道,也就是说,一个诚实、行为正常、通信和数据存储运转良好的对等节点知道,当前最佳分支是什么——

This requires that we know, that is to say an honest well behaved peer whose communications and data storage is working well knows, what the current best branch is -

我的意思是,一个节点只需要为自己掌握的最佳分支保留待处理交易池,也就是它目前认为最好的那个分支。它会尝试在这个分支上构建区块,而它需要交易池也仅仅是为了这一点。

I mean a node only needs the pending-tx pool for the best branch it has. The branch that it currently thinks is the best branch. That's the branch it'll be trying to make a block out of, which is all it needs the pool for.

引用的来信James A. Donald来源 ↗
引用的中本聪旧文中本聪来源 ↗

广播大概会几乎完全可靠。

Broadcasts will probably be almost completely reliable.

我们不能假设每条消息至少到达一次,而必须设计一种机制,使信息能够到达,即使承载信息的消息经常无法到达。

Rather than assuming that each message arrives at least once, we have to make a mechanism such that the information arrives even though conveyed by messages that frequently fail to arrive.

我想,我已经解决了对等网络的广播机制。

I think I've got the peer networking broadcast mechanism covered.

每个节点向其邻居发送一份清单,列出自己拥有的新区块和新交易的哈希。邻居请求其中自己尚未拥有的条目。如果某个条目超时后仍未到达,就向另一个拥有它的邻居请求。因为所有或大多数邻居最终都应该拥有每个条目,所以即使与某个邻居通信出了问题,也能从其他任意邻居那里获取,逐个尝试就好。

Each node sends its neighbours an inventory list of hashes of the new blocks and transactions it has. The neighbours request the items they don't have yet. If the item never comes through after a timeout, they request it from another neighbour that had it. Since all or most of the neighbours should eventually have each item, even if the coms get fumbled up with one, they can get it from any of the others, trying one at a time.

这种清单—请求—数据的机制会带来一点延迟,但它能避免多余的数据块进入发送队列,节省带宽,因此最终带来的加速更多。

The inventory-request-data scheme introduces a little latency, but it ultimately helps speed more by keeping extra data blocks off the transmit queues and conserving bandwidth.

引用的来信James A. Donald来源 ↗

你已经有了这样一种设计的概要和提案,这是很大的进步,但难点都藏在细节里。

You have an outline and proposal for such a design, which is a big step forward, but the devil is in the little details.

我相信,在过去一年半的编写过程中,我已经想清楚了所有这些细节,而且它们确实很多。论文没有涵盖具体功能细节,但源代码很快就会发布。我已经把主要文件发给你了。(目前可按请求提供,很快会完整发布)

I believe I've worked through all those little details over the last year and a half while coding it, and there were a lot of them. The functional details are not covered in the paper, but the sourcecode is coming soon. I sent you the main files. (available by request at the moment, full release soon)

Satoshi Nakamoto

Satoshi Nakamoto

来源

阅读字号

选择适合你的字号,之后阅读会继续使用。