Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can anyone explain why one would want to do multisig in a smart contract? Can't you split your keys offline? (This is how one would do multisig in Bitcoin, for example).


Multisig can be a nice compromise between security and convenience. There is a service that allows you to store Bitcoins in a 2 of 3 multisig address where you control two keys (one in offline wallet one in hot wallet) and the service has one key. When you do a transaction they send you one time code (SMS or something like that) if you respond they sign the transaction. So to spend you need to receive their code and your own key. This is kind of 2FA. If the service disappears you can take your offline wallet key together with your hot wallet key to unlock funds.

Sadly I forgot the service name :(


Multisig is implemented using smart contracts on Bitcoin as well. That's what P2SH is.

Or you could use secret sharing for BTC or Eth, but people tend not to.


Perhaps you _can_ do it that way, but you can also just use m-of-n cryptography (e.g. Shamir's Secret Sharing Scheme) to split your private key.

See http://docs.electrum.org/en/latest/multisig.html for an example, and https://en.bitcoin.it/wiki/Multisignature for more background (including links to SSSS).

You don't need a smart contract to achieve this. I suppose it's more convenient since your co-signers can just submit their M signatures onto the blockchain, instead of having to collaborate offline to generate a valid signed block.

But putting the multisig logic into a smart contract is quite obviously not fail-safe, as these vulnerabilities show.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: