Skip to content

Confidential Transaction on Ethereum Blockchain using zk-SNARKs

Notifications You must be signed in to change notification settings

helixpay-xyz/confidential-transaction

Repository files navigation

Confidential Transaction on Ethereum

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.

How it works

Overview

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.

ZK-SNARKs

Requirements

  1. Circom
  2. Snarkjs

Circuits

  1. How to compile circuits
circom circuits/transfer10.circom  -o build --r1cs --wasm
circom circuits/transfer2.circom  -o build --r1cs --wasm
  1. Setup proving key and verifying key

  2. Export verify contracts

snarkjs zkey export solidityverifier // TODO

Use cases

  1. Salary payment
  2. Business transfer
  3. Confidential

About

Confidential Transaction on Ethereum Blockchain using zk-SNARKs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages