On $TEAK Contract Access Control

Hey Kangalians,

As you might have heard, Ethereum is a dark forest, and that naturally extends to any EVM based smart contract environment. BSC is also EVM-based and as you know, our beta period for staking will be on BSC.

That’s the reason I wanted to give you some details on how we will be keeping minting $TEAK rewards for staking safe (which means keeping the $TEAK supply safe and only limited to staking). We have previously mentioned how staking will work through a minting emission rate called APR-M and how the staking smart contracts will be talking to $TEAK contract to mint you some fresh $TEAKs when you withdraw your staked funds & receive your rewards.

For this to work in a secure way, we need to do a couple of things right.

The crucial part is making sure we do not rely on a single admin controlling the minting access. You may have heard about bus factor. Basically, we cannot rely on one person/wallet to control minting rights for the staking contracts because it is a risk not only related to this person going missing, but also it leads to having a single point of failure in case of a breach (someone stealing the private keys).

To fix this we will have 3 admin wallets that will need to reach a consensus on adding minters and allowing minting in general. To add a minter (address of staking contract) an admin will need to first propose a minter, after which another admin will have to approve this request and reach the 2/3 threshold, after which this address will be added to minters. Admins will also have to give consent for general minting consensus which also needs a 2/3 threshold.

On top of these, all of these 3 admin wallets will themselves be Gnosis Multisig wallets, which will allow us to scale the security since these multisig wallets can have as many signers as we want and each of these 3 multisig wallet’s signers will also need to reach a consensus and then trigger the $TEAK contract as admins.

With these, we will have a 2 layer consensus requirement to add a minter, and the ability to scale the number of participants that will control minting access, which makes it extremely hard to get >66% of the signers from the 3 multisig wallets to take over the control of minting.

Please feel free to shoot your questions Kangalians,
Love from the Core Woofs. :dog:

3 Likes

Hey,

  1. How will these 3 addresses be determined?
  2. As you mentioned, will 3 addresses be enough for us to balance the bus factor?
  3. Wouldn’t it be safer to have more participants in terms of system sustainability? (maybe the first x holder can be have voting right)
1 Like

Hey @uykusuzpenguen,

These 3 addresses will be multisig wallets the core team will create. Each multisig wallet will have multiple team members. I mentioned that there are no limits to how many participants there can be since each multisig wallet can have an unlimited amount of participants. Also there are no limits to adding/removing participants at any time.

I think there is no issue regarding sustainability since the staking contracts that will require the minting rights are being developed by the Core Team as well. These steps are taken in sake of security, giving a holder vote regarding minting just because they have x amount of tokens is not something logical since they can still be ill-intentioned.

1 Like