Skip to content

Latest commit

 

History

History
22 lines (15 loc) · 1.73 KB

README.md

File metadata and controls

22 lines (15 loc) · 1.73 KB

Strato Multisig Wallet

A smart contract that implements a multi signature wallet in BlockApps STRATO.

Overview

This demo app is designed to be deployed on the STRATO blockchain platform. It uses the multisig.sol contract to demonstrate a solution for a basic 2-3 multisignature fund transfer Workflow.

The idea behind a multi signature wallet is that funds (ether) are held in smart contract and only released to someone else if a majority of the participants sign off on the withdrawal.

In this implementation, there are three participants (_owners 1,2,3). Any owner can suggest a fund transfer - and funds can be withdrawn if multiple participants approve the withdrawal with a signed message. Once initiated, a fund transfer gets held in memory until another party signs off on it. Any public contract address may send ETH to the multisig wallet contract by invoking the depositToWallet method. However, only a quorom of owners may decide to move the funds to another address.

For reference this contract is to be used with ETH only, and is not ERC20 compatible.

How to deploy

To deploy this contract, follow these steps:

  1. First, deploy an instance of Strato. To get started on azure, follow the deployment steps here
  2. Navigate to the STRATO Management Dashboard by entering the deployed VM's IP/URL in your browser and using the username "admin" with the password you set during deployment
  3. In the dashboard, navigate to "Accounts" and create a new EOA account with a username
  4. Next, navigate to "Contracts" -> "+ Create New Contract" -> and fill out the required forms
  5. You may now interact with your multisig wallet contract!