List of MultiSig Wallet Smart contracts on Ethereum

Lê Yên Thanh
Jun 2, 2018 · 4 min read

In this post, we are going to overview some verified implementations for MultiSig Wallet Smart contracts on Ethereum that you can use for your business.

TL;DR

I asume that you already have some basic knowledge about Ethereum and Smart contracts. If not you can start to .

If you don’t know what is Multisig wallet, you can learn more about it . Basically, it is a smart contract that implemented as a wallet to store your ETHER / Tokens where belonged to multiple owners, a transaction issued needs to be accepted by at least <requirements> (this number can be customized) owners to be proceeded

List of MultiSig Wallet Smart contracts

Here I will list some implementation for MultiSig Wallet that are verified and widely used. Please keep in mind that you shouldn’t change the implementation as the code is tested carefully to prevent any problem unless you really know what you are doing. Of course I can not guarantee that those smart contracts are 100% bug free as it is made by human anyway :) So always test everything carefully before deploy it to the mainnet.

And here is the list:

  • — This is one of the simplest implementation for the Multisig Wallet, the code is easy to understand and use, basically you can use the multisig wallet to do anything an individual account can do (except deploying contract, of course!). It is widely used and one of the has 200k ETHER! (reviewed on the time writing this post). Its drawback is lacking of test and not updated for a long time, the code still use solidity ver 0.4.10!
  • This is an upgrade implementation for the . The wallet still maintain the simple logic and code as its a.The code is structured as a Truffle project with tests and active developments, this is a good alternative choice if you don’t want to use the Wallet from ConsenSys.
  • This implementation is also a good choice. The project is implemented with Truffle, tested with an active community. The wallet has more complex logic than the and but still easy for you to understand and logic. One of the biggest advantage of this wallet is ERC20-Token Compatibility, owner can use defined function to transfer Token easier than the other wallets (yes, of course we can use other wallet to transfer token or do any advanced stuffs). Notice that this Multisig Wallet is implemented using 2-of-3 signing configuration, meaning the wallet has exactly 3 owners and require 2 agreements to proceed the transaction.
  • (If you use Ethereum Wallet or Mist, you can see that the App also provide you a method to deploy a Multisign Wallet. The interesting part is this wallet is compatible with the Ethereum Wallet App and Mist App, which means you can call the function send transaction or confirm easily. Although there are no documents about how to use this wallet, we can analyze its implementation (a little bit different from the one committed on ethereum’s repo) and understand the logic clearly. There are some function has a special implementation that requires tricky way to proceed, such as ‘changeRequirements’ needs to be call by many owners and mined in the same block to be proceeded.
  • (NOT RECOMMENDED)— Parity UI App also has a similar feature as Ethereum Wallet which helps us deploying the Multisign Wallet easily. Sad news is in Nov 6th, 2017 the parity’s multisig wallet is , the problem is because of all the deployed multisign wallet use a library implemented by Parity which isn’t initialized correctly. A person luckily become the owner of the library because of this bug and try to stole the money by calling the ‘kill’ function, he couldn’t get the money but make all smart contracts used this library died. That’s why all the implementation for Multisig Wallet I listed here has no library dependencies in the code to prevent this scenario happen again. I don’t know if the Parity has changed the way they deploy the smart contracts for MultiSig Wallet or not but I would not recommend people to use the Parity to generate the Multisig Wallet now (anyway, Parity is still a good choice for Ethereum Node now).

What Multisign Wallet I should use?

Well, I leave the answer for you. You can also implement your own Multisig Wallet if you really good at Solidity and have enough confidence. In any case, you need to test and read the smart contracts to understand the implementation carefully before deploying things to the mainnet

In TALO we use the Gnosis’ MultiSig Wallet because of its simplicity and well development, the implementation is good enough for us to use in many cases. If you want to know more about TALO, you can take a look at:

Subscribe for TALO to learn more about us and intersting articles:

Lê Yên Thanh

Written by

Want to know more about me? https://lythanh.xyz