Mint & Redeem Key Functions
Important functions of the mint and redeem smart contract
Roles in CAMP Minting contract
Overview
The CAMP minting contract has been designed to offer a safe and secure platform for the creation of USDca. Its atomic operations ensure that tasks are either fully completed or reverted, leaving no room for partial executions. Its immutable nature guarantees that its critical rules and operations cannot be easily altered, ensuring consistency and trust in the process. It has these key pieces of functionality:
Minting: Minters can mint USDca by providing assets and receiving USDca tokens in return. The backing assets are transferred to "Off-Exchange Settlement" providers based on a predefined route. The minting process is subject to a maximum limit set by the contract.
Redemption: Redeemers can redeem their USDca by providing them as input and receiving the underlying assets back USDca in return. The redeemed USDca tokens are burned from the user's balance. The redemption process is subject to a maximum limit set by the contract.
Signature Verification: The contract cryptographically verifies the signature provided by the user to ensure the authenticity of the minting or redemption order.
Supported Assets: The contract maintains a strict list of supported assets that can be used as backing assets for minting and redemption.
Custodian Addresses: The contract maintains a strict list of custodian addresses to which backing assets can be transferred during the minting process.
Max Mint/Redeem Per Block: The contract sets a maximum limit for the number of USDca tokens that can be minted or redeemed per block.
Roles in smart contracts are what control lower level operations and function calls. It's a security feature, like AWS IAM, that allows the authors of smart contracts, and the users using them once deployed to the blockchain, to be certain of how they can operate.
Despite being named the "CAMP Minting contract", it is responsible for both the minting & redeeming functionality of USDca.
Roles in the CAMP Minting contract
There are five roles in the CAMP Minting contract. You can view the deployed CAMP Minting contract on the Ethereum blockchain here.
ADMIN
Multi-Sig
CAMP Labs
1
Transfer Ownership
Add/remove supported collateral asset
Add/remove custodian addresses
Grant/revoke Minter, Redeemer, Gatekeeper roles
Set max/mint mint/redeem per block
Reenable mint/redeem
GATEKEEPER
EOA
Shared between
CAMP Labs
External Security Firms
3+ internal 3+ external
Disable mint/redeem
Disables when they execute at incorrect prices on chain
Limits damage on mint/redeem roles compromise
MINTER
EOA
CAMP Labs
20
Mint
Transfer to approved "Off-Exchange Settlement" providers
REDEEMER
EOA
CAMP Labs
20
Redeem
Last updated