🔐Access Control

TLDR

In our smart contracts, we made some architectural decisions to reduce our smart contract risks and access control risks:

  • The Admin/Multisig does not have access to the principal

  • The Admin/Multisig can not permanently freeze funds.

  • The contracts are not upgradeable (No malicious upgradability can happen)

  • You can leave the position at any point in time

  • The Multisig/Admin only has access to the weekly yield. This represents less than 1% of the TVL

  • The withdrawal fee can change up to a 10% cap (No malicious attack on fees)

Below we will dive deep into the privileges of each role:

VaultController

Multisig 2/3: https://etherscan.io/address/0xe24E8beEBa6219CD2F6FA25D5b04a0e78f19Aa0A

This role is responsible for the functions endRound and startRound.During the endRound phase, other addresses can not perform deposit or withdrawal actions until the startRound function is called. In order to avoid the risk of principal funds getting stuck, after a week (~604800 blocks) any address can call the startRound function, enabling withdrawals again.

ConfigurationManager Owner

Multisig 2/3: https://etherscan.io/address/0xe24E8beEBa6219CD2F6FA25D5b04a0e78f19Aa0A

This role is responsible for setting the:

  • VaultController of a certain vault

  • Withdraw fee ratio of a certain vault (cap at 10% by the code)

  • Migration contract of a certain vault (in case of migration)

  • Cap of a certain vault

Investor

Multisig 2/3: https://etherscan.io/address/0x448C7875633EA285996870BF56bcE7C64Ee94A70

This role is the one responsible for using 50& of the weekly yield to buy options at the best price. This could be an off-chain exchange, L2 trade, or OTC.

Last updated