Two keys.
Two canaries.
TwinFinch is a design for a quantum-resistant blockchain. Every default account carries a backup key, and two public bounties stand watch for the day the cryptography breaks.
The locks on today's coins have a known weakness
Almost every blockchain signs transactions with elliptic-curve cryptography. A large enough quantum computer would break it. Nobody knows when one will exist, and a blockchain is slow to change.
Signatures break first
Shor's algorithm recovers the private key from a public key for ECDSA, Schnorr and Ed25519. Hash functions hold up far better.
The replacements are large
A signature today is 64 bytes. The standard post-quantum ones run from about 2.4 KB to tens of kilobytes. Stored as they are, they make a chain heavy and costly.
New cryptography can fail too
In 2022 a well-regarded post-quantum candidate, SIKE, was broken on an ordinary computer in about an hour. One young assumption is not enough to bet a chain on.
Four parts, one idea: plan for failure
TwinFinch uses hash-based and lattice-based signatures in place of elliptic curves, and assumes any one of them may fail some day.
Proofs, not signatures
A block does not store signatures. It stores a few STARK proofs that every signature was valid. Blocks stay small and quick to check.
Two canaries
Two public bounties act as alarms. One watches elliptic curves. The other watches the hash that default accounts rely on.
Swappable schemes
Each account names its signature scheme. Schemes can be added and retired without splitting the chain.
Optional privacy
A shielded pool built on hashes, with view keys for auditors, is planned for a later phase.
Hedged by default
A default account has an everyday key and a twin that waits. The two rest on different mathematics, so one discovery is unlikely to break both.
Hash-based, fast to prove
Signs every transaction. It is built on Poseidon2, a hash designed to be cheap inside proofs. Poseidon2 is newer and less studied than SHA-3, which is why it does not stand alone.
NIST standard, dormant
An ML-DSA or SLH-DSA key, committed with SHA3-256 when the account is created. It stays sealed and unused unless the alarm on Poseidon2 goes off.
The proofs themselves never depend on Poseidon2. Their commitments use Keccak, the function behind SHA-3. A break in Poseidon2 could threaten a signature, which the backup key covers. It could not forge a proof.
Alarms anyone can set off, and get paid for
A canary is a bounty that can only be claimed by breaking a piece of cryptography. The claim is public, so everyone learns at the same moment.
Watches elliptic curves
A bounty locked behind an ordinary elliptic-curve key. If it is ever taken by a path other than its own, someone can break the cryptography most of the industry uses.
Watches Poseidon2
Pays anyone who shows two different inputs with the same Poseidon2 hash. The chain checks the claim itself, so it cannot fire by mistake. When it fires:
- The default scheme is retired.
- Each account uses its backup key once, to move to a new everyday key built on a standby hash.
- The account carries on, with a fresh backup.
What the design aims for
| Measure | Target |
|---|---|
| Finality | About 1–2 seconds |
| Public transfers | About 1,000 or more per second |
| Fee per transfer | Below one cent |
| Verifying node | A laptop or a small rented server |
These are targets. Nothing has been measured. Throughput depends on how fast the proofs can be produced, which is the largest unknown in the design.
Where it stands
| Phase | Content | State |
|---|---|---|
| 0 | Design documents, specification draft, logic prototype in Rust | In progress |
| 1 | Public-only test network: proofs, canaries, swappable schemes | Not started |
| 2 | Shielded pool | Not started |
| 3 | Independent audits, then main network | Not started |
The prototype covers account, scheme and canary logic only. It contains no proof system, is unaudited and must not hold value.