Lagrange State Proofs Case Study #1: Cross-Chain Decentralized Identity (DID)
September 27, 2022
Lagrange State Proofs are a new cryptographic primitive that enables trustless non-interactive and aggregatable verifications of cross-chain states. In this multi-part series, we‘ll explore how Lagrange State Proofs can unlock new use cases for cross-chain DApps with improved functionalities, user experience and security.
Decentralized Identity (DID) is the extension of digital identity and is being developed and adapted for the Web3 ecosystem by different protocols. A DID allows an individual to have a digital identity, ranging from a DID fulfilling know-your-customer (KYC) regulatory requirements to a DID for online gaming to a DID for their health or governmental records.
Most current DID solutions are being implemented on specific chains, significantly limiting their usefulness for cross-chain activities. For example, suppose that you have a KYC DID on Solana. You may want to use that DID to deposit money into a permissioned liquidity pool on Polygon that requires you to meet KYC requirements. As your DID is on Solana and the transaction that you want to execute is on Polygon, your options are limited.
From the perspective of a DID protocol developer on Solana, this single chain limitation reduces the reach of their protocol. Requiring a synchronization service or a messaging protocol to continually relay changes in identity status to other blockchains, one by one, is resource intensive and takes resources away from core product competencies.
This is where the non-interactive and trustless State Proofs that Lagrange Labs develops can provide DID protocols with easy cross-chain interoperability without having to change their protocol design. Lagrange State Proofs are a new cryptographic primitive that attest to the state of a chain at a specific point in time.
In the above example, an untrusted user can present proof of their DID on Solana to a DApp on Polygon and make a deposit to the permissioned liquidity pool within a single transaction. As Lagrange State Proofs are non-interactive, they do not require the user to interact with Solana during this process. Since Lagrange State Proofs are purely cryptographic, they also provide an improved set of security assumptions to bridges, messaging protocols and oracles. Moreover, a trust relationship between the user, Polygon, and Solana is not required as State Proofs are tamper proof and self-describing representations of cross-chain states. In summary, Lagrange State Proofs are a new cryptographic primitive that allow non-interactive and real-time trustless verification of cross-chain states, even when submitted by an untrusted user.
Lagrange Protocol’s mode of providing cross-chain interoperability is paradigmatically different from using bridges or messaging protocols. If using an intermediary messaging protocol (LayerZero, Axelar or CCIP) in the same scenario as above, a user would first be required to submit a transaction to a pre-specified Solana smart contract. That transaction would emit an event that must then be specifically listened for by the intermediary messaging protocol. Upon receiving this event, the intermediary protocol would collect a fee from the user and submit a transaction to Polygon that contains timestamped proof of the user’s DID. The user must then submit a second transaction to Polygon to deposit tokens into the liquidity pool based on the proof of their ID that was relayed by the intermediary.
This entire process would require a user to pay for a Solana transaction, an intermediary messaging protocol fee and two Polygon transactions. However, using Lagrange State Proofs, the user could instead prove their cross-chain ID and deposit tokens within a single Polygon transaction. State Proofs are also significantly more secure given that they don’t rely on multiple transactions and intermediaries to connect chains.
In the next article, we’ll explore how Lagrange State Proofs’ advantages in cost, security and speed are compounded in multi-chain aggregated proofs where a user wants to prove the state of n different chains simultaneously on the n+1 chain.