The T-REX (Token for Regulated EXchanges) protocol is a comprehensive suite of Solidity smart contracts, implementing the ERC-3643 standard and designed to enable the issuance, management, and transfer of security tokens in compliance with regulations. It ensures secure and compliant transactions for all parties involved in the token exchange.
The T-REX protocol consists of several key components:
-
ONCHAINID: A smart contract deployed by a user to interact with the security token or any other application where an on-chain identity may be relevant. It stores keys and claims related to a specific identity.
-
Trusted Issuers Registry: This contract houses the addresses of all trusted claim issuers associated with a specific token.
-
Claim Topics Registry: This contract maintains a list of all trusted claim topics related to the security token.
-
Identity Registry: This contract holds the identity contract addresses of all eligible users authorized to hold the token. It is responsible for claim verification.
-
Compliance Smart Contract: This contract independently operates to check whether a transfer is in compliance with the established rules for the token.
-
Security Token Contract: This contract interacts with the Identity Registry to check the eligibility status of investors, enabling token holding and transactions.
- Clone the repository:
git clone https://github.com/TokenySolutions/T-REX.git
- Install dependencies:
npm ci
- Compile the contracts:
hardhat compile
- Run tests:
hardhat test
For a detailed understanding of the T-REX protocol, please refer to the whitepaper. All functions of T-REX smart contracts are described in the T-REX documentation
We welcome contributions from the community. Please refer to the CONTRIBUTING guide for more details.
This project is licensed under the GNU General Public License v3.0.