Ich habe die Adresse zu der Frage Eine leichte Korrektur-nicht alle Bitcoin-ähnliche Währung dienen dem gleichen verlangen, und Namecoin ist ein hervorragendes Beispiel dafür. Die Nachfrage für Namecoin ist stark basiert auf der alternative DNS-system, das Bitcoin nicht geben. Könnte man erweitern auf diese Antwort? Ja, ich denke das ist die Wurzel des Problems .. Coinbin nicht lassen Sie mich geben Sie einen einlösen Skript beim signieren einer Transaktion ... Beachten Sie, dass bei der Anmeldung der Transaktion auf den Kern und dann machen die zweite Unterschrift auf coinbin es funktioniert !! Durch das Geburtstags-Problem, die Wahrscheinlichkeit, dass zwei Menschen haben die gleiche Adresse in der situation wäre etwa 1-e**(-((21*10**14)**2)/(2*(2**256))) . Das ist wie 1 atom im Vergleich zur Anzahl der Atome in der Erde. Ganz kleine.

Für eine lange Zeit ich habe versucht, herauszufinden, Möglichkeiten, für das betreiben eines "egoistischen mine"- Algorithmus auf bitcoind ist regtest-Modus.

Jetzt Frage ich mich, ob mein plan durchführbar ist, überhaupt!?
Also werde ich nur Umrisse meiner geplanten Vorgehensweise, mit der Hoffnung, dass ich nützliche Hinweise und gewann ' T erhalten abgeraten, da ich glaube, ich kann mein Ziel erreichen mit Hilfe der Entwickler und die Investition von etwas mehr Zeit:

Ich bin die beabsichtigen, ändern Bitcoin Core 0.10.0-source-code - oder eine "passende" version - in einer Weise, dass nach dem Bau von bitcoind, in regtest der bitcoind-server gestartet wird, wirkt wie eine egoistische miner.
Diese egoistische miner ist eine Verbindung zu anderen bitcoind Knoten, die Instanzen von bitcoind, gebaut aus nicht-modifizierten code.

Meine Idee ist es zu ändern, einen Teil des Codes, die die Kommunikation (z.B. inv-Nachricht-Teil!?) mit anderen Knoten: als eine egoistische miner, neu Gefundene Blöcke sollten nur geteilt werden, die mit anderen Knoten abhängig von der egoistischen mine-Algorithmus, so dass ich dachte, der Implementierung von Kontrollstrukturen (if, while, etc.) dass die Arbeit mit einem Vergleich der WR-Meldung die Anzahl der Inventar-Einträge oder einen ähnlichen Vergleich - z.B. egoistische Knoten gefunden hat, einen block und fügt es zu seinem Inventar und nicht veröffentlichen diese blockieren, wenn die Größe(egoistisch.Inventar) > > Größe(ehrlich.Inventar).

Jetzt eine Herausforderung für mich ist, um herauszufinden, welcher Teil des Quellcodes zu ändern? Da es besteht aus mehreren Modulen, die definieren, ähneln Funktionen, Parameter usw.

Ich bin bereit zu Lesen, große Menge code, aber das problem ist, ich weiß nicht, welcher Teil relevant ist für mein problem.

Was denkst du? Ist mein Vorhaben realistisch? Was sind gute Ansätze für eine Lösung?