DSAuth-protected ERC20 token vault
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
src
.gitignore
.gitmodules
Dappfile
LICENSE
Makefile
README.md
default.nix

README.md

DSVault

DSAuth-protected ERC20 token vault

A vault is useful any time you need to segregate token holdings into several distinct buckets, or when you want to set up a shared account, perhaps owned by a ds-multisig.

A DSMultiVault is able to hold any number of different ERC20 tokens.

A DSVault is bound to a single token. It is useful as a handle on the token that the system can pass around without also needing to transfer the tokens themselves, or passing a Multivault/Token pair.

Vaults are protected by ds-auth which means they support sophisticated access control out of the box.

Whoever owns or controls a DSVault can tell it to perform token operations, such as transferring X amount of token Y to account Z, or even(provided the vault has the necessary approval) transferring X amount of token Y from account W to account Z.

Anyone is free to make deposits to a vault by simply transferring tokens directly into it using the a transfer function. The owner of a vault can also ask the vault to perform the transfer.

Vaults are very staightforward to understand and think about, and can be a useful building block in many different kinds of applications.