Creating Multisig Wallets for Governance
The core of what makes a JPEG DAO Committee an actual democratic committee is their wallet. Each committee wallet contains a large amount of JPEG and needs the agreement of at least 3 committee members to move funds. “Multisig” or Multiple-Signer wallets need the signature/approval of multiple people.
However, you don’t need a DAO to create a blockchain committee. You just need some funds, a few online friends, Lobstr, and Lobstr Vault. Let’s walk through it!
Step 1: Create a Lobstr Wallet
There are multiple ways to manage multisig Stellar wallets. However, I find Lobstr is by far the best. One thing Lobstr doesn’t do well ,(yet) is manage multiple accounts. If you already use Lobstr for your personal funds, move to another app or only access your personal funds from the Lobstr website. In other words, the Lobstr app on your phone should be dedicated to this effort.
Step 2: Ask your cosigners to setup Lobstr Vault
Everyone else on the committee should download Lobstr Vault. Then they should provide you with their Lobstr Vault public key
Step 3: Add your cosigners to your wallet
As a standard, JPEG DAO Committees use “3 of 5 multisig wallet”. This means that the committees have 5 people and 3 of them must sign any transaction. While we plan on growing our committees, I’ll explain how to set a “3 of 5” wallet up.
Navigate to Multsig in the Lobstr settings and begin to add the Lobstr Vault public keys. You can easily add the first public key because only you have to approve the additional key. However, once you’ve added a Lobstr Vault signer, your wallet will be (by default) a “2 of 2” wallet. This means both you and your cosigner need to sign to add a third signer. And then all 3 of you need to sign to add a 4th signer. And then all 4 of you need to sign to add a fifth signer. And then all 5 of you need to sign to adjust the wallet from “5 of 5” to “4 of 5”….and then another round of signatures to adjust the wallet to “3 of 5”. Additionally, multisig wallets are a bit finicky and you don’t want to attempt multiple transactions at the same time.
You could do it that way…or you could try to optimize for efficiency! I suggest adding two signers (creating a 3 of 3 wallet). Then adjusting the multisig settings down to a 1 of 3 wallet. Then adding the final 2 signers; creating a 3 of 5 wallet.
So how do we send transactions?
The simplest way if for the individual with the Lobstr wallet to trigger transactions and the Lobstr Vault users to sign them. However, transactions doesn’t have to be sent this way. Any of the committee members can build a transaction using Stellar Laboratory, and submit the transaction for the other members to sign. While this technique is rarely utilized, it helps ensure democratic committee votes.
Can you show my an example?
Here is our Innovation Fund Wallet. You’ll notice 5 account signers with a score of 10 next to them. “10” is their signing power. The wallet with the “1” next to it is automatically setup and helps connect Lobstr and Lobstr Vault. Do you see the field called “Operation Threshold”? The wallet requires 30 “points” of signing power to complete various transactions.
Well, that’s everything. You’re ready to run a multibillion dollar multsig blockchain committee! Get to work!