0.1.8 • Published 11 months ago

@censo/eth-contracts v0.1.8

Weekly downloads
-
License
GPL-3.0-only
Repository
-
Last release
11 months ago

Censo Ethereum Contracts

Usage

Install requirements with yarn:

yarn

Build:

yarn build

Deployments

yarn hardhat deploy

Documentation

The contracts here are part of Censo's implementation of Gnosis' Safe.

Censo uses a two-level structure with "vaults" that control the configuration of one or more individual "wallets", each of which have their own policy for controlling transfers and dapp transactions. In this model, both vaults and wallets are implemented as Safes; the owners of the vault Safe control both its configuration as well as the configuration of that vault's wallets.

This is implemented by configuring the wallets with a guard which prohibits any transactions that might alter the state of the wallet Safe (thus preventing the owners of the wallet from configuring it) and by enabling the vault Safe as a module on the wallet Safe, which allows the owners of the vault to configure the wallets.

Censo has also implemented additional features on wallets: whitelisting, the ability to have a wallet which can do basic transfers (including ERC-20, ERC-721 and ERC-1155 transfers) but not general dapp transactions, and the ability to associate a name hash with the wallet.

  • contracts/CensoFallbackHandler.sol - fallback handler implementing whitelisting and name hash functions
  • contracts/CensoGuard.sol - default guard for a wallet with whitelisting off and dapp transactions allowed
  • contracts/CensoWhitelistingGuard.sol - guard with whitelisting on and dapp transactions allowed
  • contracts/CensoTransfersOnlyGuard.sol - guard with whitelisting off and dapp transactions not allowed
  • contracts/CensoTransfersOnlyWhitelistingGuard.sol - guard with whitelisting on but no dapp transactions
  • contracts/CensoRecoveryGuard.sol - guard for a recovery contract which is only allowed to call execTransactionFromModule(swapOwners())

Audits / Formal Verification

Security and Liability

All contracts are WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

License

All smart contracts are released under GPL-3.0

0.1.8

11 months ago

0.1.7

11 months ago

0.1.6

1 year ago

0.1.5

1 year ago

0.1.4

1 year ago

0.1.3

1 year ago

0.1.2

1 year ago

0.1.1

1 year ago

0.1.0

1 year ago