Maskpay implement an Ethereum zk-proofs based protocol for privacy preserving payments. This allow users to make payments without revealing the amount of the payment.
Note: Only amount of the payment is hidden, the sender and receiver addresses are still visible on the blockchain preventing money laundering.
Maskpay using zk-SNARKs to prove the validity of a transaction without revealing the amount of the transaction. The sender creates a proof that the transaction is valid and the amount is correct. The proof is then verified by the smart contract on the blockchain.
- Circom
- Snarkjs
- How to compile circuits
circom circuits/transfer10.circom -o build --r1cs --wasm
circom circuits/transfer2.circom -o build --r1cs --wasm
-
Setup proving key and verifying key
-
Export verify contracts
snarkjs zkey export solidityverifier // TODO
- Salary payment
- Business transfer
- Confidential