Skip to content

Security-first BIP-39 mnemonic generator for crypto key ceremonies. Uses ANU Quantum RNG mixed with local CSPRNG (os.urandom) via XOR by default, so if either source is honest, the result is cryptographically unpredictable. Designed for offline use and for restoring your own mnemonic into hardware wallets (BIP-39 passphrase supported).

License

Notifications You must be signed in to change notification settings

QuantumCryptographer/Quantum-Seed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QRNG → BIP-39 mnemonic (12–24 words), security-first

Create BIP-39 mnemonics from quantum entropy (ANU QRNG) with default XOR mixing against local CSPRNG (os.urandom). If either source is honest, the output is cryptographically unpredictable. Designed for offline ceremonies and for importing your own mnemonic into hardware wallets.

⚠️ Use strictly offline for real funds. Never paste mnemonics/seeds into a browser or an online machine. Prefer restoring your mnemonic into a hardware wallet and enabling a BIP-39 passphrase on the device.

Why this is impossible to predict

  • Entropy mixing: when QRNG is used we XOR it with os.urandom by default. If one source remains unknown to an adversary, the result remains unknown (one-time pad style property).
  • No telemetry: you can run fully offline (local CSPRNG); with QRNG the final result is QRNG ⊕ local CSPRNG, so the remote QRNG operator cannot reconstruct it.
  • BIP-39 checksum: adds integrity, not reducing entropy.

See SECURITY.md for threat models and limitations.

Usage

# Quantum (ANU AQN) + XOR with os.urandom (recommended), 12 words (128-bit)
python qrng_bip39.py --anu-api-key "$AQN_KEY" --bytes 16 -v

# Quantum (ANU Legacy, public)
python qrng_bip39.py --use-legacy-anu --bytes 16 -v

# Pure QRNG (no mixing) – only if you really want it
python qrng_bip39.py --anu-api-key "$AQN_KEY" --bytes 16 --no-mix -v

# Local only (offline)
python qrng_bip39.py --fallback-osrandom --bytes 16 -v

# Print 64-byte seed (hex) – dangerous, keep strictly offline
python qrng_bip39.py --anu-api-key "$AQN_KEY" --bytes 16 --print-seed

*Passphrase generator (optional “25th word”)*

# 8-word passphrase from the BIP-39 list (≈88 bits), QRNG ⊕ CSPRNG
python qrng_bip39.py --anu-api-key "$AQN_KEY" --make-passphrase words --pw-words 8

# 18-char ASCII passphrase (a-z0-9-_.) with unbiased sampling (≈100+ bits)
python qrng_bip39.py --make-passphrase ascii --pw-ascii-len 18 --fallback-osrandom

About

Security-first BIP-39 mnemonic generator for crypto key ceremonies. Uses ANU Quantum RNG mixed with local CSPRNG (os.urandom) via XOR by default, so if either source is honest, the result is cryptographically unpredictable. Designed for offline use and for restoring your own mnemonic into hardware wallets (BIP-39 passphrase supported).

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages