SFT Protocol¶
The SFT protocol is a set of compliance-oriented smart contracts built on the Ethereum blockchain that allow for the tokenization of debt and equity based securities. It provides a robust, flexible framework allowing issuers and investors to retain regulatory compliance throughout primary issuance and multi-jurisdictional secondary trading.
How it works¶
SFT expands upon the ERC20 token standard. Tokens are transferred via the transfer
and transferFrom
functions, however the transfer will only succeed if approved by a series of permissioning modules. A call to checkTransfer
returns true if the transfer is possible. The standard configuration includes checking a KYC/AML whitelist, tracking investor counts and limits, and restrictions on countries and accredited status. By implementing other modules a variety of additional functionality is possible so as to allow compliance to laws in the countries of the issuer and investors.
Components¶
-
- ERC20 compliant tokens intended to represent a claim to ownership of securities
- Modules may be applied to each security token to add additional permissioning or functionality
-
- Central owner contract for tokens created by the same issuer
- Modules may be applied at this level that introduce permissioning / functionality to all associated security token contracts
-
- Whitelists that provide identity, region, and accreditation information of investors based on off-chain KYC/AML verification
-
- Contracts that represent an entity approved to hold tokens for multiple investors
- Base interface that allows for wide customisation depending on the needs of the owner
- Modules
- Wide range of functionality that modules can hook into allows for many different applications
Third-Party Integration¶
See Third Party Integration for in-depth details.
License¶
This project is licensed under the Apache 2.0 license.