Hive Multisig Proposal

in HiveDevs2 years ago (edited)

Ever since I looked into the multisig capabilities of the Hive blockchain and wrote this tutorial about it over three years ago, I've felt it was a pity that there is no way to use it effectively in our ecosystem, and also wanted to do something about it.

After talking with @forykw and @yabapmatt I realized there was really a demand for this, so I started to look for devs.

What is Multisig ?

An account set to use multisignature (or multisig) will require one or more signatures to perform an operation, as opposed to traditional accounts that only require one signature.

I encourage you to read this article to better understand how this works on Hive. It was written for S***m at the time but the principles are the same on Hive.

TL;DR
For owner, active and posting authorities, instead of having only one key, you can set several, or also set other accounts as having authority. Each of these keys or accounts has an associated weight, and the authority has a threshold. For the transaction to be broadcasted successfully, the combined weights of the keys and accounts used for signing need to reach the threshold.

Example
If your posting authority has 1 key (weight set to 2) and 3 other accounts (all weights set to 1)and its threshold is set to 3, you can either require the three other accounts to sign (1 + 1 + 1 = 3), or sign with your key and one other account (2 + 1 = 3)

Why is this important ?

Here are a few uses cases of multisig wallets on Hive:

Enhanced security

With a multisig account, even if one of your keys is compromised, your funds are still safu.

2 Factors Authentication (2FA)

One way this could be used on Hive is by creating a 2FA using a desktop and mobile wallet (Keychain for instance ;p). You could sign once with an account present on your computer, and be prompted to sign a second time on your mobile wallet.

Community decisions

Hive is based on communities, and multisig is a very powerful tool for them to take decisions based on consensus.

DHF Proposals

I see two possible applications of multisig linked to the DHF :

  • For "umbrella proposals" that ask for funds in advance (marketing, petty cash, etc.) , it could be used to distribute the funds based on consensus.
  • Because we fear abuse, it is currently quite hard for new developers to fund their project on the DHF, without reputation to back them up. With multisig, we could assign them reviewers that would unlock the funds upon reaching milestones.

Authority granularity

How to allow someone to vote with your account but not to post?
Give that user an insufficient posting authority, and run a bot to complete the signature only for voting.

The problem

For a multisig transaction to be broadcasted, it must be signed by several accounts before the transaction expires. There is currently no easy way to pass the partially signed transaction to the next users and ask for their signature.

Proposal

What we want to build

Communication protocol

Our communication protocol will use WebSockets to relay pending transactions to those who can sign it.

Here's a simple story where user A initiates a transaction but also needs user B and C signatures:

User A uses her favorite frontend and initiates a transaction. Her transaction is signed using her key, then encrypted once for each potential signer using their memo key. The resulting username-encrypted messages are sent via WebSockets.

User B is already online and his wallet is set to automatically connect to Hive Multisig (via signing a message). A popup immediately opens up and prompts him to accept or reject the transaction. The updated transaction (with two signatures) is sent back to Hive Multisig.

User C is currently offline, but receives a message on Discord and quickly connects to HiveAuth via her mobile wallet, before the transaction expires. As soon as she connects, she receives the same prompt. Since her signature is the last one to be required, the transaction is immediately broadcasted upon confirmation. User A and B are notified.
If however, User C doesn't make it on time and the transaction expires, User A and B are also notified of the failure.

Infrastructure

We will make sure that our infrastructure is robust enough to handle high traffic, and that it can scale easily, using auto-scaling groups of instances.

One-stop Multisig dApp

This dApp will allow users to sign in, modify their account authorities (add/remove keys or authorized users), and build and perform multisig transactions.
This will also serve as a demonstration dApp for other dApps wishing to implement Hive Multisig.

Hive Multisig Library + Doc

A library will enable seamless integration of Hive Multisig on any front-end (sender) and wallet (receiver). We will work closely with third-party developers to determine the specifications.
The library will be well documented.

Budget

For this proposal, we are requesting a daily funding of 230 HBD/day for a year. This will cover the hiring of two new developers (part-time) and the infrastructure costs. This is also a great occasion to onboard new developers to work on our blockchain!

/!\ NOTE: This proposal is totally independent from the Hive Keychain proposal, and the teams will not overlap. I will just put in a few extra hours to manage the devs.

Commitments

  • We commit to keep all the code produced through this funding opensource. The repositories will be announced soon.
  • We also commit to write monthly updates to keep the community updated.

Support Hive Multisig Development by voting for this proposal on Hive Keychain, PeakD or HiveSigner.

Sort:  

I have already voted and supported the proposal.
I think the proposal and the development they propose are great.
I believe that the institutions will benefit a lot, from being able to control their funds, with multi-signatures, it is safer for the institution, than placing all the responsibility on a single individual.
Due to their organizational structure, I am currently advising a retirement fund, and they require the account to be multi-signature.
Success in the project.

Awesome, thanks for your support! We're getting close to the goal =)

