/on-chain-identity-gateway

Identity.com's on-chain gateway framework

Primary LanguageTypeScriptMIT LicenseMIT

On-chain Identity Gateway

Welcome to the Identity.com 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.

Cross-chain

This repository focuses on the Solana blockchain, but other implementations, as well as cross-chain features, are coming soon.

The Model

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.

Component View Source

API Documentation

Solana

Repo structure

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

Integration

For DeFi developers (Solana)

On-chain:

Follow the steps in solana/integration-lib to add gateway functionality to your dApp

Client/UI:

Follow the steps in solana/client to integrate the client library into to your dApp's client library and/or UI.

For Gateway providers

If you are interested in becoming a gateway provider, and issuing gateway tokens, please contact us at contact@identity.org

Contributing

Before contributing, please read the contributing guidelines and code of conduct.