V.1 beta•Privacy Protocol for $REDO on TON
ZK privacy protocol breaking the on-chain link between deposits and withdrawals. Groth16 proofs verified natively on TVM via BLS12-381 opcodes.
How it works:
1. Deposit 100 REDO → receive a secret
2. Withdraw anytime to any wallet
3. ZK proof ensures unlinkability
Smart contract :
EQBUH-7pbBjvVKXe7FjPnCSIJ2vvUedfJmjoWdKfLYMC_1KF
Mini-App : @ZkResistorBot
GitHub : tonresistor/zk-resistor
Group : @ResistanceForum
Privacy is ResistanceFor test purposes only
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤1
ZKResistor is a factory for fixed-denomination privacy pool for TON and any jettons. Think of Tornado or Tonnel, but anyone can create a pool for any jettons.
You deposit a fixed amount, then later withdraw to a fresh address. A zero-knowledge proof breaks the on-chain link between depositor and recipient.
Under the hood: Groth16 zk-SNARKs over BLS12-381, verified on-chain inside the TVM. Merkle tree of depth 20 enabling 1M deposits per pool.
A trust setup still needs to be done.
Groth16 needs a per-circuit trusted setup. If the secret randomness of that setup ever leaks, someone could forge withdrawal proofs and drain pools.
The fix is a public multi-party ceremony.
Each participant injects randomness and destroys their own secret. As long as one participant stays honest, the setup is permanently secure and no one can forge proofs. Every contribution is public and verifiable.
Phase 1 is open. Contributing is Docker-based, run a script and add your randomness. It takes a few minutes.
One honest contribution from you makes this trustless for everyone.
ZKResistor Contracts :
https://github.com/TONresistor/zk-resistor-contracts
Live on a mainnet test deployment:
zk.resistance.dog (for tests only.)
How to contribute:
https://github.com/TONresistor/zk-resistor-ceremony?tab=contributing-ov-file
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1🫡1
Phase 1 of the trusted setup closes on June 20, 2026, at 16:00 UTC.
The phase1 (PoT) has been open to anyone. To seal it, we cap it with a public randomness that nobody can predict or control, not even me.
That randomness is Drand round 6218006 (round at 16:00 UTC on 20 June) on the League of Entropy mainnet. Which stays unknown until the round publishes that day. We apply it as the final phase-1 contribution.
Once the randomness beacon from Drand is applied, phase 1 is sealed and no further contributions can be added to it and phase 2 opens right after
If you want your contribution in phase 1, add it before June 20, 16:00 UTC :
github.com/TONresistor/zk-resistor-ceremony
📢 @ResistanceTools | 💬 @zkproof
The phase1 (PoT) has been open to anyone. To seal it, we cap it with a public randomness that nobody can predict or control, not even me.
That randomness is Drand round 6218006 (round at 16:00 UTC on 20 June) on the League of Entropy mainnet. Which stays unknown until the round publishes that day. We apply it as the final phase-1 contribution.
Once the randomness beacon from Drand is applied, phase 1 is sealed and no further contributions can be added to it and phase 2 opens right after
If you want your contribution in phase 1, add it before June 20, 16:00 UTC :
github.com/TONresistor/zk-resistor-ceremony
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2🔥2