/MultiSigWallet

Allows multiple parties to agree on transactions before execution.

Primary LanguageCSS

Ethereum Multisignature Wallet

Allows multiple parties to agree on transactions before execution. Allows to add and remove owners and update the number of required confirmations. A web user interface can be found here.

Install

git clone https://github.com/ConsenSys/MultiSigWallet.git
cd MultiSigWallet
vagrant up

Test

Run single test:

cd /vagrant/contracts/
python -m unittest tests.test_multisig_wallet

Run all tests:

cd /vagrant/contracts/
python -m unittest discover tests

Deploy

Remember to change owner addresses in the respective JSON file before deployment!

Deploy multisig wallet:

cd /vagrant/contracts/
python deploy.py -f deploy/MultiSig.json

Deploy multisig wallet with daily limit:

cd /vagrant/contracts/
python deploy.py -f deploy/MultiSigWithDailyLimit.json

Limitations

This implementation does not allow the creation of smart contracts via multisignature transactions. Transactions to address 0 cannot be done. Any other transaction can be done.

Security

All contracts are WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Reviewers

The following people have reviewed the code at the time of the linked commit:

Deployed instances with significant funds

License

GPL v3