区块链交易所搭建,区块链的智能合约怎样导入外部数据?

问题问得很内行区块链交易所搭建。

导入外部数据一直是区块链的一个大难点。

首先导入外部数据对很多应用来说都是非常必要的。举一个简单的例子。世界杯快要开场了,有人准备在区块链上搭建一个赌球应用。赔率设定、购买筹码、下注都可以在链上进行,但是输赢的结算就必须要用到外部数据了。

明白导入外部数据的重要性,那么导入外部数据又有什么困难呢?

区块链崇尚去中心化,希望能建立一个不需要信任任何参与者,又能保证公正高效运作的系统。

如果外部数据全权由应用的搭建者输入,那么就必须要完全信任这个搭建者了。

比如说刚才所说的赌球应用。如果这个搭建者自己也参与到赌局里面,还赌输了,他一定不会把正确的赛果录入到系统中的。

另外一个难点在于使用区块链的成本很高。

举另外一个例子——MakerDao,这个系统用抵押的方式产生与美元等值的数字货币。当抵押的资产跌破爆仓线时候,要被拿来拍卖。但是什么时候算是跌破爆仓线呢?这时候就需要抵押资产的实时市场价格了。

最公正的方法是让所有人都有权输入数据,取这些数字的中值作为系统认可值。并且惩罚报的数远离系统认可值的用户,以此激励用户正确汇报。以这种方式,需要作恶的人数多于行善的人数,才可能影响系统认可值。

但是MakerDao没有采用这种方式。为什么?因为成本高的惊人。

每一次在以太坊上记录一个数据,大概需要花费0.5美元。如果输入数据的人数有1000人,并且以每秒一次的频率记录,一年下来的成本是0.5*1000*60*60*24*365 美元 = 一百五十多亿美元。

实际上MakerDao采用的解决方案,是这个版本的妥协版。

把输入数据的权力交给10个左右的交易所,让交易所在资产价格变动超过1%的时候告知系统。如果交易所们能够诚实告知系统,数据应该会相对准确。

设定一段时间内资产价格的最大变动幅度,那么即使其中一个交易所想说谎,或者被黑,也无法瞬间修改系统数据。

而且MakerDao的股东们,通过持MakerDao的数字货币的比例,有权力取消或者增加某个交易所的数据输入权力。

2022-06-11

2022-06-11