Satoshi proposed a brilliant solution to the chain problem long ago in the thread.(As well as appamatto but Satoshi's solution is much simpler) We don't need to worry about integrating those information in the bitcoin chain since we can use the same miners to generate 50 BTC and domain name coin.
Only execution will give us something to work with. Theorists are just that, theorists. If the ideas don't get implemented, the idea of BitDNS is simply worthless.
The problem with Satoshi's "solution" is that it is only half a solution and doesn't address the key sticking point. The problem is the desire to use Bitcoins, as we currently use bitcoins, to pay the "fees" for conducting "transactions" with the DNS system or other similar systems and to give that payment some sort of meaning in terms of that payment being something other than a purely voluntary and optional donation system.
Please correct me if I'm wrong in my interpretation, but that is the real issue at hand right now. I've outlined my ideas clearly, and furthermore Satoshi's "solution" only addresses the issue of forking the mining effort or trying to keep that at least somewhat unified. Essentially he was suggesting that alternate "currencies" could put together some sort of networking protocol to share the mining effort. On that point I completely agree, but the unstated elephant in the room, the one thing that everybody wants to avoid but isn't being stated, is the need to create a parallel currency to Bitcoin because Bitcoin itself is inadequate to accomplishing the task at hand.
I agree with RHorning on the 3 main problems:
1. Create parallel currency for doing DNS
2. Fork the chains but merge the mining effort to allow miners already working on bitcoin to complete DNS blocks with no additional work.
3. Allow BitDNS miners to be rewarded in bitcoins or any non-voluntary reward system
Here are the solutions to each problem:
1. This is trivial. Start a new chain with a new genesis block and with the network operating on a different port.
2. This was addressed by Satoshi in an earlier post and clarified today in IRC by tcatm. The way bitcoin currently works is we search for a nonce such that, when hashed together with the work (prevhash + merkle tree containing bitcoin transactions) we get a hash with a lot of zeros in front (this makes the difficulty).
The idea is that we create a father merkle tree that contains the work for an arbitrary number of parallel currencies. So miners will use the hash of this tree instead of using the tree of just the bitcoin transactions. Essentially we created a large tree that contains the transactions for many different currencies.
The miner then presents the solution to each parallel currency's network by revealing the specific leaf of the father tree that contains the data specific to that currency, and the rest proceeds as it currently does.
3. The upkeep of the BitDNS network should be paid for either by every domain name owner paying a sort of rent to miners that produce BitDNS blocks, or through DNS transaction fees. Whenever a BitDNS transaction occurs, the recipient will be required to supply a Bitcoin address. Each miner on the BitDNS network will set a block solving fee they feel comfortable with. When a miner works on solving a BitDNS block, he will check the main bitcoin network to verify that domain owners have paid sufficient rent or transaction fees to miners of previous blocks. Any domains that have not paid, the miner will be entitled to make themselves owners of it.
With all of these questions answered, now we can start on the execution and write the code.