Sismo Release Notes #3

Sismo Release Notes #3

Just on time for ETHGloabl Waterloo, we shipped several updates that unlock new Sismo Connect use cases and improve the devx.

New Networks

Sismo Connect is now deployed on 11 chains, including testnets.
  • Ethereum Mainnet (chainId: 1)
  • Polygon (chainId: 137)
  • Optimism (chainId: 10)
  • Optimism Goerli (chainId: 420)
  • Arbitrum (chainId: 42161)
  • Arbitrum Goerli (chainId: 421613)
  • Gnosis (chainId: 100)
  • Goerli (chainId: 5)
  • Mumbai (chainId: 80001)
  • Sepolia (chainId: 11155111)
  • Scroll Alpha Testnet (chainId: 534353)

Start building on Sismo

New dev tools has been added to help you get started with Sismo Connect quickly.

  • Read the documentation. New ‘Welcome to Sismo’ section, Vault Identifiers explained, Sismo Connect case studies.
  • Follow the onchain tutorial, designed to guide you through the integration steps of Sismo Connect. It explains the process of creating a Sybil-resistant gated airdrop.
  • Fork the onchain boilerplate. It demonstrates the same example of the airdop.
Boilerplate Demo
Boilerplate Demo

Improved devx: Impersonation Mode

To quickly test the flow, you can now use impersonation mode. Pick any account from any Data Group from Sismo Hub and use it to generate a proof based on a Sismo Connect request for which you would not be eligible otherwise.

Impersonation mode demo
Impersonation mode demo

Introducing Vault Identifiers: Sovereign & Anonymous ID for Sismo Connect Apps

A Vault Identifier, also known as vaultId, is a unique user identifier specific for a Sismo Connect app. It is calculated using the following formula:

vaultIdentifier = hash(vaultSecret, hash(appId, derivationKey)), where

vaultSecret - a confidential piece of information exclusive to a Data Vault’s owner. It must be understood as a seed/private key of a user. appId - a unique identifier for an associated Sismo Connect application. derivationKey- a flag, that can be used by developers to generate multiple user identifiers for a single Data Vault owner. By default, this is set to 0.

The vaultId is computed by the user when they generate a ZK proof of a Data Gem ownership, thus enabling them to associate a Data Gem owner by its vaultId.

We wrote two case studies to explain how Vault Identifiers can be used through real-world examples.

With new Hydra S3 proving scheme, it is possible to use group of vaultId in Sismo Connect apps.

  "sismo-connect-app(appid=0x9dd13bc62ae6809fe9de95475111fc2a):0x0108f80d94b4af8cb464f09ef184b11c539127b5a1172765a76effbab52fd03c": "1",
  "sismo-connect-app(appid=0x9dd13bc62ae6809fe9de95475111fc2a):0x01c8911decfea1f287b1996b739cad142a9e93f3369a0fe1daf74dd65b8ad716": "1",
  "sismo-connect-app(appid=0x9dd13bc62ae6809fe9de95475111fc2a):0x024dcb9271eb5ed2b53af76edfee9b2e55c45f5006174f2a808013706f48de4f": "1",
Example of the vaultId group: Group of Privacy Is Normal Lottery Winners