Bitcoin Forum
November 07, 2024, 11:40:26 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: "Prove yourself" / Sane merged-mining implementation  (Read 5531 times)
Luke-Jr (OP)
Legendary
*
expert
Offline Offline

Activity: 2576
Merit: 1186



View Profile
October 11, 2011, 03:40:56 PM
 #1

I've completed a very rough draft of a complete sane merged-mining implementation for Eligius. By sane, I mean it adds no potential harm to the Bitcoin mining operation. This goal is accomplished by making minimal changes (only 2 simple small patches) to bitcoind, and having it ignore problems with the merged mining manager.

The code is all MIT licensed for anyone to use, but I am posting it primarily for new developers who want to prove their skills and get involved more with bitcoin development. Parts 2 and 3 of this implementation are functional, but incomplete. They need some cleanup before they can be merged to mainline codebases (bitcoind and merged-mine-proxy). I'm available on IRC if anyone tackling this needs mentoring/assistance.

It is made up of 3 parts:
1. Coinbaser -- relatively simply branch/patch for Bitcoind to allow mutations to the coinbase transaction; it wasn't merged to 0.5, but ready to go as soon as 0.5 final is released (as a feature in 0.6); stable and well-tested2. "gotwork" outbound JSON-RPC call -- very simple patch for bitcoind to make an outbound "gotwork" JSON-RPC call whenever a work is submitted; needs cleanup, but otherwise works; there is a single hash/dictionary parameter with "hash", "header", and "coinbaseMrkl" keys3. Hacks to merged-mine-proxy to run parallel to bitcoind -- this hack only supports a single aux chain, and will need its own merkle root maker to support more; it needs cleanup to be made compatible with the current merged-mine-proxy usage

Luke-Jr (OP)
Legendary
*
expert
Offline Offline

Activity: 2576
Merit: 1186



View Profile
October 11, 2011, 10:40:21 PM
 #2

I also started a merged-mining specification page at https://en.bitcoin.it/wiki/Merged_mining_specification

Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526
Merit: 1134


View Profile
October 13, 2011, 12:57:13 PM
 #3

Thanks for doing this. It looks good to me.

Just one request - could you update/merge/link together your wiki page and the Alternative Chains page? The terminology has changed over time and it'd be good to rationalize this (ie aux vs alt chain), also my original page says that the coinbase modification RPC isn't implemented - except now you've gone and implemented it so that's out of date.
finway
Hero Member
*****
Offline Offline

Activity: 714
Merit: 500


View Profile
October 13, 2011, 04:38:20 PM
 #4

wonderful !!

John Tobey
Hero Member
*****
Offline Offline

Activity: 481
Merit: 529



View Profile WWW
October 13, 2011, 05:11:02 PM
 #5

Yum!  Looking forward to a new class of entrepreneurs: chain aggregators who provide aux work Merkle trees to pools and will include anyone's new chain for a small fee.  Vires in numeris!

Can a change to the best-chain criteria protect against 51% to 90+% attacks without a hard fork?
finway
Hero Member
*****
Offline Offline

Activity: 714
Merit: 500


View Profile
October 13, 2011, 05:53:39 PM
 #6

Where can i get the 0.5 version of bitcoind (win32 binary) for merged mining ?

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!