[Guide] Multi-signature Transactions with Electrum 2.0

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. http://i.imgur.com/rY1ld7W.png
  4. Select 2 of 3 on next screen, then proceed. http://i.imgur.com/07fuv1S.png
  5. You will find your seed generated. Copy it to your clipboard and a text file then #fuckingwriteitdown. http://i.imgur.com/JBtMEuC.png
  6. click next, then paste that same seed onto the next screen. Hit next. http://i.imgur.com/P4vtfDy.png
  7. Create a password. Don't skip this step, the password is required to keep your end secure and release funds. Click next. http://i.imgur.com/uagOa7k.png
  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. http://i.imgur.com/u8r1oLG.png
  10. "Select Server Manually", then config to route through Tor. Tor Browser Bundle must be running for this to work. http://i.imgur.com/LLlq6l3.png
  11. SSL, SOCKS5, localhost, port 9150 (Tor Browser) / 9050 (Tor)
  12. Light in bottom right corner will turn from red to green when connected. http://i.imgur.com/icGh48S.png
  13. On the receive tab, note that all the addresses start with 3, instead of one. This signifies they are indeed multisig addresses. http://i.imgur.com/XSi87T6.png
  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).

Vendors it's your turn!

Generate your Master Public Key (you only need one, it can be used as many times as you like)

  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 seed.
  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. http://i.imgur.com/tF6Q5UU.png
  9. Agree to the fee. http://i.imgur.com/SYpij6f.png
  10. Provide your password. http://i.imgur.com/ThOmmBj.png
  11. save the file. repeat for each transaction, ideally the markets small share first. http://i.imgur.com/tly8Pn3.png
  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.

Finalizing

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

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.

Edit: wordings. Edit2: added different port number, as the other was not working. edit3: clarify vendors only need one master public key.


Comments


[15 Points] alwayslookingformore:

Solid guide. I know this isn t/r/DarkNetMarketsNoobs, but this should totally be added over to the sidebar for the foreseeable future. This technology is one we need now more than ever, and as difficult as it may be for some to learn, the evolution (no pun intended) of DNMs in general require us to adopt this for the safety of all.


[5 Points] tenderwingz:

This is really helpful, thank you! :)


[8 Points] yehmuhfuckuh:

For the love of god, never unpin this thread.


[4 Points] QLDGreat:

This is really easy. There's no reason why we can't all learn this.

Vendors need to start refusing to work in centralised escrow. Those who want peace of mind can use multi-sig, everyone who's too lazy can FE.


[3 Points] None:

[deleted]


[3 Points] PsyHighBuyTieDie1:

https://www.darkwallet.is/

^

What do you think of this as one of the options for the future?


[5 Points] trfsq:

Thanks ! This is a nice tutorial !

One thing comes to mind though -- scammers are most likely to be either vendors or market admins/owners, rarely customers. Since the 2/3 multisig still relies on trust from either a vendor or a market; it should be easy for them to spoof said trust.

For example:

  1. Vendor and market owner(s) decide to steal customer(s) funds, for a transaction.

  2. Customer buys something from vendor. BTC are sent, transaction is verified.

  3. No goods or products are sent. Customer requests dispute to get the BTC back.

  4. The last "trusted" peer (market owner) decides to finalize transaction in favor of vendor.

  5. ????

  6. Profit, stolen BTC's are split between vendor and market owner.

Build trust on your market for some time with legit transactions. Mix in there some fake 5/5 vendor reviews, and start scamming customers by hiding tainted transactions ... Something is missing in my opinion. I'm not a BTC expert but that 2/3 peer review does not seem enough to me.

You could get more people involved in the process, such as having a customer/vendor community decide, but again, you will never reach 100% trust !


[3 Points] geecen:

The trouble with multi-sig is that it's publicly visible with blockchain recording both sides - so if the feds find one side...


[3 Points] Matteuz:

I predict that even though Evo cost people thousands, the majority will be too lazy to learn and implement this.


[3 Points] JulesVerne20000:

For all of you people who prefer to read a Multisig Guide with Electrum written in German, here is a guide I made a couple of days ago. http://germanyhusicaysx.onion/topic/10153/2of3multisig-escrow-fuer-mehr-sicherheit-im-alltag/

It is really easy to use now with this new version of Electrum. I don't see any reason a market or vendor should not accept it.

Cheers my brothers and sisters, JulesVerne


[3 Points] 939jf39fj39fasdad:

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

And thats where 2of3 fails. You cant ask buyers to do shit for you, this shit doesnt benefit them in the least bit. Do a writeup when electrum does vendor-market 2of2 and you find a market who will do it.


[3 Points] None:

Fuck that's complicated. I can follow these steps, but could someone please ELI5 what exactly I'm doing and how it's better than escrow, FE, the normal bitcoin transaction? Thanx.


[2 Points] None:

[deleted]


[2 Points] Traxx187:

i like this


[2 Points] Derrick4Real:

Great contribution! This is a must for the sidebar. Especially now that Tails come with Electrum since their 1.3 release.

