Qbit Core v0.1.0-testnet4
Release notes
Qbit: Post-quantum peer to peer digital value
Crypto is vulnerable to quantum theft, but it doesn't have to be. For the first time, digital value can be secured natively with quantum-resistant signatures from block zero.
Qbit version v0.1.0-testnet4 is available from the release page for that version.
This release provides the public Qbit testnet4 node, wallet, GUI, mining, relay, RPC, documentation, and release-verification surface. It includes Qbit-specific network identity, consensus rules, wallet signing, mining flows, address behavior, relay tooling, and operator workflows for public testnet participation.
Testnet-era release artifacts are for public testnet use only unless the release page explicitly says otherwise. Qbit mainnet is not launched. Do not treat any in-tree mainnet genesis block, hash, seed placeholder, or endpoint placeholder as an official mainnet launch commitment.
Testnet coins have no economic value, and the public testnet may be reset or replaced during rehearsal.
This release starts a reset testnet4 lineage. It is not compatible with earlier
testnet4 rc chain data; operators who ran an earlier rc should remove or
archive their old testnet4 network directory before starting this release.
Please report bugs using the Qbit issue tracker.
Compatibility
The public Qbit testnet4 chain is selected with:
qbitd -testnet4
qbit-cli -testnet4 getblockchaininfo
Official testnet release binaries are expected to reject no-flag mainnet
startup and explicit -chain=main startup. Use -testnet4 or
-chain=testnet4 for the public testnet.
Supported and tested platforms for this release are the artifacts attached to the GitHub Release page. The release page is the source of truth for available platform builds, checksums, signatures, and attestations.
Public testnet4 identity in this release:
| Item | Value |
|---|---|
| Chain flag | -testnet4 or -chain=testnet4 |
| Default P2P port | 48355 |
| Default RPC/REST port | 48352 |
| Default onion bind port | 48356 |
| Address HRP | tq |
| Message start / network magic | 0xc7c41640 |
| Genesis hash | 000000000000796fe86bbc0bf1b66a07e4b4c0676f74b54cf7e5ce8b3f1a0090 |
| Genesis bits | 0x1a7f1ab5 |
| Initial Cadence lane bits | 0x1a7f1ab5 |
| Spendable address model | P2MR |
| DNS seeds | coherence-testnet4.qbit.org, triplet-testnet4.qbit.org |
| Fixed seeds | 57.129.86.61:48355, 40.160.66.196:48355 |
| Archive endpoints | fermion-testnet4.qbit.org:48355, boson-testnet4.qbit.org:48355 |
| Minimum chain work | 0000000000000000000000000000000000000000000000000000000000000000 |
| Default assume-valid block | 0000000000000000000000000000000000000000000000000000000000000000 |
No public faucet or explorer is assumed by this release note. Use only resources explicitly published for this release.
Notable changes
Network identity and operator defaults
- Qbit ships Qbit-native executable names:
qbitd,qbit-cli,qbit-qt,qbit-tx,qbit-util, andqbit-wallet. - The default config filename is
qbit.conf. Default data directories are~/.qbit/on Linux,~/Library/Application Support/Qbit/on macOS, and%LOCALAPPDATA%\Qbit\on Windows. - Default RPC/REST ports are Qbit-specific:
8352for mainnet,18352for testnet3,48352for testnet4,38352for signet, and18452for regtest. - Qbit init, service, manpage, CMake, package, Qt, NSIS, and product metadata have been aligned around Qbit names and assets.
- Payment URIs use
qbit:. The wallet and GUI reject incompatible payment URI variants for Qbit payments.
Consensus and policy
- Qbit defines its own public-chain genesis blocks, address prefixes, message-start bytes, ports, seeds, and chain parameters.
- Blocks target a 60 second aggregate cadence with ASERT difficulty adjustment and a 2 hour half-life.
- Cadence mining is active from genesis on public Qbit chains. Permissionless mining targets a 75 second lane, and AuxPoW merged mining targets a 300 second lane.
- Public Qbit chains use P2MR as the spendable output model. P2MR is a witness v2, 32-byte Merkle-root output with script-path spending only.
OP_CHECKSIGPQCis active inside P2MR execution and verifies bounded SLH-DSA-SHA2-128s signatures. Current PQC keys are 32-byte public keys, 64-byte secret keys, and 3,680-byte signatures.- P2MR-only script validation rejects
OP_CHECKSIGPQCoutside P2MR and rejects executed legacy signature opcodes inside P2MR. P2MR authorization uses canonical PQC checksig, verify, and threshold forms. - P2MR-only data-signature opcodes
OP_CHECKDATASIGPQC(0xbc) andOP_CHECKDATASIGADDPQC(0xbd) support 32-byte message-hash attestations. - P2MR-only
OP_CHECKTEMPLATEVERIFYis available at opcode byte0xbb, with node-canonical default CTV hash support. - Qbit has no witness discount.
WITNESS_SCALE_FACTORis1, and max block weight is2,000,000. - Coinbase maturity is
1,000blocks. - The block subsidy starts at
210 QBT, steps every43,200blocks, and uses a compound floor stepdown of598 / 625until the210,000,000 QBTmoney cap is reached. - Public-chain restricted-output mode accepts ordinary spendable P2MR outputs,
reserved future witness forms,
OP_RETURN, and PayToAnchor outputs. Legacy, P2SH-SegWit, native SegWit v0, and Taproot receive/change outputs are not the public Qbit payment path. - Public testnet4 starts this reset release without a post-genesis minimum-chainwork floor or assume-valid checkpoint. Those values should only be raised after a validated reset-chain checkpoint exists.
- Regtest defaults follow Qbit's P2MR-only restricted-output behavior unless a test explicitly opts out.
Wallet, address, PSBT, and RPC behavior
-
Descriptor wallets are the supported wallet type. Legacy wallet creation is not supported.
-
Wallet receive and change flows use P2MR on launch and rehearsal chains:
qbit-cli -testnet4 -rpcwallet=<wallet> getnewaddress "" "p2mr" qbit-cli -testnet4 -rpcwallet=<wallet> getrawchangeaddress "p2mr" -
Qbit adds P2MR descriptors and script support, including
mr(...),rawmr(...),pk(...),multi_a(...),sortedmulti_a(...), andpqc(...)where appropriate. -
P2MR signing uses stateful PQC signature counters. Wallet and signing RPCs can report
pqc_signature_count,pqc_signature_limit,pqc_signatures_remaining,pqc_limit_state, and related warning fields. -
Do not run two active copies of the same signing wallet. Restore and backup procedures must preserve wallet state, including PQC signature counters.
-
Plain xpub-only watch-only flows are not enough for Qbit P2MR. Use
exportpubkeydb,importpubkeydb,getnextpubkeydbaddress, andlistpubkeydbstatusfor watch-only P2MR address allocation. -
Qbit supports P2MR PSBT signing and finalization, including dedicated P2MR data and Qbit-proprietary fields. Non-Qbit PSBT tooling should not be assumed to preserve or understand those fields.
-
Wallet transaction construction, PSBT, input, spend, coin-control, and fee estimate paths account for Qbit P2MR signature sizes.
-
Wallet-created payment outputs to reserved future witness versions are rejected before send, funding, PSBT, or bumpfee RPCs can report ordinary success.
-
Imported PQC secret material is validated before it reaches wallet storage, and deterministic PQC key derivation uses the trusted key-generation public key output.
-
Parallel PQC wallet signing is supported while preserving per-wallet lock ordering and failure handling.
-
Qbit adds or changes public RPCs for Qbit-specific operation, including
createauxblock,submitauxblock,getarchivepeers,getorphanmetrics,getconfirmationtarget,exportpubkeydb,importpubkeydb,getnextpubkeydbaddress,listpubkeydbstatus, andgetdefaultctvhash. -
Existing RPCs such as
getblocktemplate,getnetworkinfo,getblock,getnewaddress,getrawchangeaddress,validateaddress,getaddressinfo,walletprocesspsbt,decodepsbt, andsignrawtransactionwithkeyhave Qbit-specific behavior where P2MR, PQC signing, archive service bits, witness pruning, Cadence, or AuxPoW apply.
Mining and confirmation policy
- Permissionless mining continues to use
getblocktemplateandsubmitblock, but templates use Qbit Cadence, ASERT, restricted-output, and full-witness weight rules. - AuxPoW merged mining is exposed through
createauxblockandsubmitauxblock. Public testnet's AuxPoW chain ID is31430. - ASICBoost-compatible version-mask handling is available for Qbit mining templates. Custom and AuxPoW templates suppress inappropriate rolling masks where miners must not mutate Qbit chain-id, reserved, or AuxPoW layout bits.
getnetworkhashpscan report estimates forall,permissionless, orauxpowlanes.getconfirmationtargetestimates Qbit confirmation targets from transaction value, requested security level, observed stale rate, and observed or modeled hashrate. Exchanges and custodians should use it as an input to local deposit policy.- Fresh coinbase rewards mature after 1,000 Qbit blocks. Pool and custody accounting must not treat newly mined rewards as immediately spendable.
- PayToAnchor mining payouts are rejected, and mining/RPC policy is tightened around Qbit output-script expectations.
Node operation and archive bootstrap
- Qbit defaults to archive/full-history witness retention. Witness pruning is
an explicit opt-in mode with
-prunewitnesses=1. - Archive-capable nodes advertise
NODE_ARCHIVE. Witness-pruned nodes advertiseNODE_WITNESS_PRUNED. -connectarchive=<host:port>provides a stricter archive bootstrap fallback. Peers configured this way must advertise the expected archive and witness service bits and must not advertise or imply witness-pruned history.getarchivepeersreports archive-relevant connected peers and configured archive fallback targets.- Witness pruning is incompatible with
-txindex. Indexers, explorers, exchanges, and support tooling that require historical witness data should run archive nodes. - Verbose historical
getblockcalls can fail on witness-pruned history when the node no longer has the needed witness data. - P2P sync handling preserves AuxPoW payloads during headers presync and redownload while bounding retained serialized AuxPoW bytes. Validated block download timeouts have been retuned for Qbit's slower block-validation paths.
PHOTON relay
qbit-photonis available as a standalone relay daemon for authenticated UDP block relay between Qbit nodes.- Deploy
qbit-photononly when authenticated peer links and local qbitd RPC/ZMQ access are configured. - PHOTON subscribes to qbitd ZMQ block notifications, fetches blocks over qbitd RPC, relays encoded block data to configured peers, and submits reconstructed blocks to local qbitd.
- PHOTON includes FEC support, peer freshness checks, replay protection, bounded inbound relay state, restart diagnostics, and per-peer session isolation so stale sessions do not poison current relay delivery.
- Release tooling includes a separate PHOTON build path.
Release, CI, documentation, and supply chain
- Qbit Guix build and attestation tooling includes Qbit-specific artifact naming and independent builder attestation support.
- Signed-release publication gates validate pinned trusted refs, signer set size, release artifacts, builder attestations, and key metadata.
- The libbitcoinpqc Qbit subtree has been refreshed and supported with AVX2, TSAN, upstream fuzz, low-cap failure, and wrapper evidence workflows.
- CI coverage has been expanded for Windows builds, Windows Qt diagnostics, public testnet4 transport parameters, block-weight assumptions, scanner dependencies, and disk-pressure failure modes.
- Public docs have been reorganized around Qbit users, integrators, operators, release verification, exchange/custody operation, mining pool integration, RPC deltas, P2MR wallet workflows, and full-validation bootstrap.
- Generated Qbit RPC documentation can be installed with release artifacts
under
share/doc/qbit/rpc/and published manually through the RPC docs workflow.
Credits
Thanks to everyone who contributed code, testing, review, infrastructure, and release coordination for this release.
qbit v0.1.0-testnet4 Release Verification Linkage
- Release tag:
v0.1.0-testnet4 - qbit-guix.sigs commit:
1946e109a8ac4b24637f3ef45b0aabdf5eb08bfe - Artifact manifest:
SHA256SUMS - Project release signatures:
SHA256SUMS.asc
Artifact hashes
| SHA256 | Artifact |
|---|---|
daa3e11161583925779679a6289019395d31c565ded202f390124908475d8837 |
qbit-0.1.0-testnet4-aarch64-linux-gnu-debug.tar.gz |
0d8b1ae93e4c4b0d410dae50b3c7b4404649e454113a3ef7e3a7205d659e5615 |
qbit-0.1.0-testnet4-aarch64-linux-gnu.tar.gz |
54a3c176762f440089669f33eae2762f271a89f4a844dbd5c7c5d9ba003edeaf |
qbit-0.1.0-testnet4-arm-linux-gnueabihf-debug.tar.gz |
2daf5fb155477669dbda5b04440349ede67dac45103b78bebdc450d5d482e860 |
qbit-0.1.0-testnet4-arm-linux-gnueabihf.tar.gz |
df2081ab7922192cf26c73f3f68ba184bcd6acb22f7f44293fc46f45a787d237 |
qbit-0.1.0-testnet4-arm64-apple-darwin-unsigned.tar.gz |
10cfe9ecca34b8ab0560d05d1b211ab30b7eb6d007899c5839a739fd3e6774f5 |
qbit-0.1.0-testnet4-arm64-apple-darwin-unsigned.zip |
a00fcd0b6ccbc4864de6ea98c6aceddcccab68dc47b9406042682ba5a8a4e96d |
qbit-0.1.0-testnet4-powerpc64-linux-gnu-debug.tar.gz |
11cf2f28d0a0cdc88e4a2bcc9dc004ae421e4dee9d5e486863d032e522920e30 |
qbit-0.1.0-testnet4-powerpc64-linux-gnu.tar.gz |
bbf00c475b7f88a547abe2716c4ea21323296a560b155aea10080cc05145d703 |
qbit-0.1.0-testnet4-riscv64-linux-gnu-debug.tar.gz |
8b532ca3ff0451ba322911f5a2cf00a7b880c81f83583106cb32a99e1a59da4b |
qbit-0.1.0-testnet4-riscv64-linux-gnu.tar.gz |
914575021c610053ee092f7b4eb58be3b03d987c5c4925c51cad6b6d288da298 |
qbit-0.1.0-testnet4-win64-debug.zip |
5ef0ca1e6f780ca9fb57f32e24c9d9e727076b5e0f61cf7380ae453f08be9091 |
qbit-0.1.0-testnet4-win64-setup-unsigned.exe |
7481993df622931a957fa804331dc0a698e50c4f8a783c3d13e632556429e76e |
qbit-0.1.0-testnet4-win64-unsigned.zip |
3619a6a840e474267d7c3939008884722ee6ee8dc439617e731792805ca6181b |
qbit-0.1.0-testnet4-x86_64-apple-darwin-unsigned.tar.gz |
a34b883275388ca9d529cb0475332774881bd2ed937ed8d3a47a3a0fb8db14bf |
qbit-0.1.0-testnet4-x86_64-apple-darwin-unsigned.zip |
3ae45534a01bc1d6ad88faebf8d42a9b6dfb1decbbf1ed247b3c4da21015dacf |
qbit-0.1.0-testnet4-x86_64-linux-gnu-debug.tar.gz |
aaa6c6a4e501809ef1b05a4e63280c24341acdc3a000cc686d928705f1455ac7 |
qbit-0.1.0-testnet4-x86_64-linux-gnu.tar.gz |
a78035141a0ff0acebfa7ad51cf2daea43f9f5a7924b87e7fe0b9dc28e5782d0 |
qbit-photon-0.1.0-testnet4-x86_64-linux-gnu-debug.tar.gz |
9e3082d03fc914e00c2ed483bcfc9705e34b8fae57f147487259f406e35472b2 |
qbit-photon-0.1.0-testnet4-x86_64-linux-gnu.tar.gz |
Builder attestations
0.1.0-testnet4/operator-01/noncodesigned.SHA256SUMS.asc0.1.0-testnet4/operator-01/photon-noncodesigned.SHA256SUMS.asc0.1.0-testnet4/operator-02/noncodesigned.SHA256SUMS.asc0.1.0-testnet4/operator-02/photon-noncodesigned.SHA256SUMS.asc
Verification model
The GitHub Release artifacts are linked to builder attestations by matching artifact basename and SHA256 digest. The pinned qbit-guix.sigs commit above contains the builder-signed Guix manifests used for quorum validation.
Local coordinator validation command:
contrib/release-process/verify-staged-release.sh