Network specification¶
The official protocol constants of the Bitcoin Gold network. This page is curated from the official BTCGPU wiki and the source code in BTCGPU/src/chainparams.cpp.
Source of truth
The reference specification is in the source code at src/chainparams.cpp and protocol constants in src/primitives/. This page summarises it for operators; if a number here conflicts with the code, the code is canonical.
Network magic bytes¶
| Network | Magic (hex) |
|---|---|
| Mainnet | e1 47 6d 44 |
| Testnet | e2 48 6e 45 |
Default ports¶
| Service | Mainnet | Testnet | Signet |
|---|---|---|---|
| P2P | 8338 | 18338 | 38338 |
| RPC | 8332 | 18332 | 38332 |
Do not confuse Bitcoin Gold with Bitcoin
Bitcoin Gold does not use Bitcoin's P2P port (8333). If you copy a bitcoin.conf, change port= to 8338 and rpcport= to 8332, or the process will fail to bind.
Protocol version¶
- Protocol version:
70016 - Compact blocks: compact block relay is supported since
v0.17.1and is automatically enabled between compatible peers.
Genesis blocks¶
| Network | Genesis hash |
|---|---|
| Mainnet | 000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f |
| Testnet v3 | 00000000e0781ebe24b91eedc293adfea2f557b53ec379e78959de3853e6f9f6 |
| Signet | 00000008819873e925422c1ff0f99f7cc9bbb232af63a077a480a3633bee1ef6 |
DNS seeds¶
The current vSeeds lists in the official src/chainparams.cpp contain the following hostnames. Resolution status was checked on 2026-07-23.
| Network | Seed | Status |
|---|---|---|
| Mainnet | eu-dnsseed.bitcoingold-official.org |
Does not resolve |
| Mainnet | dnsseed.btgofficial.org |
Does not resolve |
| Mainnet | dnsseed.bitcoingold.dev |
Returns multiple A records |
| Mainnet | dnsseed.4btg.org |
Does not resolve |
| Testnet v3 | eu-test-dnsseed.bitcoingold-official.org |
Does not resolve |
| Testnet v3 | test-dnsseed.btgofficial.org |
Does not resolve |
| Testnet v3 | test-dnsseed.bitcoingold.dev |
Resolves to Cloudflare addresses, not a testnet peer list |
| Testnet v3 | tdnsseed.4btg.org |
Does not resolve |
dnsseed.bitcoingold.services is an additional community-operated mainnet seed. It is not compiled into bgoldd, but currently returns multiple A records.
Fixed fallback seeds
DNS seeds in vSeeds are manually listed in src/chainparams.cpp. They are separate from the fixed IP fallback list in src/chainparamsseeds.h, which is generated by contrib/seeds/generate-seeds.py.
The current source contains 141 mainnet and 6 testnet fixed-seed entries. Of the mainnet entries, 105 use the default P2P port 8338. The generated list has not been updated since 2019, so individual entries may no longer be reachable.
Operators can use seednode= or addnode= in bitcoingold.conf when additional bootstrap peers are required.
Address formats¶
| Type | Mainnet prefix | Version byte | Notes |
|---|---|---|---|
| P2PKH (legacy) | G |
0x26 (38) |
Example: GYf8nyo1c8oWsHzbvL1fD3Ckgg68UzBi5J |
| P2SH (legacy) | A |
0x17 (23) |
|
| Bech32 (SegWit) | btg1... |
— | HRP btg for mainnet, tbtg for testnet |
HD wallet (BIP44)¶
| Field | Value |
|---|---|
| Coin type | 156 (hex 0x8000009c) |
| Reference | slip-0044 |
| Recommended path | m/84'/156'/0'/0/0 (native SegWit P2WPKH) |
URI scheme¶
- URI prefix:
bitcoingold: - Signed message magic:
Bitcoin Gold Signed Message:\n
Replay protection¶
Bitcoin Gold uses strong two-way SIGHASH_FORKID replay protection.
- ForkID:
79 - All post-fork transactions use the BIP143 SIGHASH signing style.
- Pre-fork signing logic is preserved in the code only to validate pre-fork transactions.
Proof of work¶
| Parameter | Value |
|---|---|
| Algorithm | Equihash-BTG |
| N, K | 144, 5 |
| Personalization string | BgoldPoW |
| Solution size | 100 bytes |
| Memory per mining thread | ~2.5 GB |
| Hard-fork height (Equihash-BTG N=144 K=5, BgoldPoW) | 536,200 (July 2018) |
| Hard-fork height (LWMA DAA) | 536,200 (same hardfork) |
Difficulty adjustment uses Zawy's LWMA with a 45-block averaging window (post-536,200).
Hard fork / Endowment¶
- First Bitcoin Gold block:
491,407 - Endowment: 8,000 blocks (
491,407–499,406) at minimum difficulty (difficulty = 1,bits = powLimit) - Endowment output: 4-of-6 multisig, time-locked (40% available, 60% released monthly over 3 years)
Signet¶
Signet is a BIP325 test network included in Bitcoin Gold's v0.21.3-beta codebase. A valid solution to the configured signet challenge is required in addition to proof of work, giving the challenge signers control over block production.
| Property | Signet (default) |
|---|---|
| CLI flag | -signet |
| Network magic | 0a 03 cf 40 for the default challenge; custom challenges produce different magic bytes |
| P2P port | 38338 |
| RPC port | 38332 |
| Default seeds | 178.128.221.177, 2a01:7c8:d005:390::5, and the Onion seed listed in src/chainparams.cpp |
| Block challenge | Default 1-of-2 multisig challenge script. Override with -signetchallenge=<hex>. |
Use -signetseednode=<host>:<port> to replace the default seed list. Signet provides more controlled and predictable testing conditions than permissionless testnet, but reorganizations and interruptions remain possible. A custom signet lets its operators choose the challenge script and seed nodes.
Domain history (important notice)¶
The 2024-07-15 hijack
On 15 July 2024, the bitcoingold.org domain was hijacked and pointed to an attacker-controlled account. The current official domain is btgofficial.org.
Always verify releases via the official GitHub releases page (BTCGPU/BTCGPU) and the official domain btgofficial.org — never trust any URL ending in bitcoingold.org.
References¶
- BTCGPU/BTCGPU source —
src/chainparams.cpp,src/chainparamsbase.cpp,src/chainparamsseeds.h,src/version.h,src/pow.cpp - Technical-Spec wiki page
- BIP325: Signet
- slip-0173 (Bech32 HRP)
- slip-0044 (BIP44 coin type)