deju / heiswap-dapp

Heiswap Dapp - Mix and Mask your Ethereum Transactions!

Home Page:https://heiswap.exchange/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Heiswap Dapp


Branch Status URL
master Build Status heiswap.exchange

Heiswap (黑 swap) is an Ethereum transaction mixer that ultilizes parts of CryptoNote to enable zero-knowledge transactions.

It ulitilizes Ring Signatures and pseudo-stealth addresses to achieve its zero-knowledge properties. The deployed smart contract handles the signature verification, while the client is responsible for generating the pseudo-stealth address.

Ring signatures was only possible on the EVM (gas-wise) due to the recent addition of EIP198.

You can play with the Ropsten version right now.

Development

Project is a standard create-react-app project, using truffle to compile, migrate and deploy contracts.

Solidity files are located in contracts, and compiled to src/contracts

Run yarn start to run the project.

The proof-of-concept repository is located here.

Verifying Contract on Etherscan

  1. Deploy to etherscan. (truffle migrate --network ropsten)
    • Remember to export ENV vars ETH_SK and INFURA_KEY
  2. Install truffle-flattener
  3. Flatten source files: truffle-flattener contracts/AltBn128.sol contracts/Heiswap.sol contracts/LSAG.sol > /tmp/etherscan.sol
  4. Upload single large file (/tmp/etherscan.sol) on to etherscan to verify, remember to add the library addresses from src/contracts/Heiswap.json -> links.

Special Thanks

This project would not have been possible without the existence of other open sourced projects, most notably

About

Heiswap Dapp - Mix and Mask your Ethereum Transactions!

https://heiswap.exchange/

License:MIT License


Languages

Language:JavaScript 96.7%Language:HTML 2.8%Language:CSS 0.5%