Upgrading to Bitcoin Core — Ladder Script is being ported from Bitcoin Ghost to a clean Bitcoin Core v30.0 fork. Some tools may be temporarily unavailable.

Get Started

Run a Ladder Script node or try the engine in your browser

NO INSTALL
Try the Engine
Build, simulate, and broadcast Ladder Script transactions in your browser. Connects to live signet.
DEVELOPER
Run a Node
Download the binary, connect to signet, create transactions from the command line.
Download
Ghost Core + Ladder Script
Linux x86_64 -- 7.4 MB -- Based on Bitcoin Core v30.1
BLOCK_TYPES=61 UNIT_TESTS=480 FUNC_TESTS=60 PATCH_LINES=197
Download .tar.gz
Bitcoin Core v30.1 with 197 lines of integration code and the 11,318-line Ladder Script library. Connects to the Ghost Labs signet where you can create and spend rung transactions.
Quick Start

Extract and configure:

tar xzf ghost-ladder-signet-linux-x86_64.tar.gz mkdir -p ~/.bitcoin cp ladder-signet.conf ~/.bitcoin/bitcoin.conf # edit ~/.bitcoin/bitcoin.conf and change rpcpassword

Start the node:

./ghostd -daemon Ghost Core starting # wait for sync (~30 seconds on fresh node) ./ghost-cli -signet getblockcount 533

Create a wallet:

./ghost-cli -signet createwallet test ./ghost-cli -signet -rpcwallet=test getnewaddress "" legacy mibryXkbkCBrLMkVZik8UkLKfcjEH3Mstu

Create a Ladder Script transaction:

# parse a descriptor ./ghost-cli -signet parseladder "ladder(sig(@alice))" \ '{"alice":"0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"}' { "conditions_hex": "01010001010101000000", "mlsc_root": "443a7849...", "n_rungs": 1 } # format it back ./ghost-cli -signet formatladder "01010001010101000000" { "descriptor": "ladder(sig(@?))" }
Signet Configuration
# Ladder Script Signet signet=1 [signet] server=1 txindex=1 fallbackfee=0.0001 # Ghost Labs signet challenge signetchallenge=21036bae004d5cd7bb65742cdbf735bf6f3a384d69f4d52dba84689a3db972848f68ac # Seed node (Amsterdam) addnode=85.9.213.194 # Your RPC credentials rpcuser=ladder rpcpassword=changeme
Build from Source

Apply the patch to your own Bitcoin Core checkout:

git clone https://github.com/bitcoin/bitcoin.git cd bitcoin && git checkout v30.1 # download the rung library git clone https://github.com/bitcoin-ghost/ghost-labs-ladder-script.git /tmp/ladder cp -r /tmp/ladder/src/rung src/rung # apply the integration patch (197 lines across 18 files) git apply /tmp/ladder/patches/bitcoin-core-v30-ladder-script.patch git apply /tmp/ladder/patches/validation-block-height.patch # build cmake -B build && cmake --build build -j$(nproc)
Tested against Bitcoin Core v30.1. Applying to Knots or other forks that track Core closely should work with minimal or no conflicts.
RPC Commands
# transaction building createrung build a ladder witness from JSON createrungtx create an unsigned v4 RUNG_TX signrungtx sign rung inputs with keys # descriptor language parseladder parse descriptor to conditions hex + MLSC root formatladder format conditions hex as descriptor string # inspection decoderung decode a ladder witness from hex computectvhash compute BIP-119 CTV template hash # key generation generatepqkeypair generate a post-quantum keypair (FALCON/Dilithium/SPHINCS+)
Links

Bitcoin Ghost -- visual builder with live signet connection

Block Reference -- documentation for all 61 block types

Patch Overview -- what changes and how much code

GitHub -- full repository