Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Geremia on September 13, 2014, 08:33:36 PM



Title: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: Geremia on September 13, 2014, 08:33:36 PM
How would I implement Shamir's Secret Sharing Scheme (http://point-at-infinity.org/ssss/) with an encrypted Bitcoin wallet?


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: andytoshi on September 13, 2014, 08:50:38 PM
What are you trying to do?


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: Geremia on September 15, 2014, 03:40:45 PM
What are you trying to do?
Split up the encrypted wallet's private key with ssss and distribute it to several people. Basically, I want multiple people to have to consent to a BTC transaction before the wallet is unlocked. Capisci?


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: andytoshi on September 15, 2014, 07:18:44 PM
Then use multisignature transactions. SSSS is inappropriate because the secret dealer has access the entire key, and once all parties recreate the full key any one of them can do anything at all, they do not need to agree, just race each other.


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: laurentmt on September 15, 2014, 08:26:51 PM
What are you trying to do?
Split up the encrypted wallet's private key with ssss and distribute it to several people. Basically, I want multiple people to have to consent to a BTC transaction before the wallet is unlocked. Capisci?
You may be interested by another multisig schema proposed by @oleganza and called Blind signatures (http://blog.oleganza.com/post/77474860538/blind-signatures).
Hope it helps.


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: andytoshi on September 16, 2014, 12:13:15 AM
What are you trying to do?
Split up the encrypted wallet's private key with ssss and distribute it to several people. Basically, I want multiple people to have to consent to a BTC transaction before the wallet is unlocked. Capisci?
You may be interested by another multisig schema proposed by @oleganza and called Blind signatures (http://blog.oleganza.com/post/77474860538/blind-signatures).
Hope it helps.

Oleg's scheme is also inappropriate because it gives no ability to the blindsigner to check what he is signing. (And if you give him enough information to verify this, he'll have enough information to sign anything he wants, so again you fail to have a threshold consent scheme.)


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: laurentmt on September 16, 2014, 11:12:03 AM
Oleg's scheme is also inappropriate because it gives no ability to the blindsigner to check what he is signing. (And if you give him enough information to verify this, he'll have enough information to sign anything he wants, so again you fail to have a threshold consent scheme.)
Sure. Blinded content to be signed introduces a risk. Imho, Oleg's scheme can be useful if you know the signers and can communicate with them on a second channel (bitmessage, ...) in order to confirm your request for a signature and to "validate" (at least weakly) the content to be signed.

Another point : The scheme is asymmetric by design (coins owned by 1 user and secured by n signers). Don't know if it matches with OP's needs.


Title: Re: Implementing Secret Sharing with an Encrypted Bitcoin Wallet
Post by: Geremia on October 08, 2014, 05:23:56 PM
What are you trying to do?
Split up the encrypted wallet's private key with ssss and distribute it to several people. Basically, I want multiple people to have to consent to a BTC transaction before the wallet is unlocked. Capisci?
You may be interested by another multisig schema proposed by @oleganza and called Blind signatures (http://blog.oleganza.com/post/77474860538/blind-signatures).
Hope it helps.
interesting
thanks
I'll take a look.