Tutorial: Multi-signature Transactions with Electrum 2.0

4 minute read

Posted by: DeepDotWeb

March 21, 2015

A great tutorial posted originally on Reddit by /r/darknetmarkets mod galaxyandspace, Edited with the images for your convenience:

Greetings Ya’ll! It’s time to learn how to multisig!!!!

Recently, Electrum 2.0 came out, along with the ability to create 2 of 3 multisig wallets. We will be walking through how to complete this process, both from the buyers end and vendors end, both covering the mechanics and whats happening. The market admins can figure it out for themselves what to do. We will cover what goes down in the events of a normal transaction, and in the events of a dispute.

If you don’t get this guide the first time through, give it time. Come back in a day later, look it over again. It’s a fairly complex process, give it time to sink in.

Buyers End first. You are in charge of making the wallet, and providing funds to it.

  1. Get Electrum 2.0 www.electrum.org/#download
  2. Run Electrum.
  3. Select Create New Wallet and multi-signature wallet, then proceed. If you already have a default wallet, File>New/Restore.
  4. Select 2 of 3 on next screen, then proceed.
  5. You will find your seed generated. Copy it to your clipboard and a text file then #fuckingwriteitdown.
  6. click next, then paste that same seed onto the next screen. Hit next.
  7. Create a password. Don’t skip this step, the password is required to keep your end secure and release funds. Click next.
  8. Copy your master public key, and share it with the market and vendor. Take care not to share your seed or password.
  9. Gather the two master public keys, one from the market, one from the vendor. Paste them each, order doesn’t matter. Next.
  10. “Select Server Manually”, then config to route through Tor. Tor Browser Bundle must be running for this to work.
  11. SSL, SOCKS5, localhost, port 9050
  12. Light in bottom right corner will turn from red to green when connected.
  13. On the receive tab, note that all the addresses start with 3, instead of one. This signifies they are indeed multisig addresses.
  14. You are responsible for funding the correct amount of bitcoins to an address on this wallet. Remember, any funds transfered there can’t be transfered back without without 2 of 3 consensus. Be careful to send the correct amount. After this is done, your work is done until it’s time to finalize the transaction (which you will do in a timely manner, as you are not a little bitch).
  15. </ol>

    Vendors it’s your turn!

    Generate your Master Public Key

    1. Get Electrum 2.0 www.electrum.org/#download
    2. Run Electrum.
    3. Select Create New Wallet and multi-signature wallet, then proceed. If you already have a default wallet, File>New/Restore.
    4. Select 2 of 3 on next screen, then proceed.
    5. You will find your seed generated. Copy it to your clipboard and a text file then #fuckingwriteitdown.
    6. click next, then paste that same seed onto the next screen. Hit next.
    7. Create a password. Don’t skip this step, it is for your security. Click next.
    8. Copy your master public key, and share it on your market profile. Take care not to share your seed or password.
    9. end the creation, you will not be making a wallet at this time. This is done by deleting the wallet file.

    To open your end of a wallet created by a customer/buyer (this is for each order).

    1. File>New/Restore, name the file.
    2. Select “Restore a wallet or import keys” and “multi-signature wallet”. next screen, 2 of 3. next.
    3. Paste your previous generated master public key.
    4. Gather the two master public keys, one from the market, one from the buyer. Paste them each, order doesn’t matter. Next.
    5. Verify the correct funds are present.
    6. You are responsible for creating two transactions. One is to pay the market their previously agreed upon share. The other is to pay yourself the rest to the correct bitcoin address. You won’t be able to complete these, but you will generate the text needed for the customer or market to sign off on these transactions. These will be exported as .txn text files, which you can then copy and share the contents to the market message system, for the buyer or market to fully sign the transaction.
    7. Click the send tab
    8. enter correct address, and amount, then click send.
    9. Agree to the fee.
    10. Provide your password.
    11. save the file. repeat for each transaction, ideally the markets small share first.
    12. Open the files in a text editor, and share on the markets message system.
    13. Wait to get paid once the buyer receives their package.
    14. </ol>

      Finalizing

      1. Open the correct multisig wallet. Nothing will work unless you are in the right wallet.
      2. Tools>Load Transaction>From Text
      3. Copy paste each transaction (one at a time), starting with paying the market first.
      4. It should load up a small window, giving signing as an option. Make sure all the details look correct before you sign!!!!!!!!
      5. Repeat for vendors transaction.
      6. Congratulations! The transaction is complete!
      7. </ol>

        Disputing

        Weather it’s the vendor or buyer disputing, they are responsible for providing a return address. The market is responsible for generating the transaction text. The winner of the dispute is responsible for signing/finalizing the transactions and making sure the the coins are going to the right address.

        Updated: 2015-03-21

Updated: