Announcing the Multisig repository

Words
365
Reading
2 min
Listen
Play
8y


Image by good-karma@good-karma

Purpose

This repository includes several functions useful for setting multi-authority accounts. It is best used on par with this tutorial.
I have been asked by several users on Steem and Discord to organize the code in a repositiory so here I come!

Current Features

The current version is pretty rough but builds the fondamentals for using multisig :

Updating the account

A hardcoded example that shows how to update the account by adding new public keys or accounts, setting weights and a threshold, and this for either the owner, active or posting authority.

Creating tx

We show how to get the dynamic global properties and use them to create a tx for a transfer.

Sign with private keys

The tx is repeatedly signed with different accounts until reaching a weight greater than the threshold.

Broadcast the signed tx

Once enough accounts signed the tx, it is broadcasted to the blockchain

All these features are for now hardcoded for the sake of the example, but we ll create a dynamic interface in the future.

How to use?

  • Clone this repository:

git clone https://github.com/stoodkev/multisig

  • Install the project

npm install

  • Create a .env file with the required private keys

  • Change the account names and public keys , weights and thresholds in updateAccounts.js according to your specs.

  • Run npm run update to update your account authorities

  • Change the signing accounts and transfer information

  • Run npm run sign

  • Check the result on steemd.com

Technology Stack

  • NodeJs
  • DSteem library

Roadmap

On the next update, I ll add some views and create forms to update the accounts in a user-friendly way, and sign and broadcast a json object passed as argument.
The goal is to move step by step from the hardcoded version of the code that was used as an example for the tutorial, to a dynamic interface.

How to contribute?

Everyone is welcome to contribute, either by submitting Pull Requests, submitting ideas or issues, or requesting new features. You can also contact me at stoodkev@stoodkev on Discord and Steem Chat.

Pull Request

Update Account, Sign and Broadcast

GitHub Account

https://github.com/stoodkev

Repository

https://github.com/stoodkev/multisig

Hope this helps!

If you find it useful, please consider voting for me as a witness.