Technical Documentation

Sismo Connect is a crypto-native single sign-on method (SSO) for applications—whether on web2 or web3. Integration is simple with just a few lines of code: import the front-end package or React button for data requests, and verify proofs using the Sismo Connect Solidity library in your smart contract OR server package in your back end. Once integrated, applications can request private and granular data, while users can authenticate and selectively disclose their personal data with the power of zero-knowledge proofs (ZKPs).

In order to use Sismo Connect, you will need to have an appId registered in the Sismo Factory. Here is a tutorial.

In the schema below, you can observe how Sismo Connect functions with both onchain and offchain applications:

Sismo Connect Flow Walkthrough

  1. The Sismo Connect app requests proofs from its users by integrating the Sismo Connect React button from @sismo-core/sismo-connect-react or using the @sismo-core/sismo-connect-clientpackage. Users are redirected to their Data Vault to generate proofs.

  2. After successful proof generation, users are redirected back to the Sismo Connect app with their generated proofs. The app's front end can either call a smart contract or its back end to verify the proofs.

  3. The proof is received by the smart contract OR the backend and verified.

  4. Certain logic is then executed if proofs are valid, successfully ending the Sismo Connect flow.

Learn how to integrate Sismo Connect via these tutorials or gain more in-depth knowledge of Sismo Connect by learning what is a Sismo Connect Configuration, an Auth, a Claim and a Signature.

Packages

Here are the different GitHub links to Sismo Connect packages. You can find their documentation here.

Last updated