Proxy Contract
Last updated
Last updated
A proxy contract is a type of smart contract that acts as an intermediary smart contract that delegates calls to another smart contract known as the “implementation contract”.
In cases where a proxy contract is used, interaction with the underlying implementation contract should be done through the proxy contract. The most common flow is:
The user initiates a function call to the Proxy Smart Contract.
The Proxy Smart Contract redirects the function call to the Implementation Contract.
The Implementation Contract executes the intended smart contract code for the function the user originally requested.
The return is then fed back from the Implementation Contract through the Proxy Contract and back to the User.
A proxy contract is considered "not upgradeable" when there is no facility to change the underlying implementation control's address. For upgradeable contracts ownership is considered to be renounced when it is changed to the null address.