codius-deprecated / codius

Repository for general information about the Codius system.
292 stars 29 forks source link

Ideas for storing secret keys with obfuscation on the smart contracts #9

Closed tuloski closed 6 years ago

tuloski commented 6 years ago

Hi guys, I'm interested in the details on how you can store obfuscated secret keys on decentralized contracts. I think it's a huge unsolved problem in cryptography and I'd like to hear your ideas and if you have some documentation to read and/or explain the problems behind it.

justmoon commented 6 years ago

In Codius, each host is separate, so keys are private by default. The way that a group of hosts would act together is using multi-signature or threshold signature techniques. So we don't need any obfuscation or complex zero-knowledge techniques.

tuloski commented 6 years ago

I'm a bit ignorant on this topic. As example, let's suppose that my contract has to interact with a BTC wallet. I see 2 cases: the BTC wallet is created by the contract "owner" and should be known only to him or the contract itself has to create a bitcoin wallet and the secret shouldn't be know to anyone. With multi-signature or threshold signature do you mean that each host has a "fraction" of the BTC secret and only together they can unlock it?

Probably the secrets I was talking about are different from the secrets you meant...

sharafian commented 6 years ago

Correct, the contract will generate the secret itself or many contracts will generate keys and use them for a multisign/threshold. You can use that to control cryptocurrency funds or you can use it in any other scenario where a secret value is required.