Electrum is best 3rd part wallet option (IMHO) and multi-sig trans (the part that hasn't gained traction yet, but needs to) really needs to be the standard.

Sticky this...pin it...side bar it...make it easily accessible to OGs and n00bs alike.


[2 Points] Tripple_T:

This is the most useful post I've seen with the word multi-sig in the title and probably the most useful post I've seen all week. Thanks a lot bro.


[2 Points] None:

[deleted]


[2 Points] AussieCryptoCurrency:

The winner of the dispute is responsible for signing/finalizing the transactions and making sure the the coins are going to the right address.

Who signs the Tx first here? DNM admin or vendor/customer?


[1 Points] galaxyandspace:

tip letter runway senior silver assist pond three beauty depend seminar husband acid
xpub661MyMwAqRbcGXQR4KguuPdm1zWoGi6bUK8jfrRSe3BDQ824VcpUqFpk854PtSuNwNzGpUVEZD42PjdoVYttLwfcfM7Det1Z8trBbQrxbQv
xpub661MyMwAqRbcGCyJ2FWrADHmjPg7tZfLVU6i74t41H7ps36tiv42Eu6XmWHGJ7VpNip5vcJbxwvygtipeQMzMzJeybhumimGVVKoBieJy24

{
"accounts": {
    "0": {
        "change": [
            "027c78bb7e19edb141248def82bf3bbf84e8e99040a88e50e2723dbc6c3f48baf9", 
            "02d24c699620f1f8809d6614d9856dff0d8912e0e83954b9f50bcdca78d7da9014", 
            "0279479bc6535a3b097f76fde4546aa884df7d6103faa982a435acd7fca0699b43"
        ], 
        "receiving": [
            "03a1746e50251941ca5eaf06fef3fd711c18ab1d482ee7cd2d46df0a4ffb4a6165", 
            "02f3bb35b1865d9ca45da7c02207e95b4b437112e1d72d1753988540986d3402c6", 
            "024d213851d42cd22c3d49bc93eb50ecce0579b100853470e65266656a99ee6873", 
            "02e6be7490b36f5cb3dbd3a1517a54f8736a828175107bb62cdce518877ca2d469", 
            "02f92c351d9ab5b767372e56f5305e5d6465adfdc43d48c7fc79d70d2f1870a4ae", 
            "026051605e04e6e77a313e732fc3effb49b61ff48d418d9f9973abf09ac8fd49a8", 
            "02ce0a7fcbdd95617c53cf78b8e23b89f16697eea6d8fa9f45967fc75385a61251", 
            "02484f95767025a3f68c35d54327b3aa402956bac41fd4d332f1967ac5b78ccf26", 
            "021f5ae91d2f079e187147f830d67364f6dc0c8f87770bbe9d900090a4a1bf4f6d", 
            "0322bfe0fd1fb863db06b623e02e8ebfa9a7a482187058f11b6edb87d57d6e8795", 
            "036628137f1fd7524f2df0b277b38acc8d411b9f0a83ad5fea7abc9b44962f82c1", 
            "025f3df84f9a57ba869f4a7551a42f85d47c41a846a739bdb310dc698a10c5bdd9", 
            "03915034b3385619d089e0f79398150400e7d95c66c04736c3c7d86b30cc0f32e1", 
            "0292809ec8329c2a9e6713abd86ac21015d8c1aa88bce4c8f6cc35820a84118e86", 
            "034bcfdb905b648a6ab91934a750fa95fc867861b07c1dcd93338cb940fe549109", 
            "025e837db738bcf4b71e9ff0b89ad40aac1708a01cacfdf25ca4c1eb9e315fc6fb", 
            "0224cf18272185aa8b2b874991dbab9ff4aa4e852db1c433b061bc3711720c101c", 
            "03244d760052b63f5d1b9c2ef91c1de3129c1e6891b89338b8b94286a4a0838e2f", 
            "0343b01924291e500bba3e91a6abf38f82d79544041bd27ee396ddef600ab33733", 
            "02dbc1a74a833ad12a81c444f380a73f4d4e0de5ab2a1b3615087459e9b8f20d63"
        ], 
        "xpub": "xpub661MyMwAqRbcH1K9QpGXUd7eYZrBG6CLbX9BCHGAAzmzsZuoVUJnf7Np1YKfsUJeHBYjtzeiF8kTb6bMuwpzEWZTGKqy8aYexGRbgZpNVr2"
    }
}, 
"accounts_expanded": {}, 
"complete": false, 
"hex": "0100000001c018840cecec1f65513d94f4e9bfb8a7aec21574125afb3048395da7726669cb00000000fd1f010001ff48304502205288545a8d085b0d90b1dde35f35dc60fd6b76d9f6783d4978bf762d82a691d5022100a4ab1120b9b807b7b8f800ab1433e77dda4d2c15693dcd859eacb2d0b12dde9f0101ff4ccf524c53ff0488b21e000000000000000000c7199fbbb5daced430a6a28eb4ca978fd81858e0c32a989d4819f2c507dd9c9f020ddbada85a2cfc7ef703309697f256efa65f5f2869c6688cb326440fc9b6bdd2000000002102c03b5bc0131050d7c32d8510acb5a422322f2c3a16c750a19919585b71cab7e84c53ff0488b21e000000000000000000a72db1469c5bcea1c2c1fd15a4c1728a98a28773b31c3d2d74a14d8585ccccee03537d6356f4c1e03a45288dab0d860fc4ef216e0c24107625a8a44cab445d19740000000053aeffffffff011eb30b00000000001976a91445833b9609c4827b00928c8eb3426d7c65c4801188ac00000000", 
"master_private_keys": {
    "x/": "rTbBVcsV96y5xQTClUMw5QG0rpHgyYXvuIlMhtPy/RoHMc9h6EVGg5LkVHmlH0ruTNfmUldoXzVOiqZ/88nqX5QP5KyJG7I1tYj4NPyM+S32OmufUkYm2FhzjGTdcbI84sY0qszotHaP0h57kpJ9wRumlfBOUeYDqHtw8hhuQug="
}, 
"master_public_keys": {
    "x/": "xpub661MyMwAqRbcH1K9QpGXUd7eYZrBG6CLbX9BCHGAAzmzsZuoVUJnf7Np1YKfsUJeHBYjtzeiF8kTb6bMuwpzEWZTGKqy8aYexGRbgZpNVr2"
}, 
"seed": "UDAV9I8RSHI40GSQqec2aWgfWn6yg1+G6pzBOga2LKMVb0HY5XXVuEQdkN3EJRewl5U7RGrCdcj0RYGJnqcQoGm+3f5GRh2+WYMTcERzeBPhnjpuKQIzvbY3i+pb+TwnEbrkc4Q0LPEvAv2e1mAelA==", 
"seed_version": 11, 
"use_encryption": true, 
"wallet_type": "standard"
}

For whoever wants to complete the $2 tx to Erowid.

Edit: forgot I had to include one of the wallets seed.


[1 Points] millifatz:

Thanks. I haven't done one yet and I quickly skimmed this. Is it possible for a market to fake a multi-sig and would the buyer and seller notice immediately?


[1 Points] TotesMessenger:

This thread has been linked to from another place on reddit.

If you follow any of the above links, respect the rules of reddit and don't vote. (Info / Contact)


[1 Points] Fr0styXT:

Thank you! Extremely helpful. UP VOTE!


[1 Points] ShulginsCat:

Copy your master public seed [..] Take care not to share your seed

Probably better to just say "copy your master public key"


[1 Points] Anti-Hero_AU:

Step 11/12 in the Buyers:-

I can't connect with these settings; light stays red. I have TBB is running. WTF???

Anyone help there please?


[1 Points] Anti-Hero_AU:

Should read:

Thanks for the guide man!


[1 Points] midnightketoker:

I've been doing some reading on 2 of 3 multisig and it looks like the way to go. Now the problem with implementing it on marketplaces is that it necessitates a centralized 3rd party to the buyer-vendor relationship. And I'm fine with that, given the obvious pitfalls of 2 of 2 and the ever present need for some third party escrow and dispute resolution.

But of course the point of failure in 2 of 3 is that if the "trusted" third party is in any way in league with one other party, they can both abscond with the funds. And this scares me because like any other exit-scamming market even if you start out with the best intentions, at the end of the day there will be opportunity to steal from the point of view of the centralized authority. This is why Bitcoin itself is built on the theoretical holy grail of a decentralized peer-to-peer economy, but of course also the reason we need dispute resolution in markets given the "no-refund" character inherent to the process.

So a lot of people are saying that there will be Tor services that are going to start acting like "Bitrated" style hubs for trusted third party arbitrators, that way future markets will never have the authority or the central control of escrow, disputes, and vendor wallets. I'm wondering though, is this the best that we can do, just spring up more services that are feedback-dependent as trusted parties to multisig transactions? Or is there another way to use crypto magic or something to securely decentralize this process further and make transactions more friendly for vendors and fair to customers alike? Just spinning my gears here but I think there's a lot of room for innovation at this stage and I'd love to be a part of it any way I could (yeah this feels totally legal).


[1 Points] None:

[deleted]


[1 Points] youtakesally:

  1. When the vendor signs a tx and sends the text to the buyer, could the buyer somehow extract the vendor's private key from it and sign a transaction to benefit himself?

  2. If vendor and buyer agree, they could easily skip the part of paying the market, right?


[1 Points] dreyfuster:

I'm new to multisig, but under the assumption that it is similar in idea to a group wallet, couldn't a DNM force a 4-key multisig with 2-key authorization, and utilize their own two keys? I apologize for my ignorance if this is not the case.


[1 Points] buggaboooo:

Area's I'm a little foggy in:

Buyer Section

8: I'm sharing what's in the top box, right? How do you share with the vendor..PM? How do you share to the market?

9: ow do I then "gather" the keys?


[1 Points] None:

[deleted]