【问题标题】:ELROND: Access to read function of a smart contractELROND:访问智能合约的读取功能
【发布时间】:2022-11-29 03:13:48
【问题描述】:

我寻找一种方法来查找 Elrond 区块链上智能合约的视图功能并与之交互。

我有很多问题:

  1. 如何逆向一个wasm智能合约文件?
  2. 如何获取智能合约的abi.json?
  3. 如何获取智能合约的get/view函数?
  4. 如何调用智能合约的get/view函数(Javascript示例代码)?

    就像在 EtherScan 中一样:

    我目前正在阅读 Elrond Developers 的所有文档,所以请不要收到“RTFM”消息 :)

    谢谢 !

【问题讨论】:

    标签: webassembly abi elrond


    【解决方案1】:

    据我所知,除非您可以访问其源代码,否则无法计算合约的 ABI。

    您可以在某种程度上对合约的 WASM 文件进行逆向工程:

    复制 WASM 代码并将其从十六进制转换为二进制(使用 http://tomeko.net/online_tools/hex_to_file.php?lang=en 等工具)。
    然后,下载二进制文件并上传到另一个工具将 WASM 转换为 WAT(例如 https://webassembly.github.io/wabt/demo/wasm2wat/
    然后,您可以在您喜欢的编辑器中复制生成的代码,并查找如下所示的行:
    (func $addLiquidity (export "addLiquidity") (type $t1)
    这表明该合约有一个名为“addLiquidity”的端点,但我不确定您是否可以提取更多信息。

    如果您有权访问 ABI,则可以使用 https://www.elrond-sc.com/ 、erdjs 或 erdpy 与其视图和端点进行交互。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-12
      • 2023-01-26
      • 2021-08-28
      • 2018-09-23
      • 1970-01-01
      • 1970-01-01
      • 2018-12-07
      相关资源
      最近更新 更多