Validator Roles & Security Controls
Validators are independent, trusted entities that form a critical security layer for the minting and burning processes within the MinterGateway
. Their responsibilities and powers include:
Core Responsibilities
- Collateral Verification: Validators verify Minters' offchain collateral and provide cryptographic signatures for
updateCollateral
transactions. These signatures attest to the value and existence of the assets backing $M. - Timestamping: Signatures from Validators must include a secure timestamp to prevent replay attacks and ensure the freshness of collateral data.
- Enabling Offchain-Onchain Bridge: Validators act as the crucial link ensuring the onchain representation of collateral accurately reflects the state of offchain assets.
Security Controls & Emergency Powers
Validators are empowered with specific functions to intervene and protect the protocol:
-
Cancel Mint Proposal: If Validators deem a pending mint proposal to be suspicious, invalid, or potentially harmful to the protocol, they can cancel it before execution:
function cancelMint(address minter, uint256 mintId) external onlyApprovedValidator;
This action deletes the mint proposal, preventing the Minter from executing it.
-
Freeze Minter: Validators can temporarily suspend a Minter's ability to mint new $M tokens:
function freezeMinter(address minter) external onlyApprovedValidator returns (uint40 frozenUntil_);
This "freezes" the Minter for a duration specified by the governance parameter
MINTER_FREEZE_TIME
. A frozen Minter can still burn $M and update collateral but cannot propose or execute new mints until the freeze period expires.
These controls allow Validators to act as a rapid response mechanism against potential threats or misbehavior related to $M issuance.