Thank you for the info, You are a good man. and you deserve my support

Trying to be =) Thanks!

Supported brother. I have voted the proposals

Thanks =)

Great idea and voted

@tipu curate


~~~ embed:1577714552065638404 twitter metadata:bm9ha21pbG98fGh0dHBzOi8vdHdpdHRlci5jb20vbm9ha21pbG8vc3RhdHVzLzE1Nzc3MTQ1NTIwNjU2Mzg0MDR8 ~~~

~~~ embed:1577844905832947712 twitter metadata:eWFzaXJidWxvaHx8aHR0cHM6Ly90d2l0dGVyLmNvbS95YXNpcmJ1bG9oL3N0YXR1cy8xNTc3ODQ0OTA1ODMyOTQ3NzEyfA== ~~~

~~~ embed:1583183240117948416 twitter metadata:OTQ5Nzk5ODYxMzIyNDY5Mzc3fHxodHRwczovL3R3aXR0ZXIuY29tLzk0OTc5OTg2MTMyMjQ2OTM3Ny9zdGF0dXMvMTU4MzE4MzI0MDExNzk0ODQxNnw= ~~~
The rewards earned on this comment will go directly to the people( @shiftrox, @noakmilo, @my451r, @wilsonthe, @enjar ) sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.

good stuff

This really sounds like a great idea and I appreciate you sharing this.

Multisig is such a powerful feature of Hive. Having a tool/app that makes using this feature easy and effortless would be awesome. Voted! We need one for escrow as well.

What a timing and blessing readying this proposal today. I was just questioning myself few hours ago on multi-sig possibilities on Hive since it's a community based social blockchain. I support this proposal, will vote for it and will help campaign for more vote.

It is an excellent proposal, in fact the keychain is quite effective to store the keys, there are still issues that I do not understand much but I will also review the proposal when I arrive, you have made things much easier for us.

😉😎👍 sounds good. I was hacked before (damn sly intro post copying hackers!), so am more paranoid now. i would add some kind of 3FA.. like how about using an authenticator app where they have to copy the current code..?

Sounds good and necessary for me. It could help to make Hive safer. Voted and rebloged!

What a magnificent idea with such content people will know their way around the hive Blockchain especially on the Hive Multisig you proposal it on point.

Sounds very good to me. Supported and re-blogged.

i would ask you though to consider using a decentralised encrypted messaging platform (getsession.io is my favourite at the moment for many reasons especially as it requires no phone number or email) instead of or as well as Discord. There are many other good FOSS choices for messaging such as Hush Chat, Conceal Live and Jitsi Meet, but i think Session is the most feature rich and secure (video calls are still in public beta though i think).

Discord is centralised, censoring, deletes accounts (just ask Ice Age Farmer who shares good information exposing the agenda of #thepowersthatshouldntbe) and thus, in my opinion Discord supports #massmarder (and indirectly so do the users, not that i'm judging anyone for this, especially as most don't realise the consequences).

i feel strongly that to ease the suffering of humanity it is essential if we are to reduce the violence caused by corrupt centralised orgs such as Discord, Fakebook, Twatter, Google etc.) that we as individuals make better choices to stop using thier platforms.

One other thing perhaps you can help me with perhaps. i've downloaded the latest Keychain apk from github several times and tried to install (on Android) but each time i get messager, Error, not installed.

Thanks for your work.

Sat Nam
Atma

Some free Hive-engine tokens for you: !PGM !PIZZA !LUV

Want to mine some more crypto? If so, Join #Fractally, start earning $RESPECT
https://genesis.gofractally.com/share/P3y08N-PpNgcxJQh and help to #savetheworld from the #massmurdermachine of corrupt centralised organisations effectively controlled by #thepowersthatshouldntbe!

Sent 0.1 PGM - 0.1 LVL- 1 STARBITS - 0.05 DEC - 15 SBT - 0.1 THG - tokens to @atma.love

remaining commands 14

BUY AND STAKE THE PGM TO SEND A LOT OF TOKENS!

The tokens that the command sends are: 0.1 PGM-0.1 LVL-0.1 THGAMING-0.05 DEC-15 SBT-1 STARBITS-[0.00000001 BTC (SWAP.BTC) only if you have 2500 PGM in stake or more ]

5000 PGM IN STAKE = 2x rewards!

image.png
Discord image.png

Support the curation account @ pgm-curator with a delegation 10 HP - 50 HP - 100 HP - 500 HP - 1000 HP

Get potential votes from @ pgm-curator by paying in PGM, here is a guide

I'm a bot, if you want a hand ask @ zottone444


PIZZA!

PIZZA Holders sent $PIZZA tips in this post's comments:
atma.love tipped stoodkev (x1)
@shiftrox(1/15) tipped @stoodkev (x1)

You can now send $PIZZA tips in Discord via tip.cc!

Community decisions
Hive is based on communities, and multisig is a very powerful tool for them to take decisions based on consensus.

