Doichain Academy

Lektion 1 / 6 · 20 Minuten

Doichain Core und RPC

Doichain Core ist der Referenzclient der Doichain. Er basiert auf Bitcoin Core 31. Wer Bitcoin Core kennt, kennt daher schon fast alles: Konfiguration, RPC, Wallet und Transaktionsformat entsprechen Bitcoin. Diese Lektion zeigt, was für Entwickler anders ist.

Ports und Programme

Punkt Wert
Daemon doichaind
Kommandozeile doichain-cli
P2P-Port 8338
RPC-Port 8339
Konfiguration ~/.doichain/doichain.conf
Bezug signierte Releases auf GitHub (Doichain/doichain-core) oder Docker-Image doichain/core

Eine Entwicklungs-Node konfigurieren

# ~/.doichain/doichain.conf
server=1
txindex=1
rpcuser=<benutzer>
rpcpassword=<starkes passwort>
rpcbind=127.0.0.1
rpcallowip=127.0.0.1
minrelaytxfee=0.001
fallbackfee=0.001
  • txindex=1 ist nötig, wenn beliebige Transaktionen per getrawtransaction abfragbar sein sollen, nicht nur die des eigenen Wallets.
  • RPC gehört nie ins offene Internet. Bindung an 127.0.0.1 und Zugriff über die eigene Anwendung oder einen Tunnel.
  • Doichain Core 31 nutzt Descriptor-Wallets.

Pflicht: die Kettenprüfung

Im September 2026 hat die Doichain ein Konsens-Upgrade erhalten. Veraltete Clients folgen seitdem einer Altkette. Jede Anwendung sollte deshalb prüfen, ob ihre Node der richtigen Kette folgt:

doichain-cli getblockhash 431018
# erwartet: 71d50ff12b090561cc918ddb560334b4350758c7eace3f058dd332fb112f4b67

Stimmt der Hash nicht, liefert die Node falsche Daten. Diese Prüfung gehört automatisiert in jede Überwachung.

Wichtige RPC-Befehle

Befehl Zweck
getblockchaininfo Kette, Höhe, Synchronisationsstand
getblockhash <höhe>, getblock <hash> Blöcke lesen
getrawtransaction <txid> true Transaktion dekodiert
getnewaddress "" bech32 neue Adresse dc1q…
name_show <name> aktuellen Wert eines Namens lesen
name_history <name> alle früheren Werte
name_scan Namen durchsuchen
name_doi <name> <wert> Namen in einem Schritt registrieren oder als Inhaber aktualisieren
name_update <name> <wert> Namen ändern oder übertragen
signmessage, verifymessage Nachrichten signieren und prüfen

In dekodierten Transaktionen erscheint bei Namensoperationen ein Objekt nameOp mit op, name und value.

Gebühren richtig setzen

Die Doichain hat keinen Gebührenmarkt, denn die Blöcke sind selten voll. Die Mindestgebühr für die Weiterleitung beträgt 0,001 DOI je kvB, also 100 sat/vB. Das ist hundertmal so viel wie bei Bitcoin, in absoluten Beträgen aber winzig: Eine typische SegWit-Überweisung mit rund 140 vB kostet etwa 0,00014 DOI.

Regel für Software: feste Gebührenrate von 100 sat/vB bei jedem Senden übergeben (fee_rate=100 bei send oder sendtoaddress) und sich nicht auf eine Gebührenschätzung verlassen. Als Rückfall fallbackfee=0.001 in die Konfiguration schreiben, denn ohne Schätzung und ohne Rückfallwert scheitert das Senden. Die ältere Option paytxfee gibt es in Doichain Core 31 nicht mehr, sie wird stillschweigend ignoriert. Transaktionen unter 100 sat/vB können im Mempool hängen bleiben, ohne dass irgendwo ein Fehler erscheint.

Transaktionsformat

  • Bitcoin-Format inklusive SegWit, txid und wtxid wie bei Bitcoin
  • Bitcoin Script plus Namens-Opcodes, kein Taproot
  • Der Mempool wendet Full Replace-by-Fee an: Unbestätigte Transaktionen können ersetzt werden.

Merksätze

  • RPC-Port 8339, P2P-Port 8338, RPC nie öffentlich.
  • getblockhash 431018 prüft, ob die Node der richtigen Kette folgt.
  • Gebühren fest mit 100 sat/vB setzen.

Bitte anmelden, um den Fortschritt zu speichern und die Prüfung abzulegen. Registrieren

Weiter →