🔐Multisig

There are 4 roles in the contract. Notably, various gnosis multisigs are used to secure the contract.

The following are the roles in the Paradox contract, and the associated information with how the roles are currently governed.

DEFAULT_ADMIN_ROLE

Deploys Contract, sets addresses of all roles, revokes their role.

GAME_ADMIN_ROLE (2/3 Game Admin Multisig)

CreatePool - Creates games people can bet on.

ADMIN_ROLE (4/7 Admin Role Multisig)

AuthorizeUpgrade - Push changes to the contract.

UpdateVerisignerAddress - Update address that signs commission (changes private key that allows users to claim commission)

UpdateERC20Contract - Accept new token.

UpdateVaultContract - Direct unclaimed winnings and commission to new wallet.

UpdateBettingAddress - Change the address of the smart contract for taking bets.

UpdateProxyAddress - Upgrade the proxy address.

Signers:

0xefce3Be5fBDC1cEDB6b426BBb852e47fBcBEe1f8

0x093a4733Df5F52ef44d05ffceE49954D0c3931aC

0x770514BC77FB9619Ad4ca3510a618E6bDAB91d33

0xa16975d07a21D42C4FF41aeDfC3f6Be949768749

0x810984Ddc9116895F1BDe426F576E715CB608A23

0xE1Ad4e51CE80415Ac6EBb9e4F6b5C42FA305Ea32

0x2C5Edcc5c4a8fd151Ef490FC246935882D63158B

MULTI-SIG_ROLE (3/6 Game Grading Multisig)

  • Enter winner(s) — Allow all users to claim winnings and commissions from the contract.

  • Refund Pool — Allow all users to claim their bets back from the contract, including the commission paid.

  • Close Pool — Stop betting on the pool.

  • Start Pool — Opens a pool up for users to bet on.

  • Transfer Unclaimed Commission to Vault — Move all unclaimed commissions for a given event to a vault address, which must occur at least 90 days after the end time of the pool.

  • Transfer Unclaimed Payouts to Vault — Move all unclaimed winnings for a given event to a vault address, which must occur at least 90 days after the end time of the pool.

  • Change Start Time — Change the start time of the pool.

Addresses MULTISIG:

SafeAddress: 0x47a0bADb2E5377F1Bc1579A5D39b3ab804adACBa

Signers:

0x78C5C055577EDE7b7Ed3E5d2C3B1156BBb791c20

0x2dCFFF08f11A8f7e3CbeE66d8cA24d1cf671dc5F

0x39De04C4803b9D11c1C11D2a9EbCCB847B54C9Ae

0x504BddbEa17f9e32B48a1b7BF99e70A47c8B99EB

0x1b656A9d84F0279CD3c5bB52c87d1b5A1EDC8B66

0xCD180Dd7c0Be8868c3eF261b37B4eCa4bAa84b2f

Contracts on Arbitrum with USDT:

BettingAdminAddress: 0x7ccb85C6C377f0ac444EA3bFDB19f82d15DF0566

BettingAddress: 0xA6e1080713Bd51fe56Ea584FF633Fb65B35C693c

Contracts on Ethereum with USDT:

BettingAdminAddress: 0xfD466212F39bBBCe38cEE467207E0F63b64205BA

BettingAddress: 0xF3a881314A14e2EF3fd2a412D2fe9e78A7933bF3

Contracts with ROOT ERC20:

BettingAdminAddress: 0xbAB1c9BF99E1aebb809Fa19d5A20b8E13F9Fb8BF

BettingAddress: 0xF3266919C00Aa61929b8C4fC5112e8F36665b2aa

Last updated