It's a very interesting idea and I see great potential. In my view for communities, it will be a great advance in this aspect of decision-making and decentralization of power and actions that only one person, for example, could take.

!PIZZA !PGM !LUV !PIMP !CTP


You must be killin' it out here!
@shiftrox just slapped you with 1.000 PIMP, @stoodkev.
You earned 1.000 PIMP for the strong hand.
They're getting a workout and slapped 1/1 possible people today.

pimp_logo


Read about some PIMP Shit or Look for the PIMP District

Sent 0.1 PGM - 0.1 LVL- 1 STARBITS - 0.05 DEC - 15 SBT - 0.1 THG - tokens to @shiftrox

remaining commands 9

BUY AND STAKE THE PGM TO SEND A LOT OF TOKENS!

The tokens that the command sends are: 0.1 PGM-0.1 LVL-0.1 THGAMING-0.05 DEC-15 SBT-1 STARBITS-[0.00000001 BTC (SWAP.BTC) only if you have 2500 PGM in stake or more ]

5000 PGM IN STAKE = 2x rewards!

image.png
Discord image.png

Support the curation account @ pgm-curator with a delegation 10 HP - 50 HP - 100 HP - 500 HP - 1000 HP

Get potential votes from @ pgm-curator by paying in PGM, here is a guide

I'm a bot, if you want a hand ask @ zottone444


Such a great project, I can say this is definitely the best project I have encountered on the hive blockchain.

Enhanced security
With a multisig account, even if one of your keys is compromised, your funds are still safe.

This is technically important to, this will makes hive more secure. I thought when I got no access to my keys my funds are gone but multisig will help change that. **I will love to contribute to the project but am not a dev. Is there any other way I can contribute with teaming or partnering with you are you team in build this up **

It seems like a great idea but I can also suggest that you take into account the Latin community and when you develop it, it is in the Spanish language also for better understanding

This post has been manually curated by @bhattg from Indiaunited community. Join us on our Discord Server.

Do you know that you can earn a passive income by delegating to @indiaunited. We share 100 % of the curation rewards with the delegators.

Here are some handy links for delegations: 100HP, 250HP, 500HP, 1000HP.

Read our latest announcement post to get more information.

image.png

Please contribute to the community by upvoting this comment and posts made by @indiaunited.

That would be great, especially for businesses, guilds, and any organization!

thats nice!

we totally need this. there are so many bees in this hive after all. 🐝🐝🐝🐝🐝

I think this is a useful implementation
DHF Supported!

YES YES YES!!! Make more of these no-code tools, please. :) Give the power to plebs!

image.png

Cool idea.

Would this allow as well f.e.

a teacher and his student or
parents and their kids

as a potential scenario to sign for activities on the chain?

I want this so badly, I hope the proposal gets funded. It would make our guild life so much easier. We have an account together with multiple members holding the full set of keys. It would be awesome to reduce the point of failure...

This is nice idea

Great idea! Voted!

Congratulations @stoodkev! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):

You received more than 44000 HP as payout for your posts, comments and curation.
Your next payout target is 45000 HP.
The unit is Hive Power equivalent because post and comment rewards can be split into HP and HBD

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Security's never enough, transparency and security is the key! Love it!

Greetings sir, what is the requirement to get your kind attention? Asking because I saw you are a great curator and I'm an author who look for generous curator like you. Hope you don’t mind me asking this, have a nice day!

Great idea! Supported.

Howdy.
I don't pay attention so I miss lots of stuff.

On the Keychain App. Thanks but not why I am here.
Is there plans for future developments.
Something like one of those where you can use your phone camera and take a pic of a QR code?
If not . Would you work on it?

I love this proposal as I am in actual need of exactly this functionality for my community. We hold tons of different HIVE accounts with many assets on them. Multi-sig is a must have eventually, so I really hope you will get enough votes to fund this important project.

I hope so too! Please share it among your guild =)

This is a fantastic proposal and I would totally have supported it for the additional security.

But you tipped me and I can't now 😔

It's bad practice ethically because, although I can never be bought (and my current financial situation amply proves this so I have nothing to prove), if I vote for this now it may look as though my ethics aren't solid.

I hope you understand my position. I do support what you're doing! Its a great proposal. It's just that others may not believe my intentions are clear (especially, interestingly enough, those that can't be trusted themselves, because that's how trust generally works 😆) and you may not get funding anyway because of the way it has played out if I vote now 😊

Next time, please just feel free to tag me on any development posts / ideas you have instead and I'll always support what I believe is good action. Regardless of the outcome for me personally 🌸

Well I think it's obvious that a 1ct message is sent for the memo and not as a tip, but I respect your choice.

Thanks for the info :)

New here so have little idea what that means. For the memo?

You still have my vote, btw. In whatever form... I do observe things and look around me as I travel 👍

And now I know what a memo is. I think!

Would have been quicker if you'd explained. And if I'd asked ;)

Good luck with the funding. Great proposal

Yeah supported