top | item 10649605

The state of Bitcoin multisig

47 points| alcio | 10 years ago |medium.com | reply

13 comments

order
[+] wslh|10 years ago|reply
There is an important part of the multisig puzzle missing in the article: the need for an out of band protocol to communicate copayers for joining a wallet and spending bitcoins. This is something that Copay (https://copay.io) does but there is no standard way to do this.

There are other issues. For example, Coinbase doesn't support it fully. See this thread for more info: https://twitter.com/coinfabrik/status/661992065841123328 but other wallet services like Coinkite does: http://blog.coinfabrik.com/independently-generating-your-pri...

[+] martindale|10 years ago|reply
Former employee at BitPay (maker of Copay) here. There were indeed discussions about standardizing the out-of-band protocol, and I hope something comes of it soon. It'd be huge for the ecosystem.
[+] kang|10 years ago|reply
I haven't read how the wallets are implementing multisig but what is this out-of-band protocol you are talking about?

If I want to spend coins from a multisig address, I create a transaction, sign it with my key and send it to the other party who can sign it and relay it or send it back to me and I can relay it. It's a very simple protocol.

[+] kushti|10 years ago|reply
Two cents from an apps developer: few months ago I've implemented multisig on top of BitcoinJ(generic signing code providing a signature dependless on current state of a partially signed transaction). The experience was truly horrible. Bitcoin documentation is a mess, BitcoinJ documentation is also outdated, so finally I investigated BitcoinJ source code pretty deeply to go forward.
[+] statoshi|10 years ago|reply
BitcoinJ is no frills and unfortunately doesn't have much development manpower despite its popularity. I'm actually in the midst of trying to debug an edge case issue I'm hitting within BitcoinJ itself.
[+] kang|10 years ago|reply
I certainly hope you'll submit a patch to this open-source project so that others don't have to face the same problems.