原始文献 / 论坛帖 / Re: BitDNS and Generalizing Bitcoin

Re: BitDNS and Generalizing Bitcoin

Bitcointalk · 2010-12-09 22:46:50 UTC

AuthorSatoshi Nakamoto
TitleRe: BitDNS and Generalizing Bitcoin
Date2010-12-09 22:46:50 UTC
ForumBitcointalk · 原文

引用自 nanotube(2010 年 12 月 9 日 09:20:40 PM)(https://bitcointalk.org/index.php?topic=1790.msg28700#msg28700):矿工好像基本上得做“额外工作”。如果 bitdns 挖矿的额外工作没有奖励(当然它还会拖慢主链比特币的工作),矿工有什么动力去包含 bitdns(以及其他侧链)?
动力就是:同样的工作,还能拿到额外侧链的奖励。

挖比特币的同时,为什么不顺手拿免费域名呢?

如果你现在一周挖 50 BTC,那现在可以拿到 50 BTC 外加一些域名。

你只有一份工作。如果解出来,它同时解出比特币和 BitDNS 的一个区块。概念上,它们通过一棵默克尔树绑在一起。交到比特币这边,就掰掉 BitDNS 那根分支;交到 BitDNS 那边,就掰掉比特币这根分支。

实际要给比特币做改造的话,BitDNS 那边大概要多 ~200 字节,但这不是大事。你一直在说每区块 50 个域名,跟为了向后兼容的每区块 200 字节比,那是小巫见大巫。如果我们真在乎省几个字节,可以排一个很久以后的区块,让比特币升级到默克尔树在顶层的现代化结构。

注意,链在这棵新默克尔树的下面。也就是说,比特币和 BitDNS 各自在自己的区块里有自己的链式链接。这和常见的时间戳服务器结构是反的——那边是链在上面、默克尔树在下,因为那是要造一条共同的主链。这是两个不共享链的时间戳服务器。

英文原文

Quote from: nanotube on December 09, 2010, 09:20:40 PM(https://bitcointalk.org/index.php?topic=1790.msg28700#msg28700)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.