Oracles

保存 Oraclize 證明

  • December 18, 2017

如何保存 Oraclize 返回的“base58-decoded IPFS multihash”(在proof參數中)?

function __callback(bytes32 myid, string result, bytes proof)

你能安全地轉換proof為 bytes32,並將其保存在合約中嗎?

從文件中:

If instead oraclize_setProof(proofType_TLSNotary | proofStorage_IPFS) is used, then Oraclize will return only the base58-decoded IPFS multihash as the proof argument. To obtain the IPFS multihash, the bytes must be encoded to base58.

我想您是在談論僅將證明字節儲存在契約中?您可以在發送時將其簡單地儲存為字節類型。雖然,將其儲存在合約中可能沒有多大用處,除非您正在尋找其他合約來使用它,例如將其與:https ://github.com/MrChico/verifyIPFS

但是,如果您希望最終使用者能夠自己檢查 IPFS 多重雜湊,通過下載然後通過 Oraclize 證明驗證工具執行它,最好的方法是發出它的事件,然後在您的前端/UI base58 中對證明參數進行編碼,它應該會產生可用於從 IPFS 下載它的多重雜湊。

引用自:https://ethereum.stackexchange.com/questions/33517