• Stars
    star
    128
  • Rank 281,044 (Top 6 %)
  • Language
    Solidity
  • Created over 4 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Tornado privacy pool with internal transactions

Tornado Pool Build Status

This an experimental version of tornado.cash that allows to deposit arbitrary amounts and make internal(shielded) transfers.

Other facts about this version:

  1. It uses L2 (xdai). Xdai has a ETH(mainnet)<>WETH(xdai) bridge that will be used under hood.
  2. Contracts will be upgradable by tornado-cash governance! xdai bridge supports transferring messages from L1 to L2 and vise versa, so community can always upgrade tornado-pool to a new version in case of an issue.
  3. Since it's a beta version, deposits are limited by 1ETH. Governance can always increase the limit.
  4. Withdrawal amount from pool to L1 has to be larger than 0.05 ETH to prevent spam attack on the bridge.
  5. The code was audited by Igor Gulamov from Zeropool.

This project was presented on LisCon 2021. Slides

Usage

yarn
yarn download
yarn build
yarn test

Deploy

Check config.js for actual values.

With salt = 0x0000000000000000000000000000000000000000000000000000000047941987 addresses must be:

  1. L1Unwrapper - 0x3F615bA21Bc6Cc5D4a6D798c5950cc5c42937fbd
  2. TornadoPool - 0x0CDD3705aF7979fBe80A64288Ebf8A9Fe1151cE1

Check addresses with current config:

yarn compile
node -e 'require("./src/0_generateAddresses").generateWithLog()'

Deploy L1Unwrapper:

npx hardhat run scripts/deployL1Unwrapper.js --network mainnet

Deploy TornadoPool Upgrade:

npx hardhat run scripts/deployTornadoUpgrade.js --network xdai

More Repositories

1

tornado-core

Tornado cash. Non-custodial private transactions on Ethereum.
JavaScript
1,471
star
2

tornado-cli

A command line interface to make transactions in Tornado Cash protocol
JavaScript
168
star
3

tornado-relayer

Relayer for Tornado cash.
JavaScript
157
star
4

tornado-classic-ui

Tornado Cash Classic UI
JavaScript
82
star
5

ui-minified

A minified web UI for Tornado Cash protocol
HTML
81
star
6

docs

36
star
7

torn-token

JavaScript
27
star
8

tornado-anonymity-mining

JavaScript
26
star
9

fixed-merkle-tree

TypeScript
22
star
10

tornado-governance

JavaScript
16
star
11

tornado-trees

JavaScript
14
star
12

tornado-aggregator

Solidity
13
star
13

tornado-root-updater

JavaScript
13
star
14

tornado-pool-relayer

TypeScript
10
star
15

tornado-subgraph

JavaScript
9
star
16

trusted-setup-server

JavaScript
8
star
17

tornado-onion

7
star
18

airdrop

TypeScript
7
star
19

tornado-initiation-ui

JavaScript
6
star
20

provider

JavaScript
6
star
21

nova-ui-minified

A minified web UI for Tornado Cash Nova protocol
HTML
5
star
22

tx-manager

JavaScript
4
star
23

deployer

JavaScript
4
star
24

phase2-wasm

JavaScript
4
star
25

governance-notifier

JavaScript
4
star
26

tornado-pool-subgraph

TypeScript
3
star
27

tornado-trees-proposal

JavaScript
3
star
28

relayer-registry

JavaScript
2
star
29

mining-proposal

TypeScript
2
star
30

ip-echo

JavaScript
2
star
31

assets

2
star
32

relayers-contest

2
star
33

tornado-deploy

JavaScript
2
star
34

tornado-relayer-registry-subgraph

TypeScript
1
star
35

tornado-testnet-setup

Tornado Cash improvement proposal to lower the vote quorum from 25k to 15k TORN
TypeScript
1
star
36

landing-subgraph

TypeScript
1
star
37

nova-debug

JavaScript
1
star
38

nova-upgrade-proposal

JavaScript
1
star