0

我正在尝试验证实现智能合约,但是我收到以下错误,它是使用 hardhat deployProxy 部署的,所有 3 个合约都已部署并且工作正常。

来自 etherscan 的屏幕截图

我做了什么:

  1. 部署后,我将 .sol 文件复制粘贴到 Remix,在其中将文件展平,然后将粘贴复制到 etherscan 并在顶部添加 // SPDX-License-Identifier: MIT,因为如果我不这样做会收到错误消息t,说没找到。
  2. 填写设置,优化200次运行,0.8.2编译器,MIT许可
  3. 单击验证并收到错误...

我检查过的内容:

  1. 这里的代码https://etherscan.io/address/0xb6450c438d7e68be1f1c4534a8a354bf3d85c72e#code与“deployedBytecode”相同:来自 artifacts/contract/json 文件。
  2. 来自 etherscan 编译器输出的代码“字节码(我们正在寻找的)与上面相同 json 文件中的“字节码”相同,除了它在末尾有这个额外的 a26469706673582212208fd45fec4fd2404bbdee05ddd55fd9b30a80a5c1b9d089bf70b72b2338437c3506408026c35064080263
  3. 来自 etherscan 编译器的字节码“- vs 我们得到的 -”#2 在上面提到的 json 文件中找不到,来自安全帽项目中的工件。

额外信息:

我尝试使用 etherscan-verify 进行验证,但是我在控制台中收到错误消息,说“你是否更改了智能合约中的任何文件,错误的字节码”,我不记得确切,我愿意手动验证明显地!

非常感谢你!

4

1 回答 1

0

问题是我使用了错误的地址,而不是使用实现合同地址,我使用的是透明代理地址,你用来与 dapp 集成的地址......

于 2022-02-17T11:47:25.260 回答