如何从契约创建字节代码中提取函数foodVote(int [] foodOptions)的构造函数参数?

时间:2018-03-18 08:11:05

标签: bytecode solidity

有人告诉过构造函数位于合同创建字节代码的末尾,我似乎无法提取它,构造函数也包含和int数组"食物选项",这就是我可以的原因不部署和验证代码。任何帮助将不胜感激。

合同创建字节码

  

0x606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063409e220514610067578063c02b9a6e1461009e578063ca430893146100c1578063d4cd5104146100e4575b600080fd5b341561007257600080fd5b6100886004808035906020019091905050610121565b6040518082815260200191505060405180910390f35b34156100a957600080fd5b6100bf6004808035906020019091905050610145565b005b34156100cc57600080fd5b6100e26004808035906020019091905050610177565b005b34156100ef57600080fd5b61010560048080359060200190919050506101cc565b604051808260ff1660ff16815260200191505060405180910390f35b60018181548110151561013057fe5b90600052602060002090016000915090505481565b60008190506001805480600101828161015e9190610261565b9160005260206000209001600084909190915055505050565b61018081610209565b151561018b57600080fd5b600160008083815260200190815260200160002060008282829054906101000a900460ff160192506101000a81548160ff021916908360ff16021790555050565b60006101d782610209565b15156101e257600080fd5b60008083815260200190815260200 160002060009054906101000a900460ff169050919050565b600080600090505b600180549050811015610256578260018281548110151561022e57fe5b9060005260206000209001541415610249576001915061025b565b8080600101915050610211565b600091505b50919050565b81548183558181151161028857818360005260206000209182019101610287919061028d565b5b505050565b6102af91905b808211156102ab576000816000905550600101610293565b5090565b905600a165627a7a723058205df42863f94f75e95897603b522e918efa5cfbf7b945dc0fc8e6dfffa9391fc90029

重新混合字节码

  

6060604052341561000f57600080fd5b6040516103a73803806103a7833981016040528080518201919050508060019080519060200190610041929190610048565b50506100ba565b828054828255906000526020600020908101928215610084579160200282015b82811115610083578251825591602001919060010190610068565b5b5090506100919190610095565b5090565b6100b791905b808211156100b357600081600090555060010161009b565b5090565b90565b6102de806100c96000396000f300606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063409e220514610067578063c02b9a6e1461009e578063ca430893146100c1578063d4cd5104146100e4575b600080fd5b341561007257600080fd5b6100886004808035906020019091905050610121565b6040518082815260200191505060405180910390f35b34156100a957600080fd5b6100bf6004808035906020019091905050610145565b005b34156100cc57600080fd5b6100e26004808035906020019091905050610177565b005b34156100ef57600080fd5b61010560048080359060200190919050506101cc565b604051808260ff1660ff16815260200191505060405180910390f35b600181815481101 51561013057fe5b90600052602060002090016000915090505481565b60008190506001805480600101828161015e9190610261565b9160005260206000209001600084909190915055505050565b61018081610209565b151561018b57600080fd5b600160008083815260200190815260200160002060008282829054906101000a900460ff160192506101000a81548160ff021916908360ff16021790555050565b60006101d782610209565b15156101e257600080fd5b60008083815260200190815260200160002060009054906101000a900460ff169050919050565b600080600090505b600180549050811015610256578260018281548110151561022e57fe5b9060005260206000209001541415610249576001915061025b565b8080600101915050610211565b600091505b50919050565b81548183558181151161028857818360005260206000209182019101610287919061028d565b5b505050565b6102af91905b808211156102ab576000816000905550600101610293565b5090565b905600a165627a7a723058205df42863f94f75e95897603b522e918efa5cfbf7b945dc0fc8e6dfffa9391fc90029

谢谢!

1 个答案:

答案 0 :(得分:0)

您无法反编译回原始合约。您可以做的最好的事情是生成OPCODES。有几种工具可以执行此操作,包括Porosity,或者您可以将其放入Etherscan's Opcode Disassember

当然,如果你有ABI来使用你的字节码,那么你不需要任何其他东西来部署你的智能合约。