【问题标题】:How to write a offchain method for Clones.predictDeterministicAddress(erc20TokenImplementation, salt);如何为 Clones.predict DeterministicAddress(erc20 Token Implementation, salt) 编写链下方法;
【发布时间】:2022-10-03 04:48:57
【问题描述】:

我想为此编写javascript方法

function predictDeterministicAddress(
    address implementation,
    bytes32 salt,
    address deployer
) internal pure returns (address predicted) {
    assembly {
        let ptr := mload(0x40)
        mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
        mstore(add(ptr, 0x14), shl(0x60, implementation))
        mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf3ff00000000000000000000000000000000)
        mstore(add(ptr, 0x38), shl(0x60, deployer))
        mstore(add(ptr, 0x4c), salt)
        mstore(add(ptr, 0x6c), keccak256(ptr, 0x37))
        predicted := keccak256(add(ptr, 0x37), 0x55)
    }
}
  • 我不相信你可以从前端调用内部函数。我必须对此进行测试。
  • 除此之外。当您从前端调用它时,究竟是什么问题?我想说你应该使用 web3.js 库中的常规 call() 函数。你以前用过 web3.js 吗?
  • 顺便说一句,我无法验证是否正确使用了汇编程序,因为我以前从未使用过 asm 来保证可靠性。

标签: ethereum solidity openzeppelin evm eip


【解决方案1】:

你能做到吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-04
    • 1970-01-01
    • 2017-08-23
    • 2013-10-12
    • 2011-11-24
    • 2015-10-29
    • 1970-01-01
    相关资源
    最近更新 更多