Vault

Contract NameGithubDeployed Contract AddressContract ImplementedInitialization data

MultisigOrganization

coming soon

Coming soon

IMultisigOrganization, Organization

addresses, _minimumSignatures and Organizationinit data.

A Vault Organization is defined by the MultiSigOrganization contract, which implements the Organization contract, and therefore a Vault is an Organization.

The MultiSigOrganization contract must be initialized with

  • A set of addresses that have signing authority, also called 'authorized wallets'

  • A defined minimum number of signatures required to approve the execution of specific transactions

(address[] memory addresses, uint256 _minimumSignatures, bytes memory superLazyInitData) = abi.decode(lazyInitData, (address[], uint256, bytes));

Update the Authorized Wallet and Minimum Signatures Parameters

Addresses can be added/removed/updated using the setAddresses function:

function setAddresses(address[] calldata froms, address[] calldata tos) external;

If froms is populated, those addresses are deleted from the set of authorized wallets. If tos is populated, those addresses are added to authorized wallets. If both are populated, addresses in froms are deleted from and addresses in tos are added to authorized wallets.

The minimum number of signatures can also be changed by using the setMinimumSignatures function:

function setMinimumSignatures(uint256 newValue) external returns(uint256 oldValue);

The newValue parameter represents the new minimum signatures value.

Both the setAddresses and setMinimumSignatures parameters are functions that can be called by authorizedOnly.

Last updated