geth instance with the JSON-RPC API exposed locally. By the end you’ll be able to query the chain, create an account, and connect a wallet.
Step 1. Build the binary
If you haven’t already, follow Installation to producebuild/bin/geth.
Step 2. Connect to mainnet
Step 3 (alternative). Run a local devnet
For development you don’t need to sync mainnet. Run a single-node Clique network with pre-funded accounts.Create a genesis file
Save the following asdevnet.json:
<SEALER_ADDRESS_NO_0X> with a 40-character hex address of the validator you’ll create in step 4.
Initialize the data directory
Start the devnet
eth_blockNumber JSON-RPC call should advance.
Step 4. Create an account
Use the post-quantumkeygenerator:
- A 12-word mnemonic for recovery.
- A post-quantum public key (large hex blob).
- The derived address (20 bytes, hex).
- A keystore file in your working directory.
./devnet/keystore/ so geth can unlock it. See Accounts and keys for details.
Step 5. Send a transaction
If you funded the address inalloc (or it’s the validator collecting block rewards), you can send a transaction.
The simplest path is to use a wallet that supports external signing. Direct personal_sendTransaction is supported on devnets, but for production you should use Clef or Qustody.
Where to go next
Configuration
Genesis fields, geth flags, and tuning.
Accounts and keys
How post-quantum keypairs and addresses work.
Networks
Mainnet, testnets, and running a validator.
Integrate with Qustody
Use the custody platform for institutional workflows.