Welcome to the Civic On-chain Identity Gateway monorepo.
This repository contains libraries that help a smart contract or program on the Blockchain with regulations and guidances from FATF, US OFAC, US OCC BSA and others.
This repository focuses on the Solana blockchain, but other implementations, as well as cross-chain features, are coming soon.
On-chain applications require users to present a Gateway Token, which proves that they have been verified by a Gateway Provider to use the dApp. This token is tied to their wallet and is non-transferable.
This repository contains a number of libraries, which combine to define the on-chain gateway protocol.
Inside each chain's directory (e.g. solana/) are the following libraries:
Directory | Description | Published at |
---|---|---|
http-client | Used by dApp developers to discover and use gateway tokens and to interact with gatekeepers | npm |
gateway-ts | Wrapper library for the blockchain smart-contract or program | npm |
integration-lib | Used by on-chain program or smart-contract developers to restrict the contract to authorised users only | |
program | The source-code for the gateway program or smart-contract | |
gatekeeper-lib | Used by gatekeepers to allow them to issue gateway tokens on the chain. | npm |
Follow the steps in solana/integration-lib to add gateway functionality to your dApp
Follow the steps in solana/client to integrate the client library into to your dApp's client library and/or UI.
If you are interested in becoming a gateway provider, and issuing gateway tokens, please contact us at contact@identity.org
Before contributing, please read the contributing guidelines and code of conduct.