首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与智能合同的安全通信(例如HTTPS)如何工作?

与智能合同的安全通信(例如HTTPS)如何工作?
EN

Ethereum用户
提问于 2017-07-29 18:42:14
回答 1查看 151关注 0票数 0

我正在制定一份明智的合同来经营一场公平的彩票游戏。获胜者是通过随机数产生的方式选择的。当前的计划是从oracle源获取随机数。然而,这让我怀疑--甲骨文是如何安全地将数字传递给区块链的?

因为智能契约中的所有内容都是可见的(就像存储在HTML文件中的任何东西),如果没有可见的私钥,它们就无法持有私钥,所以任何公钥加密都不再安全?因此,您如何知道外部生成的随机数已安全地发送到您的智能契约,而没有被截获和更改?突然想到的场景是,当随机数被提交给区块链时,但是矿工可能会拒绝它,如果它没有为他们带来胜利(推荐使用外部随机数生成器的相同原因)。那么它是如何安全地发生的呢?

任何想法/解释/指导都会很棒!

EN

回答 1

Ethereum用户

发布于 2017-07-29 19:41:22

正如你正确指出的那样,一般来说,你不能公开地传递秘密,因为它们很快就会公诸于众。

我要抛开随机性来源的问题,因为这本身就是一个复杂的谜题。此外,矿商忽视让他们输掉这场比赛的交易的问题,可能会在共识层面得到更直接的解决。

关于你的“秘密”传输,这里有一个想法值得考虑。

您可以安全地传输一个秘密的散列,您可以通过生成一个数据集,正确地散列到合同中的值,让索赔人证明他们知道这个秘密。一旦使用,您将需要小心,以确保相同的秘密不再被使用,因为它将被揭露。

希望能帮上忙。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/23287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档