A smart contract that implements a multi-signature wallet with facilities like adding and removing owners to the wallet, ability to sign confirmation from owners, adding ether to the wallet and finally transferring ether for its purpose with multiple required signatures.
- Deployment of contract 'SimpleMultiSigWallet.sol' by Contract Owner.
- Addition of ether to wallet by any owner using fallback function.
- Balance of Wallet can be checked using walletBalance.
- Only Contract Owner can add or remove other owners to wallet using addOwner and removeOwner repectively.
- Any owner can request for withdrawl of amount from wallet which will initialize transaction and generate transactionId.
- To get list of ongoing active transactions method getActiveTransactions can be invoked.
- Atleast 2 confirmations from other owners is required to complete transaction.
- Owners can confirm transaction with transactionId using confirmTransaction.
- Owner can also delete the submitted transaction using deleteTransaction.
- After 2 confirmations to transaction, it will execute and amount will be transferred destination account.