智能合约可以访问其他区块链的数据吗?

问题描述

假设我创建了一个 erc20 令牌。现在我想制作一个智能合约,如果用户在另一个区块链(如比特币)上有 X 个硬币,则向用户发送 1 个硬币。那行得通吗?我可以使用cardano/ethereum/任何其他智能合约从其他区块链读取数据吗?

解决方法

有一些桥接应用程序允许您执行跨链操作(主要由交易所运行)。但这些是在不同的层上运行的,与智能合约无关。


如果您想严格遵守智能合约,您所要求的内容是不可能的。

但是,您可以使用 oracle 模式。创建一个链下应用程序(oracle)来监听从你的合约到特定地址的交易。每笔交易(从您的合约到目标地址)都会在链下应用程序中触发一个操作——例如读取比特币数据。然后预言机向您的智能合约发送另一笔交易,将链下数据传递给它。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...