QSeal
live
policy BOTH_REQUIRED/σ ed25519 64 B/σ ml-dsa-65 3,309 B/pk ml-dsa-65 1,952 B/standard FIPS 204/dimension 2,816/q 8,380,417/anchor spl-memo/
policy BOTH_REQUIRED/σ ed25519 64 B/σ ml-dsa-65 3,309 B/pk ml-dsa-65 1,952 B/standard FIPS 204/dimension 2,816/q 8,380,417/anchor spl-memo/
Why a second, lattice-based signature matters now→

Launch coins that outlive Q-day.

Every coin is authorized twice over one canonical message — Ed25519 from your wallet and a post-quantum signature no known quantum algorithm breaks: ML-DSA, Falcon or SLH-DSA. Live on Pump.fun in any pair, with a record anyone can re-verify.

signature
3,309 B
assumption
Module-LWE
policy
BOTH_REQUIRED
qseal@browser: ~/prove
verified launches
—
identities
—
active post-quantum keys
—
signature bytes / launch
3,373

01 · protocolNeither signature can stand in for the other.

The complete protocol, in your browser: canonical bytes, the SHA-256 commitment, both signatures, the policy, a real Pump.fun transaction and the attestation. Every third run is an attack.

SIM.01 — QSEAL_LAUNCH_V3
real keys · real signatures · computed in this browser
run 0001
initialising…
generating ML-DSA-65 key pair…

02 · flowFive steps, one policy.

Nothing reaches Pump.fun until both keys have signed the same bytes. Read the specification.

  1. 01
    Register

    Pick a post-quantum scheme. Your key is derived from your wallet — nothing to store or download.

  2. 02
    Commit

    One canonical launch message — mint, name, ticker, metadata hash, parameters, nonce, expiry.

  3. 03
    Dual-sign

    Your wallet signs with Ed25519; your browser signs the same bytes with your post-quantum key.

  4. 04
    Enforce

    Both signatures, the key binding, the parameters and the window must hold, or no mint key.

  5. 05
    Attest

    Live on Pump.fun with the commitment on-chain and a public record anyone can re-verify.

live

Every QSeal launch