7

关于智能合约如何从链外调用数据的问题

 3 years ago
source link: https://learnblockchain.cn/question/1769
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

关于智能合约如何从链外调用数据的问题

我们在编写 solidity 代码的时候经常需要传入参数,但如果某个参数需要从链外某个可信信源(哪怕它是中心化的)去读取,而不允许合约的调用者自己随意传入,应当如何实现呢?

一个比较常见的场景是预言机,其实也包括了从任何传统信源取得信息的情况。举个最简单的例子,我的合约里定义了一个 uint a,某个方法 function changeA()的功能,就是把 a 改为中央气象台公布的本日的北京市气温(这个数据是开源的和易见的),该如何实现呢?

最佳答案 16小时前

一个方式是只有可信的地址,才能提交信息。

一个方式引入经济模型来解决,例如提交信息的时候,需要质押一些币, 来保证数据的正确性,如果被人挑战,就会被罚款。

Tiny熊 - 布道者
擅长:智能合约,以太坊 | 采纳率 46% | 回答于 2天前

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK