Get Started
Run a Ladder Script node or try the engine in your browser
Download
Bitcoin Core + Ladder Script
Pre-built bitcoind + tools — Linux x86_64, macOS arm64, Windows x86_64 — based on Bitcoin Core v30.0
BLOCK_TYPES=65
UNIT_TESTS=665
FUNC_TESTS=143
PATCH_LINES=~1,600
LIBRARY_LINES=~21,900
Releases
View on GitHub
Reviewer / playground binaries only — not for production. Linux x86_64, macOS arm64, and Windows x86_64. Reproducible Guix builds are not yet wired in. The ~1,600 lines of integration code are in 32 modified Core files; the ~21,900-line library lives in 39 new files (38 under src/rung/ plus the src/rung_shims.h boundary header).
Verify the Download
Each release ships a SHA256SUMS file plus a detached PGP signature SHA256SUMS.asc. Verify the signature first, then check the binary against the SHA file.
gpg --keyserver keys.openpgp.org --recv-keys 777FE81F8CC077FD3D08055E852C2B3190F5B928
gpg --verify SHA256SUMS.asc SHA256SUMS
gpg: Good signature from "defenwycke <defenwycke@icloud.com>"
sha256sum -c SHA256SUMS --ignore-missing
bitcoin-core-ladder-v30.0-ladder-0.23-x86_64-linux-gnu.tar.gz: OK
Release-signing key fingerprint: 777FE81F8CC077FD3D08055E852C2B3190F5B928 — this page is the canonical publication. If gpg --verify reports any other key, do not trust the binary. Cross-check against the same fingerprint in the repo's README.md.
Quick Start
The release tarball ships with a pre-configured bitcoin.conf for the Ladder Script signet. Extract, copy the conf into place, and start the daemon:
tar xzf bitcoin-core-ladder-*-x86_64-linux-gnu.tar.gz
cd bitcoin-core-ladder-*-x86_64-linux-gnu
mkdir -p ~/.bitcoin
cp share/examples/bitcoin-ladder.conf ~/.bitcoin/bitcoin.conf
./bin/bitcoind -daemon
Bitcoin Core starting
./bin/bitcoin-cli getblockcount
1216
Create a wallet:
./bin/bitcoin-cli createwallet test
./bin/bitcoin-cli -rpcwallet=test getnewaddress
tb1q...
Generate a post-quantum keypair and a Ladder Script descriptor:
./bin/bitcoin-cli generatepqkeypair FALCON512
{
"scheme": "FALCON512",
"pubkey": "09a6753b11f72acd2bf11fa3676... (897 bytes)",
"privkey": "590bef41276ef3efa07cf7b18107... (1281 bytes)"
}
./bin/bitcoin-cli parseladder "ladder(sig(@a))" '{"a":"<pubkey-hex>"}'
{
"conditions_hex": "01010001010101000000",
"conditions_root": "443a7849..."
}
Signet Configuration
The bundled share/examples/bitcoin-ladder.conf contains:
signet=1
server=1
txindex=1
fallbackfee=0.0001
signetchallenge=51
addnode=85.9.213.194
rpcuser=ladder
rpcpassword=CHANGE_ME_BEFORE_USING
v2transport=0
If you'd rather use a different datadir, pass -datadir=/path/to/dd to bitcoind and put the conf there instead.
Building
The repository is a Bitcoin Core v30.0 fork on the ladder-script branch — clone, install liboqs, and build with CMake:
git clone https://github.com/defenwycke/bitcoin-core-ladder-script.git
cd bitcoin-core-ladder-script
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j$(nproc)
Forked from upstream Bitcoin Core v30.0. The ~1,600-line patch lives across 32 modified files in
src/; the ~21,900-line library in 39 new files (38 under
src/rung/ plus the
src/rung_shims.h boundary header). A single boundary header (
src/rung_shims.h) is the only place Core types meet library types. See
Annotated Patch for the per-file walkthrough.
RPC Commands
createrungtx
signladder
signrungtx
createrung
parseladder
formatladder
decoderung
validateladder
serialiseconditions
computectvhash
computemutation
computesighash
generatepqkeypair
pqpubkeycommit
extractadaptorsecret
verifyadaptorpresig
qabi_buildblock
qabi_blockinfo
qabi_authchain
qabi_signqabo
qabi_sighash
Full reference with args / returns / examples for every RPC: RPC Reference.
Links
Ladder Engine — visual builder with live signet connection
Tools — Engine + PQ Batch playground + QABIO playground
Block Reference — documentation for all 65 block types
Docs — specs, FAQ, RPC reference, annotated patch + library
Patch Overview — what changes and how much code
GitHub — full repository