Lesson 1 / 6 · 20 minutes
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=1ist nötig, wenn beliebige Transaktionen pergetrawtransactionabfragbar sein sollen, nicht nur die des eigenen Wallets.- RPC gehört nie ins offene Internet. Bindung an
127.0.0.1und 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,
txidundwtxidwie 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 431018prüft, ob die Node der richtigen Kette folgt.- Gebühren fest mit 100 sat/vB setzen.