ETH Price: $1,972.76 (+0.54%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Create Proxy Wit...224405292025-05-08 18:17:59289 days ago1746728279IN
Safe: Proxy Factory 1.0.0
0 ETH0.0010915910.0555098
Create Proxy Wit...158898222022-11-03 13:34:111206 days ago1667482451IN
Safe: Proxy Factory 1.0.0
0 ETH0.0046697915.27803375
Create Proxy Wit...158897242022-11-03 13:14:231206 days ago1667481263IN
Safe: Proxy Factory 1.0.0
0 ETH0.0018047517.04448108
Create Proxy Wit...156527402022-10-01 10:33:351239 days ago1664620415IN
Safe: Proxy Factory 1.0.0
0 ETH0.001356474.43244364
Create Proxy151100082022-07-09 18:29:001323 days ago1657391340IN
Safe: Proxy Factory 1.0.0
0 ETH0.0030352712.60349566
Create Proxy151074682022-07-09 9:04:161323 days ago1657357456IN
Safe: Proxy Factory 1.0.0
0 ETH0.0030559710.64386609
Create Proxy150711662022-07-03 18:24:531329 days ago1656872693IN
Safe: Proxy Factory 1.0.0
0 ETH0.0010388729.68215792
Create Proxy148326572022-05-24 0:23:311370 days ago1653351811IN
Safe: Proxy Factory 1.0.0
0 ETH0.0019063617.96610517
Create Proxy Wit...148231142022-05-22 11:29:361371 days ago1653218976IN
Safe: Proxy Factory 1.0.0
0 ETH0.0013146112.16259062
Create Proxy144067632022-03-17 22:50:131437 days ago1647557413IN
Safe: Proxy Factory 1.0.0
0 ETH0.011416130.07
Create Proxy Wit...129967122021-08-10 10:00:201656 days ago1628589620IN
Safe: Proxy Factory 1.0.0
0 ETH0.0179520460.5
Create Proxy Wit...127246222021-06-28 20:19:051699 days ago1624911545IN
Safe: Proxy Factory 1.0.0
0 ETH0.0086141629
Create Proxy125436732021-05-31 18:17:391727 days ago1622485059IN
Safe: Proxy Factory 1.0.0
0 ETH0.0060293321
Create Proxy Wit...118563542021-02-14 18:10:101833 days ago1613326210IN
Safe: Proxy Factory 1.0.0
0 ETH0.04789923166.88
Create Proxy Wit...109136292020-09-22 17:29:311978 days ago1600795771IN
Safe: Proxy Factory 1.0.0
0 ETH0.09919054345.217125
Create Proxy Wit...107430562020-08-27 14:05:162004 days ago1598537116IN
Safe: Proxy Factory 1.0.0
0 ETH0.03851915134.2
Create Proxy Wit...104203132020-07-08 17:52:572054 days ago1594230777IN
Safe: Proxy Factory 1.0.0
0 ETH0.028477371.5
Create Proxy Wit...103979202020-07-05 6:55:182057 days ago1593932118IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103979182020-07-05 6:54:312057 days ago1593932071IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
Create Proxy Wit...103978232020-07-05 6:37:352057 days ago1593931055IN
Safe: Proxy Factory 1.0.0
0 ETH0.0034906510
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
0x60806040224405292025-05-08 18:17:59289 days ago1746728279
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
0x60806040158897242022-11-03 13:14:231206 days ago1667481263
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
0x60806040158696172022-10-31 17:44:591209 days ago1667238299
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
0x60806040152099822022-07-25 6:10:461307 days ago1658729446
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
0x60806040151100082022-07-09 18:29:001323 days ago1657391340
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
0x60806040151074682022-07-09 9:04:161323 days ago1657357456
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-148326572022-05-24 0:23:311370 days ago1653351811
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-148231142022-05-22 11:29:361371 days ago1653218976
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-144067632022-03-17 22:50:131437 days ago1647557413
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-129967122021-08-10 10:00:201656 days ago1628589620
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-127246222021-06-28 20:19:051699 days ago1624911545
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-125436732021-05-31 18:17:391727 days ago1622485059
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-118563542021-02-14 18:10:101833 days ago1613326210
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-109136292020-09-22 17:29:311978 days ago1600795771
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-107430562020-08-27 14:05:162004 days ago1598537116
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-104203132020-07-08 17:52:572054 days ago1594230777
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979202020-07-05 6:55:182057 days ago1593932118
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103979182020-07-05 6:54:312057 days ago1593932071
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103978232020-07-05 6:37:352057 days ago1593931055
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
-103978232020-07-05 6:37:352057 days ago1593931055
Safe: Proxy Factory 1.0.0
 Contract Creation0 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ProxyFactory

Compiler Version
v0.5.7+commit.6da8b019

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Audited
/**
 *Submitted for verification at Etherscan.io on 2019-03-27
*/

pragma solidity ^0.5.0;

contract Proxy {

    // masterCopy always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
    // To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`
    address internal masterCopy;

    /// @dev Constructor function sets address of master copy contract.
    /// @param _masterCopy Master copy address.
    constructor(address _masterCopy)
        public
    {
        require(_masterCopy != address(0), "Invalid master copy address provided");
        masterCopy = _masterCopy;
    }

    /// @dev Fallback function forwards all transactions and returns all received return data.
    function ()
        external
        payable
    {
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let masterCopy := and(sload(0), 0xffffffffffffffffffffffffffffffffffffffff)
            calldatacopy(0, 0, calldatasize())
            let success := delegatecall(gas, masterCopy, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            if eq(success, 0) { revert(0, returndatasize()) }
            return(0, returndatasize())
        }
    }
}

contract ProxyFactory {

    event ProxyCreation(Proxy proxy);

    /// @dev Allows to create new proxy contact and execute a message call to the new proxy within one transaction.
    /// @param masterCopy Address of master copy.
    /// @param data Payload for message call sent to new proxy contract.
    function createProxy(address masterCopy, bytes memory data)
        public
        returns (Proxy proxy)
    {
        proxy = new Proxy(masterCopy);
        if (data.length > 0)
            // solium-disable-next-line security/no-inline-assembly
            assembly {
                if eq(call(gas, proxy, 0, add(data, 0x20), mload(data), 0, 0), 0) { revert(0, 0) }
            }
        emit ProxyCreation(proxy);
    }

    /// @dev Allows to retrieve the runtime code of a deployed Proxy. This can be used to check that the expected Proxy was deployed.
    function proxyRuntimeCode() public pure returns (bytes memory) {
        return type(Proxy).runtimeCode;
    }

    /// @dev Allows to retrieve the creation code used for the Proxy deployment. With this it is easily possible to calculate predicted address.
    function proxyCreationCode() public pure returns (bytes memory) {
        return type(Proxy).creationCode;
    }

    /// @dev Allows to create new proxy contact and execute a message call to the new proxy within one transaction.
    /// @param _mastercopy Address of master copy.
    /// @param initializer Payload for message call sent to new proxy contract.
    /// @param saltNonce Nonce that will be used to generate the salt to calculate the address of the new proxy contract.
    function createProxyWithNonce(address _mastercopy, bytes memory initializer, uint256 saltNonce)
        public
        returns (Proxy proxy)
    {
        // If the initializer changes the proxy address should change too. Hashing the initializer data is cheaper than just concatinating it
        bytes32 salt = keccak256(abi.encodePacked(keccak256(initializer), saltNonce));
        bytes memory deploymentData = abi.encodePacked(type(Proxy).creationCode, uint256(_mastercopy));
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            proxy := create2(0x0, add(0x20, deploymentData), mload(deploymentData), salt)
        }
        if (initializer.length > 0)
            // solium-disable-next-line security/no-inline-assembly
            assembly {
                if eq(call(gas, proxy, 0, add(initializer, 0x20), mload(initializer), 0, 0), 0) { revert(0,0) }
            }
        emit ProxyCreation(proxy);
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_mastercopy","type":"address"},{"name":"initializer","type":"bytes"},{"name":"saltNonce","type":"uint256"}],"name":"createProxyWithNonce","outputs":[{"name":"proxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"proxyCreationCode","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"masterCopy","type":"address"},{"name":"data","type":"bytes"}],"name":"createProxy","outputs":[{"name":"proxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"proxyRuntimeCode","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"pure","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"}],"name":"ProxyCreation","type":"event"}]

608060405234801561001057600080fd5b506108c4806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631688f0b91461005157806353e5d9351461017657806361b69abd146101f9578063addacc0f14610314575b600080fd5b6101346004803603606081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156100a457600080fd5b8201836020820111156100b657600080fd5b803590602001918460018302840111640100000000831117156100d857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610397565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61017e610520565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101be5780820151818401526020810190506101a3565b50505050905090810190601f1680156101eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d26004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561024c57600080fd5b82018360208201111561025e57600080fd5b8035906020019184600183028401116401000000008311171561028057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061054b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61031c61063e565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035c578082015181840152602081019050610341565b50505050905090810190601f1680156103895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008083805190602001208360405160200180838152602001828152602001925050506040516020818303038152906040528051906020012090506060604051806020016103e490610669565b6020820181038252601f19601f820116604052508673ffffffffffffffffffffffffffffffffffffffff166040516020018083805190602001908083835b602083106104455780518252602082019150602081019050602083039250610422565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040516020818303038152906040529050818151826020016000f592506000855111156104b45760008060008751602089016000885af114156104b357600080fd5b5b7fa38789425dbeee0239e16ff2d2567e31720127fbc6430758c1a4efc6aef29f8083604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150509392505050565b60606040518060200161053290610669565b6020820181038252601f19601f82011660405250905090565b60008260405161055a90610669565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f0801580156105ac573d6000803e3d6000fd5b5090506000825111156105d55760008060008451602086016000865af114156105d457600080fd5b5b7fa38789425dbeee0239e16ff2d2567e31720127fbc6430758c1a4efc6aef29f8081604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a192915050565b60606040518060200161065090610676565b6020820181038252601f19601f82011660405250905090565b6101a88061068383390190565b606e8061082b8339019056fe608060405234801561001057600080fd5b506040516020806101a88339810180604052602081101561003057600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806101846024913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050606e806101166000396000f3fe608060405273ffffffffffffffffffffffffffffffffffffffff600054163660008037600080366000845af43d6000803e6000811415603d573d6000fd5b3d6000f3fea165627a7a723058201e7d648b83cfac072cbccefc2ffc62a6999d4a050ee87a721942de1da9670db80029496e76616c6964206d617374657220636f707920616464726573732070726f7669646564608060405273ffffffffffffffffffffffffffffffffffffffff600054163660008037600080366000845af43d6000803e6000811415603d573d6000fd5b3d6000f3fea165627a7a723058201e7d648b83cfac072cbccefc2ffc62a6999d4a050ee87a721942de1da9670db80029a165627a7a723058202d28aa9eea1924153a1b556d5028be3f7add47a2c285a327b525e9a29d3216d10029

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80631688f0b91461005157806353e5d9351461017657806361b69abd146101f9578063addacc0f14610314575b600080fd5b6101346004803603606081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156100a457600080fd5b8201836020820111156100b657600080fd5b803590602001918460018302840111640100000000831117156100d857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610397565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61017e610520565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101be5780820151818401526020810190506101a3565b50505050905090810190601f1680156101eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d26004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561024c57600080fd5b82018360208201111561025e57600080fd5b8035906020019184600183028401116401000000008311171561028057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061054b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61031c61063e565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035c578082015181840152602081019050610341565b50505050905090810190601f1680156103895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008083805190602001208360405160200180838152602001828152602001925050506040516020818303038152906040528051906020012090506060604051806020016103e490610669565b6020820181038252601f19601f820116604052508673ffffffffffffffffffffffffffffffffffffffff166040516020018083805190602001908083835b602083106104455780518252602082019150602081019050602083039250610422565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040516020818303038152906040529050818151826020016000f592506000855111156104b45760008060008751602089016000885af114156104b357600080fd5b5b7fa38789425dbeee0239e16ff2d2567e31720127fbc6430758c1a4efc6aef29f8083604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150509392505050565b60606040518060200161053290610669565b6020820181038252601f19601f82011660405250905090565b60008260405161055a90610669565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f0801580156105ac573d6000803e3d6000fd5b5090506000825111156105d55760008060008451602086016000865af114156105d457600080fd5b5b7fa38789425dbeee0239e16ff2d2567e31720127fbc6430758c1a4efc6aef29f8081604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a192915050565b60606040518060200161065090610676565b6020820181038252601f19601f82011660405250905090565b6101a88061068383390190565b606e8061082b8339019056fe608060405234801561001057600080fd5b506040516020806101a88339810180604052602081101561003057600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806101846024913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050606e806101166000396000f3fe608060405273ffffffffffffffffffffffffffffffffffffffff600054163660008037600080366000845af43d6000803e6000811415603d573d6000fd5b3d6000f3fea165627a7a723058201e7d648b83cfac072cbccefc2ffc62a6999d4a050ee87a721942de1da9670db80029496e76616c6964206d617374657220636f707920616464726573732070726f7669646564608060405273ffffffffffffffffffffffffffffffffffffffff600054163660008037600080366000845af43d6000803e6000811415603d573d6000fd5b3d6000f3fea165627a7a723058201e7d648b83cfac072cbccefc2ffc62a6999d4a050ee87a721942de1da9670db80029a165627a7a723058202d28aa9eea1924153a1b556d5028be3f7add47a2c285a327b525e9a29d3216d10029

Swarm Source

bzzr://2d28aa9eea1924153a1b556d5028be3f7add47a2c285a327b525e9a29d3216d1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

Factory contract to deploy Safe proxies version 1.0.0

Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.