为什么采用 Web Oracles,区块链交互通信,计划任务和随机性问题 — — 以及 DAPP 网络可以如何提供帮助
区块链对外面的世界是完全看不见的。 这是一个功能,而不是一个缺陷。
可预见性是区块链运作的核心。一切都必须是可预测的。
毕竟,区块链系统的一个核心点是每个人都可以验证正在生产的区块。但是,来自互联网和其它区块链的大多数数据基本上是随机的,每个时刻都在变动。数据点频繁变化,趋势发生变化,网站有时也会出现故障。某些资源甚至可能在验证者的区域中完全不可用。
如果涉及来自互联网或其它区块链的数据,验证者检查交易时可能获得与区块生成者不同的数据。验证的节点肯定不希望与区块生产者在相同的确切时间和位置查询网络资源!
由于在区块链上运行的代码必须是确定性的 — — 完全可预测的 — — 您不能从智能合约中调用任何离线信息源。 在处理交易以添加到区块链时,所有数据必须是已经确定的。
智能合约不能看到任何链下数据。
我们如何以高效,去中心化的方式解决这个 oracle 问题? 目前为止,有两种主要解决方案:
1.应用程序可以构建自己的预言机 — — 连接器为合约提供信息,信息收集于互联网。这需要信任应用程序团队和 oracle 代码。许多 dApp 团队的经济利益可能在于他们自己的系统,无论是随着时间的推移还是一次性不知不觉地执行退出骗局。
2.或者,应用程序可以依赖第三方预言机服务。但是,如果 dApp 增长到很大的规模或有竞争对手,这可能是一个问题。预言机服务内部或熟悉中间人攻击的人可能希望改变对他们有利的数据并从 dApp 窃取资金。
连接到预言机的短缺并不是 dApp 开发人员面临的唯一限制。
第二个问题是计划任务。 EOS 的延期交易无法保证运行。
为了适应这种情况,dApp 通常利用服务器 CRON 作业来处理基本操作。或者,它们允许用户选择在失败时触发这些操作。毋庸置疑,集中式服务器的可靠性并不能保证,给用户及其资源带来的额外负担也并不理想。
还有一个问题是随机数。 出于同样的原因,区块链无法从互联网或其他区块链获取外部数据,它们不能简单地获得随机数,因为智能合约代码执行的结果必须是完全可预测的。
涉及多方秘密的复杂解决方案已成为寻求无信任随机性合约的标准。但是这些解决方案不是轻量级的,也不容易安全地实现。由于攻击者学会了如何预测 dApp 的随机数生成,因此已有多个 dApp 遭到攻击并从中偷走了资金。
借助 DAPP 网络的新功能,DAPP 服务提供商( DSP )现在可以为所有这些问题提供去中心化解决方案。 LiquidApps 刚刚向 DAPP 网络引入了网络预言机,IBC / XIBC 预言机,CRON 和随机服务。DSP 现在可以提供这些服务 — — 而 dApp,用户和 watchdogs 可以验证 DSP 是否诚实。
让我们以网络预言机的 DSP 解决方案为例: 1.您选择的 DAPP 服务提供商会获取所需的信息并将其提供给您。
2.同时,您自己的内部 DSP 获得相同的信息。
3.在链上比较结果。
4.如果一个第三方 DSP 提供可疑的信息,您将不再信任该 DSP,尤其是如果该问题是反复发生的话。
5.如果所有 DSP 都提供可疑的信息,则怀疑这些 DSP 是否存在共谋。这是一种不太可能的情况 — — 特别是因为 DAPP 网络的权益机制在经济上是激励 DSP 诚实的。但是它是可检测的,这意味着即使所有 DSP 都是不诚实的,您的 dApp 也可以阻止这些群体操纵系统。
现在可以无信任地从互联网上检索数据。
通过新的 Chain Oracle XIBC 选项 — — 单向跨链通信 — — DAPP 网络上的 DSP 也可以提供来自其他区块链的信息。 Chain Oracle XIBC 已成功从比特币,以太坊,Tron,Cardano,Litecoin 和比特币现金读取信息。单向 IBC 可以读取 Telos,WORBLI,Meet.one ,BOS 和 Kylin testnet。这些只是开始,因为这项服务可能会从更多的区块链中读取信息。
如果 DSP 开始提供 IBC 和 XIBC 服务,并且 dApp 开始使用它们,我们可以看到区块链交互通信的革命,EOS 可以访问全部其他区块链,无论它们是否在 EOSIO 上运行。
LiquidApps 认为这只是第一步。社区现在可以构建更强大的区块链交互通信,包括对其他区块链的无信任验证等。
区块链默认对外界是看不见的,甚至是其他区块链,但通过 LiquidApps 的 DAPP 网络,EOS dApp 现在可以看到了。
点击这里和我们联系
所有这些意味着 EOS 智能合约可以快速直接地访问如下信息: *任何可通过 HTTPS 检索的内容。智能合约现在可以安全地“看到”互联网!
*以太坊区块链(或比特币,Ripple,比特币现金,Cardano 等等)的交易
*Wolfram Alpha 数据,如物体的尺寸和重量,体育数字,社会科学统计数据,甚至是字谜列表和彩票赔率
随机数
*预定和定期交易
*重要提示:当前的 DAPP 网络随机数生成版本仍需要一个可信任的 oracle。建议生成应用程序使用加密 DSP 随机数提交的代码。
虽然 vRAM 是 DAPP 网络推出的产品,而 vAccounts 可以为推广采用这一主要挑战提供解决方案,但它们只是一个开始。现在,DAPP 服务提供商可以提供更多的无信任访问。
DSP 服务包可以实现具有传统应用程序所有主要功能的全能 dApp,同时消除腐败,审查,共谋和胁迫的许多可能。
现在有许多 DAPP 网络服务的潜在组合。以下是一些想法: 定价服务可以检索 BTC / EOS 价格并将其存储在 vRAM 中,从而创建安全存储但价格低廉且反应灵敏的价格历史记录。
来自不同 DSP 的价格可能略有不同,因为访问时间不会完全同步,但可以在适当的时候验证它们在可接受的容差水平内和 /或平均值。 (使用的服务:CRON,区块链 Oracle,IPFS / vRAM )
dApp 可以在每次用户操作时重置 2 分钟的计时器。
只要用户继续使用 dApp,常规 RAM 有被使用,从而实现最小延迟。但是当用户空闲 2 分钟时,数据会移出到 vRAM — — 在用户可用性和开发人员经济性之间取得平衡。 (使用的服务:CRON,IPFS / vRAM )
PvP trivia game 可以创建多选时间限制问题。
这些问题是对从 vRAM 加载的模板创建的 Wolfram Alpha 半随机查询的 OCR 抗性图像(如果它们引起玩家的双边投诉,则进行算法精炼或丢弃),从而产生一系列问题,如:
*侏罗纪时期有多长?
*2005 年阿根廷的贷款利率是多少?
*1000 英尺的海洋温度是多少?
*Bram Stoker ’ s Dracula 导演的诞生地是什么?
然后,第一时间回答的获胜者通过 vAccounts 产生,以便他们可以领取奖品。 (使用的服务:随机性,Wolfram Alpha,IPFS / vRAM,vAccounts )
上面提到的更具欺骗性的变化可以提供预测市场。
有效的问题是 Wolfram Alpha 将来能够回答的问题。
*谁是印度的统治者? (于 2019 年 5 月 30 日查询)
*2019 年华盛顿特区的平均气温是多少? (于 2020 年 1 月 1 日查询)
*Mike Trout 2019 年的击球率是多少? (于 2019 年 10 月 1 日查询)
有关预测的数据不需要在 RAM 中保留数月或数年,但可以放到 vRAM,其完整性的加密证据保留在链上。 (使用的服务:Wolfram Alpha,CRON )
通过 DAPP 网络打开视界,现在可以看到智能合约了。
我们在上面说过,“你不能在智能合约中调用一个预言机,和任何链下信息。”但实际上,DAPP 网络使这成为可能。 你仍然无法从技术上直接从智能合约中调用预言机:EOSIO 会出现错误。但是,现在,支持 DSP 的 EOS 端点可以将这些错误识别为请求,使用信息完成请求,并使用所有信息重新提交交易。
DAPP 网络提出了解决 RAM 堵塞和帐户创建困难的解决方案 — — 现在它还通过启用区块链未知的分布式层,为网络预言机,区块链预言机,随机性和计划任务引入了解决方案,将其功能无缝集成到 dApp 合同中。
我们在 LiquidApps 设想程序员和最终用户会使用这些功能,就好像它们是 EOS 平台的自然和不可分割的一部分。
访问 liquidapps.io 了解更多信息或开启一个您自己的 DSP。
加入 [ LiquidApps 中文电报群] ( https://t.me/LiquidApps_community_China ),了解 LiquidApps 项目及空投的最新进展。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.