【发布时间】:2021-07-22 01:14:00
【问题描述】:
我们的想法是使用像 Chainlink 这样的区块链 Oracle,以一种分布式方式从 Solidity 智能合约中检索存在、字节大小和文件格式:
存储在 IPFS 上的图像示例:https://ipfs.io/ipfs/QmYjh5NsDc6LwU3394NbB42WpQbGVsueVSBmod5WACvpte
import "@chainlink/contracts/src/v***/IPFSConsumer.sol";
contract VerifyFile is IPFSConsumer {
// hashIPFS: QmYjh5NsDc6LwU3394NbB42WpQbGVsueVSBmod5WACvpte
function verify(bytes32 hashIPFS) public returns (bool, uint256, string) {
bytes32 requestId = IPFSmetadata(hashIPFS);
// ... fulfill request with requestId
}
}
或
import "@chainlink/contracts/src/v***/IPFSInterface.sol";
contract VerifyFile {
IPFSInterface internal IPFSmetadata
// hashIPFS: QmYjh5NsDc6LwU3394NbB42WpQbGVsueVSBmod5WACvpte
function verify(bytes32 hashIPFS) public returns (bool, uint256, string) {
(bool exists, uint256 size, string format) = IPFSmetadata.fromHash(hashIPFS);
return ...
}
}
【问题讨论】:
标签: blockchain ethereum ipfs chainlink