ZKAS · Upgrade announcement

The ZKAS Quantum Resistance Upgrade

Coming soon

Private payments protected by proofs a quantum computer can't break. Those proofs are huge, and only a chain that prunes, like a BlockDAG, can carry them.

ZKAS logo
The problem

Removing elliptic-curve keys entirely.

Solana, Ethereum, Cardano, Monero, Zcash and Firo all protect coins with elliptic-curve keys, and every one of them puts a public key on chain: in the address, in the signature, or next to each private payment. Today, working back from a public key to the secret key would take longer than the age of the universe. A large quantum computer does it in hours.

The upgrade takes public keys off the chain completely. Coins belong to an owner tag, a fingerprint made by hashing your secret keys. To spend, your wallet proves it knows the secrets behind the tag with a hash-based proof. There is no signature and no public key, so there is nothing on chain to work backwards from.

Why hashes beat curves: a quantum computer doesn't weaken elliptic curves, it solves them outright. Against a hash it can only guess faster, which at most halves its strength. A 512-bit hash still has over 170 bits of strength left; a 256-bit curve key has none.

Scroll to send the quantum wave through.

How the upgrade removes public keys

Zero public keys on chain.

Owning: your coins belong to an owner tag, a hash of your secret keys. Spending means proving you know those secrets with a hash-based proof. No signature, no public key.

Getting paid: you give the payer a payment code directly, by QR code or link. It never goes on chain. Their wallet uses it to seal the payment with a symmetric key.

On chain: only fingerprints, spent markers, sealed notes, the fee and a hash-based proof. A quantum computer needs a public key to start from, and there isn't one. Hashes can't be run backwards, even by a quantum computer.

Public keys in a Monero / Zcash payment?
Public keys in a ZKAS payment?
The hidden risk

A quantum computer could open private payments made today. Not ZKAS's.

Everything on a blockchain is public and permanent. Monero and Zcash lock each private payment with an elliptic-curve key exchange and write the exchange's public key right next to it, so the recipient can find it. Anyone can save those payments today and open them once a quantum computer exists, years after they were made.

The upgrade moves that step off the chain. The person being paid hands the payer a payment code directly, by QR code or link. The payer's wallet uses it to seal the payment with a symmetric key that never touches the blockchain. On chain there are only fingerprints, spent markers, sealed notes, the fee and a hash-based proof: no public key to start from, so nothing to open. The seal itself is 256-bit symmetric encryption, which a quantum computer can at most halve to 128 bits, still far beyond reach.

Recorded curve-locked payments: still sealed.

How pruning works

Checking every hash proof, pruning it, and leaving a fingerprint that proves it was protected.

Every node checks each hash proof once, when it arrives. After 7 hours the proof itself is pruned, but its result stays behind as a fingerprint in the block, sealed under proof of work. Storage stays flat, and the fingerprint is permanent evidence the payment was checked. A chain that keeps everything piles every proof up forever.

ZKAS · total, ever164 GB
Keep-everything chain0 TB

Proof storage at full load, after 0 years.

Why the BlockDAG · proofs ride beside the block

ZKAS proofs sit outside the block hash, so pruning them breaks nothing.

A block's fingerprint, its hash, covers the payments but never the proof that checked them. Once every node has checked a proof, it can be thrown away and the chain stays exactly as valid as before. Other privacy coins seal their proofs into the fingerprint, so they can never fully let them go.

A fresh block, with its proof attached.

How a new node joins

ZKAS nodes start from a recent checkpoint instead of re-checking every old proof.

A new node on most chains downloads every block since the beginning and re-checks every proof inside it. A ZKAS node jumps to a recent checkpoint, the pruning point, whose private state is locked in by proof of work, and continues from there.

Nothing is lost: archive nodes can still replay the entire private history back to the first block and confirm it matches. We just did this on mainnet: 3,242,567 blocks and 13,960,587 private notes, an exact match.

Re-check-everything node0%
ZKAS node0%
Fast settlement

ZKAS payments settle behind 600 blocks in 10 minutes.

Every block added on top of a payment makes it harder to undo. ZKAS adds a block every second, so a payment shows up in a second or two and has 600 blocks of proof of work behind it in about ten minutes. A chain with 10-minute blocks would have one.

ZKAS0
10-minute blocks0
Proof of work and private payments

Proof of work can't stop a forged payment. Only the maths inside the payment can.

Monero and Zcash use proof of work too. But proof of work only decides which payments come first. Whether a private payment is genuine is decided by elliptic-curve maths: the keys and proofs inside it.

So a quantum attacker never has to out-mine anyone. They forge a private payment that every node accepts as genuine, spending coins that aren't theirs or creating coins from nothing, and proof of work buries it under block after block like any honest payment.

In ZKAS, every private payment that proof of work buries has been checked with hash maths only, the same kind of maths proof of work itself runs on. There is no weaker layer underneath for an attacker to go around: hashes are something a quantum computer can only chip away at, never break.

Two proof-of-work chains, before a quantum attacker.

Why the BlockDAG

The BlockDAG is made for privacy secured by high-strength hashes.

Strong hash-based privacy has two costs: proofs are big, and something has to vouch for them after they're gone. Most chains can afford neither. The BlockDAG is built around both: it is secured by hashing from the ground up, it checks everything as it arrives, and it is designed to let old data go once proof of work has locked in the result. Put hash-only private payments on top, and every layer speaks the same language.

  1. neededPruning with a fingerprint left behindBig hash proofs are checked, pruned after 7 hours, and their results stay in every block as a fingerprint sealed by proof of work.
  2. neededProofs outside the block hashPruning a proof never changes a block, so the chain stays exactly as valid as before.
  3. neededSync from a recent checkpointNew nodes start from the pruning point instead of re-checking years of old proofs.
  4. neededHashes all the way downProof of work and every private payment it secures are checked with hashes only.
0 / 4
Against every privacy coin

After the upgrade, no elliptic-curve weak points. No other major privacy coin can say that.

Keys that own coinsPrivate payments a quantum computer could openFake coins a quantum computer could makeWhat secures the chainOld proofs
Monerocurve keysevery payment since 2014yesproof of workkept forever
Zcashcurve keysyes, if the address is knownyesproof of workkept forever
Firocurve keysyesyesmasternode curve signatureskept forever
Grin / Beamcurve keyswho paid whom is largely visible alreadyyesproof of workpartly pruned
Ethereum privacy poolscurve keysyesyesvalidator curve signatureskept forever
ZKAS upgradehash-based, no public keysnoneno · ≈101-bit quantum securityproof of workpruned after 7 hours, fingerprint kept
Hashes vs curves

Quantum computers break curves. They barely dent hashes.

256-bit elliptic-curve key
today128 bits
quantum≈ 0 bits
512-bit hash (BLAKE3)
today256 bits
quantum170+ bits
256-bit encryption (ChaCha20)
today256 bits
quantum128 bits

Each extra bit doubles the work. At 128 bits, if all 8 billion people on Earth each made a billion guesses a second, it would take over a trillion years.

In numbers
0

public keys on chain

256-bit

encryption on every private payment, still 128-bit even against a quantum computer

512-bit

BLAKE3 hashing behind every proof's fingerprints

80 trillion

years to break a proof: 2101 steps at a billion a second

7 hours

until a proof is pruned; its fingerprint stays forever

1 / sec

new blocks, so confirmations pile up fast

600

blocks behind a payment after 10 minutes

3.2M

blocks of private history verified back to genesis on mainnet

ZKAS Quantum Resistance Upgrade

Coming soon
In developmentTested on private test networks. Not active on mainnet and not yet externally audited.
FeesBigger proofs use more block space, so private payments cost more than on curve-based chains.
Payment codesPayers receive a code instead of a permanent public address. That's the price of using no public-key encryption.
FiguresStorage figures assume 10 private payments every second, the network's full private capacity.