I've seen multiple times projects on Ethereum that have stated that their "admin keys have been burnt", thus ensuring security to all the users that the developer will not modify/update any existing smart contracts. As far as I know, the private key has a mathematical relationship with a public key address, so I am wondering what exactly these projects mean when their "admin keys are burnt". Usually they also provide a TX as "proof". What exactly is going on here?
1 Answer
It depends on the implementation of each project. The general idea is that the privileged account is removed.
For example OpenZeppelin contracts have the function renounceOwnership
that sets the zero address as owner.
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
Note: It is assumed that it is secure to use zero address for that purpose.
-
Ah, okay I see. So by renouncing ownership the original person who deployed the contract won't be able to modify it? Commented Sep 19, 2020 at 5:19
-
Yes, that's the idea, nobody will have special privileges, all addresses will be considered equal.– Ismael ♦Commented Sep 19, 2020 at 5:56