Blockchain 如何在没有错误的情况下验证智能合约?

Blockchain 如何在没有错误的情况下验证智能合约?,blockchain,ethereum,smartcontracts,truffle,ico,Blockchain,Ethereum,Smartcontracts,Truffle,Ico,我在3个月前部署了一个以太坊智能合约,我保留了原始源代码,并试图在今天验证它,但未能成功。它总是告诉我‘对不起!“hahaCoin”的已编译合同字节码与“合同创建代码”不匹配 我还在ropsten testnet上部署了一个具有相同代码的新版本,并且能够在下一分钟进行验证。在这个阶段,我猜这是因为编译器版本不匹配,所以我最终从列表中逐个尝试编译器,并复制源字节代码与正确的代码进行比较。我记不起我使用的编译器版本了,因为我使用的是在线remix solidity IDE来发布我的合同 以下是我复制

我在3个月前部署了一个以太坊智能合约,我保留了原始源代码,并试图在今天验证它,但未能成功。它总是告诉我‘对不起!“hahaCoin”的已编译合同字节码与“合同创建代码”不匹配

我还在ropsten testnet上部署了一个具有相同代码的新版本,并且能够在下一分钟进行验证。在这个阶段,我猜这是因为编译器版本不匹配,所以我最终从列表中逐个尝试编译器,并复制源字节代码与正确的代码进行比较。我记不起我使用的编译器版本了,因为我使用的是在线remix solidity IDE来发布我的合同

以下是我复制的一些字节码:

correct:
608060405234801561001057600080fd5b50604051604080611d2d8339810180604052810190808051906020019092919080519060200190929190505050336000806101000a81548173ffff
0.4.23
608060405234801561001057600080fd5b5060048054600160a060020a033316600160a060020a031990911681179091556b204fce5e3e250261100000006000818155918252600160205260
608060405234801561001057600080fd5b5060048054600160a060020a033316600160a060020a031990911681179091556b204fce5e3e250261100000006000818155918252600160205260
608060405234801561001057600080fd5b5060048054600160a060020a033316600160a060020a031990911681179091556b204fce5e3e250261100000006000818155918252600160205260
608060405234801561001057600080fd5b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffff
608060405234801561001057600080fd5b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffff
0.4.24
608060405234801561001057600080fd5b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffff
608060405234801561001057600080fd5b5060048054600160a060020a033316600160a060020a031990911681179091556b204fce5e3e250261100000006000818155918252600160205260
0.4.25
608060405234801561001057600080fd5b5060048054600160a060020a031916339081179091556b204fce5e3e250261100000006000818155918252600160205260409091205561092480610
608060405234801561001057600080fd5b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373fffffffffffffffffffffffffffffffffffffff
0.4.22
6060604052341561000f57600080fd5b33600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160
0.4.21
6060604052341561000f57600080fd5b33600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff

而我在这里没有运气尝试和浪费我的时间。有人有类似的问题吗?我如何解决它?

好的,我找到了解决方案。 我选择了错误的编译器版本,正确的版本是0.4.25-nightly.2018.5.16+commit.3897c367

这是有史以来最糟糕的调试体验之一,我只是逐个选择编译器版本进行测试