两步下载链上部署的合约源码!

xiang
发布于 阅读 1005

众所周知,自古以来,;D 部署到链上的合约都是开源的,aptos cli 最近的更新也支持了下载链上源码的功能(v0.3.3)。

比如说我最近在研究 liquidswap,但是这项目代码在 github 没开源。。。 从 https://app.liquidswap.com/ 网站的一些 http 请求可以知道这个合约部署在地址 0x43417434fd869edee76cca2a4d2301e528a1551b1d719b75c350c3c97d15b8b9 下面,所以先执行第一步,看看这个地址下都部署了哪些合约:

aptos move list --account 0x43417434fd869edee76cca2a4d2301e528a1551b1d719b75c350c3c97d15b8b9  --url https://fullnode.devnet.aptoslabs.com

# result
package UQ64x64
  upgrade_policy: compatible
  upgrade_number: 0
  source_digest: 3E107783DF067766188A95F7E8F80002B364077B57291C5818AFCB54120CCB67
  modules: uq64x64
package U256
  upgrade_policy: compatible
  upgrade_number: 0
  source_digest: 2A13EB7BEB19A8896CC65007B008AF86F92D9644B9538B7673003FE64D604CCC
  modules: u256
package Liquidswap
  upgrade_policy: compatible
  upgrade_number: 0
  source_digest: D4BFA28D9C31CEEB4670466BD924C3A63A935484EEDD0E85A7A600B880A7B005
  modules: coin_helper, dao_storage, emergency, stable_curve, math, liquidity_pool, router, scripts
package LiquidswapLP
  upgrade_policy: immutable
  upgrade_number: 0
  source_digest: 178CA71442A497AECA992E835026D13D28AC33DF3112D46AC792E0A7C83F6E5F
  modules: lp, coins, coins_extended
package faucet
  upgrade_policy: compatible
  upgrade_number: 0
  source_digest: 35EE347362A24448C0A4F8594B3AE4D2BF909CDD20168857F24B2725A7543045
  modules: faucet
{
  "Result": "list succeeded"
}

想看下 Liquidswap 包的代码,执行命令:

aptos move download --url https://fullnode.devnet.aptoslabs.com  --account 0x43417434fd869edee76cca2a4d2301e528a1551b1d719b75c350c3c97d15b8b9 --output-dir Liquidswap --package Liquidswap

# result
Saved package with 8 module(s) to `Liquidswap/Liquidswap`
{
  "Result": "Download succeeded"
}

整个合约项目都下载到 Liquidswap 目录下了。

标签: Aptos #Aptos
2条评论
0x<b>_<b>
为什么有些项目下载下来的代码是空的
点赞
评论
greyireland
greyireland
所有的合约都可以下载源码吗?
点赞
评论
xiang
是的
点赞
评论