Bitcointalk · BitDNS and Generalizing Bitcoin

中本聪,2010 年 12 月 9 日

SN-3584 已核对来源,附原文与上下文。

阅读语言
中文译文

如此矿工基本上就得多干「额外的活」。倘若从 bitdns 挖矿的额外工作里得不到回报(这当然会拖慢主比特币的工作),矿工有什么动力把 bitdns(以及其他任何侧链)纳入进来呢?

激励在于:同样一份工作,还能从额外的侧链拿到报酬。

既然你在生成比特币,为什么不在同一份工作里顺便拿到免费域名呢?

倘若你现在每周能生成 50 BTC,那么现在你还能同时得到 50 BTC 和一些域名。

你手里有一份工作。解出它,就同时解出 Bitcoin 和 BitDNS 各一个区块。概念上,它们通过一棵默克尔树绑在一起。要提交给 Bitcoin,就把 BitDNS 分支掰掉;要提交给 BitDNS,就把 Bitcoin 分支掰掉。

实践中,要为 Bitcoin 做兼容改造,BitDNS 侧大抵要多占约 200 个额外字节,然而这不算什么。你一直在说每个区块 50 个域名,相比之下为了向后兼容每区块多出的这 200 字节根本不值一提。倘若我们足够在意省这几个字节,将来尚且可以安排一个遥远的区块高度,让比特币升级到顶部带默克尔树的现代化结构。

注意,各条链都在这棵新默克尔树之下。也就是说,Bitcoin 和 BitDNS 各自在自己的区块内部拥有自己的链环。这与常见的时间戳服务器结构正好相反——常见结构是链条在上、默克尔树在下,因那样会形成一条共同的主链。而这是两个不共享链的时间戳服务器。

ORIGINAL · 英文原文
seems that the miner would have to basically do "extra work". and if there's no reward from the bitdns mining from the extra work (which of course, slows down the main bitcoin work), what would be a miner's incentive to include bitdns (and whatever other side chains) ?
The incentive is to get the rewards from the extra side chains also for the same work.

While you are generating bitcoins, why not also get free domain names for the same work?

If you currently generate 50 BTC per week, now you could get 50 BTC and some domain names too.

You have one piece of work.  If you solve it, it will solve a block from both Bitcoin and BitDNS.  In concept, they're tied together by a Merkle Tree.  To hand it in to Bitcoin, you break off the BitDNS branch, and to hand it in to BitDNS, you break off the Bitcoin branch.

In practice, to retrofit it for Bitcoin, the BitDNS side would have to have maybe ~200 extra bytes, but that's not a big deal.  You've been talking about 50 domains per block, which would dwarf that little 200 bytes per block for backward compatibility.  We could potentially schedule a far in future block when Bitcoin would upgrade to a modernised arrangement with the Merkle Tree on top, if we care enough about saving a few bytes.

Note that the chains are below this new Merkle Tree.  That is, each of Bitcoin and BitDNS have their own chain links inside their blocks.  This is inverted from the common timestamp server arrangement, where the chain is on top and then the Merkle Tree, because that creates one common master chain.  This is two timestamp servers not sharing a chain.
来源
Bitcointalk 原始链接 ↗ 记录编号 SN-3584