Home Ethereum Bringing Ecosystems Collectively: How W3C DIDs and VCs may help with Ethereum’s Three Transitions

Bringing Ecosystems Collectively: How W3C DIDs and VCs may help with Ethereum’s Three Transitions

0
Bringing Ecosystems Collectively: How W3C DIDs and VCs may help with Ethereum’s Three Transitions


12 September 2024

Ethereum Open Neighborhood Initiatives L2 Requirements Working Group

Vitalik Buterin recognized three essential transitions for Ethereum: scaling by way of L2 rollups to scale back prices, enhancing pockets safety through sensible contract wallets for higher safety and person expertise, and advancing privateness by way of privacy-preserving mechanisms. This text explores how integrating W3C Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs) can tackle a few of these challenges by bettering the administration of identities, keys, and addresses, leveraging current decentralized id options to help Ethereum’s transitions effectively to maneuver to a extra L2-based world.

As Vitalik Buterin identified in a sequence of 2023 articles, notably his Three Transitions article,  Ethereum is transitioning from a younger experimental expertise right into a mature tech stack that would carry an open, world, and permissionless expertise to common customers. Nevertheless, he believes that there are three main technical transitions that the stack must endure, roughly concurrently:

  • L2 Scaling Transition: This includes transferring the ecosystem to rollups to handle the excessive transaction prices on Ethereum, which have reached $3.75 and even $82.48 throughout a bull run
  • Pockets Safety Transition: The shift to sensible contract wallets (account abstraction) is critical for enhanced person consolation and safety in storing funds and non-financial belongings, transferring away from centralized exchanges and single non-custodial wallets.
  • Privateness Transition: Guaranteeing privacy-preserving funds transfers and growing different privacy-preserving mechanisms comparable to social restoration and id programs is crucial to forestall customers from resorting to centralized options that provide just some or just about no privateness.

Vitalik emphasizes that these transitions are essential and difficult as a result of intense coordination required to implement them. Particularly, he mentioned the implications of those transitions on the connection between customers and addresses, cost programs, and key administration processes. The connection between customers and their addresses, and key rotation/restoration are a significant concern each technically and from a usability perspective – UX determines success or failure regardless of how good the underlying expertise is.

On this article, we are going to delve into these latter points and talk about how options from one other ecosystem, particularly the one centered on decentralized id, additionally sometimes called self-sovereign id, can considerably support with the transitions with out having to reinvent too many wheels.

The issue assertion within the context of Ethereum’s technical transitions could be summarized as follows in accordance with Vitalik:

  • Advanced Funds: The transitions make easy actions like paying somebody extra complicated, requiring extra info than simply an tackle as a result of the person wants to find out which funds to make use of, the place to ship it to, and particular cost directions usually involving id info.
  • Sensible Contract Wallets: Sensible Contract wallets add technical points that have to be addressed, comparable to guaranteeing wallets observe ETH despatched by sensible contract code together with monitoring throughout networks.
  • Privateness Challenges: Privateness-preserving transactions, if carried out, introduce new challenges, comparable to needing a “spending public key” and encrypted info for the recipient to search out the cost and how you can choose it up.
  • Id Adjustments: The idea of an “tackle” will change, doubtlessly requiring a mixture of a number of addresses, encryption keys, and different information to work together with a person.

These factors, subsequently, increase the query of how we handle id, addresses, and their keys collectively, and in a approach that doesn’t confuse the person, and compromise the safety of their belongings.

Given the above drawback assertion, the idea of an “tackle” within the Ethereum ecosystem, is evolving, with the normal thought of an tackle as a single cryptographic identifier changing into out of date. As an alternative, “directions for how you can work together with me” will contain a mixture of addresses on a number of Layer 2 (L2) platforms, stealth meta-addresses, encryption keys, and different information. In his article, Vitalik factors out that one doable strategy could be utilizing the Ethereum Identify Service (ENS) information to include all id info. Sending somebody an ENS title like “alice.eth” would enable them to entry all the required particulars for interplay, together with cost and privacy-preserving strategies. Nevertheless, this methodology has drawbacks, comparable to tying an excessive amount of to 1’s title and the shortcoming to have trustless counterfactual names, that are important for sending tokens to new customers with no prior blockchain interplay. As well as, the ENS system is a rent-seeking system. Due to this fact, extra broadly, it’s not equitable and doesn’t assure continued possession of 1’s id; that isn’t a tenable scenario. An alternate resolution includes keystore contracts that maintain all id info. These contracts could be counterfactual-friendly and should not tied to a particular title, permitting for extra flexibility and privateness.

This brings us to the subject of keys controlling “addresses”. Particularly, key rotation and key restoration in a multi-address Ethereum Ecosystem. Key rotation is simply changing into an essential characteristic with sensible contract wallets and account abstraction the place the controlling tackle of a sensible contract pockets would possibly change as a result of a key’s rotated or recovered which necessitates a brand new controlling tackle. No matter key rotation or key restoration, the normal methodology could be to run onchain-procedures on every tackle individually. That is impractical attributable to fuel prices, counterfactual addresses, and privateness considerations. As talked about earlier than, Vitalik proposes the utilization of keystore contracts that exist in a single location and level to verification logic at completely different addresses. This could enable the creation of a proof of the present spending key for transactions. This requires a restoration structure that separates verification logic and asset holdings, simplifying the restoration course of by requiring solely a cross-network proof for restoration.

On this context, Decentralized Identifiers can leverage keystore contracts to empower a modular verification logic for contract accounts that verifies zk proofs by way of a particular validation module and embeds a system to standardize onchain executions.

Including privateness measures, comparable to encrypted pointers and zk proofs, will increase complexity. Nevertheless, it affords potential synergies with keystore contracts for persistent addresses because the persistent tackle might be “cloaked” in a zk proof.

What does this all imply for sensible contract wallets? Historically, wallets had been designed to safe belongings by defending the non-public key related to on-chain belongings. If the important thing was to be modified, the previous one might be safely disclosed with none danger. Nevertheless, in a zero-knowledge world wallets want to guard information moreover belongings. The instance of Zupass, a ZK-SNARK-based id system, illustrates that customers can maintain information regionally and solely reveal it when needed. Nevertheless, dropping the info’s encryption key means dropping entry to all encrypted information. Due to this fact, the administration of encryption keys can be changing into more and more essential. Vitalik means that a number of gadgets or secret sharing amongst (key) “guardians” might be used to mitigate the danger of dropping encryption keys. Nevertheless, this strategy just isn’t appropriate for asset restoration as a result of potential danger of collusion amongst “guardians”. Lastly, the idea of an tackle as a person’s on-chain identifier must change, and, subsequently, wallets should handle each asset restoration and encryption key restoration to keep away from overwhelming customers with complicated restoration processes aka poor UX. For instance, Signal In With Ethereum depends on the onchain tackle and the person’s non-public key controlling that key to generate the authentication message. Nevertheless, there isn’t any notion of a one-to-many relationship on this strategy, and no notion of a sensible contract pockets as the first delegate of the person. The verifying occasion, additionally known as the relying occasion, subsequently, can not assess the scope of the authorization(s) required for the person when logging wherein is essential relying on the performance the verifying occasion makes obtainable to the person tackle.

The Three Transitions are extra than simply technical enhancements; they characterize radical shifts in how customers interact with Ethereum-based stacks, particularly within the areas of id, key administration, and addresses, thereby, evolving the Ethereum ecosystem from its present state right into a extra user-friendly and accessible platform that prioritizes scalability, safety, and value. Due to this fact, one would naturally ask the next query: Are there instruments and frameworks already obtainable that might be utilized by the neighborhood, particularly concerning id, key administration, and privateness to ease the transitions? The reply to that may be a particular sure. Particularly, the ecosystem that has developed across the idea of decentralized id and its requirements, frameworks, and quite a few reference implementations has produced tooling that’s readily usable inside the Ethereum stack.

What’s the Decentralized Id Ecosystem?

The decentralized id ecosystem is targeted on giving people management over their digital identities with out counting on centralized authorities. It leverages blockchain expertise and cryptographic rules to make sure privateness, safety, and user-centric id administration. On the core of this ecosystem are two key ideas: Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs).

Decentralized Identifiers (DIDs):

DIDs are a brand new kind of identifier that allows verifiable, self-sovereign digital identities. They’re distinctive, globally resolvable identifiers related to a topic, comparable to a person, group, or machine. DIDs are decentralized by design, that means they don’t depend on a central registry or authority for his or her creation or administration. As an alternative, they’re created and managed by the customers or entities appearing on their behalf. DIDs sometimes make the most of public-key cryptography to make sure safe interactions and permit the topic to show possession and management of their id and carry out particular approved actions comparable to assertions, authentication, authorization, and encryption.

Verifiable Credentials (VCs):

Verifiable Credentials are digital credentials that include claims a couple of topic’s id, attributes, or {qualifications}, issued by trusted entities often called issuers. VCs are tamper-evident and cryptographically signed to make sure their integrity and authenticity. Importantly, VCs are transportable and could be offered by the topic to verifiers, comparable to service suppliers or relying events, with out the necessity for these verifiers to contact the issuer instantly. This allows seamless and privacy-preserving id verification throughout completely different domains and contexts.

A number of key gamers and organizations are contributing to the event and adoption of decentralized id applied sciences:

  • Decentralized Id Basis (DIF): DIF is a consortium of organizations collaborating to develop requirements and protocols for decentralized id programs. It promotes interoperability and innovation within the area.
  • World Huge Internet Consortium (W3C): W3C hosts the Credentials Neighborhood Group, which incubates work on verifiable credentials and associated applied sciences, and the Decentralized Identifier and Verifiable Credentials Working Teams, that are growing updates to the respective specs
  • Hyperledger Indy: Hyperledger Indy is an open-source challenge below the Linux Basis. It’s centered on offering instruments and libraries for constructing decentralized id programs.
  • Sovrin Basis: Sovrin Basis operates the Sovrin Community, a public permissioned blockchain designed for decentralized id administration.
  • Microsoft, IBM, and different tech corporations: A number of main tech corporations are actively concerned in growing decentralized id options, contributing to requirements improvement, and constructing reference implementations.

Requirements play a vital position in guaranteeing interoperability and compatibility inside the decentralized id ecosystem. Some key requirements and reference implementations embody:

  • Decentralized Identifier (DID) Specification: Defines the syntax and semantics of DIDs, together with strategies for his or her creation, decision, and administration.
  • Verifiable Credentials Knowledge Mannequin: Specifies the construction and format of verifiable credentials, together with JSON-LD contexts for representing claims.
  • DIDComm Messaging Protocol: Allows safe, non-public communication between DIDs utilizing end-to-end encryption and cryptographic authentication.
  • SSI (Self-Sovereign Id) Protocols: Numerous protocols and frameworks, comparable to DID Auth, Presentation Change, and VC API, facilitate safe interactions and transactions inside the self-sovereign id paradigm.
  • Hyperledger Aries: A framework that gives a set of interoperable elements for constructing decentralized id options, together with brokers, wallets, and protocols.
  • Privado ID former Polygon ID: A set of instruments constructed for builders to create safe and trusted relationships between customers and purposes within the Web3.  It focuses on decentralized id, giving customers management over their information. The toolkit relies on the open-sourced iden3 protocol.
  • QuarkID: An open-source DID resolution presently deployed on ZKsync Period with digital credentials being issued by the Metropolis of Buenos Aires.

Beneath, we element how a decentralized id framework could be efficiently utilized to the cross-network challenges for id, tackle, and key administration beforehand mentioned.

Utilizing Decentralized Identifiers (DIDs)

Downside: Managing id for a person throughout varied Ethereum networks is complicated.

DID Answer for Identities:

  • DIDs present globally distinctive identifiers which are resolvable (to their DID Doc) and cryptographically verifiable throughout any blockchain community.
  • Every DID is related to a DID Doc which comprises details about the connection of a DID with a set of cryptographic keys, the features these keys can carry out comparable to verification, authentication, authorization, assertion, and encryption, in addition to service endpoints comparable to API endpoints to addresses managed by the keys listed within the DID Doc.
  • The connection of DID to their DID Paperwork or respective cryptographic representations could be saved on any blockchain community, guaranteeing tamper-proof and protracted id information.

DID Paperwork for Deal with Administration:

Downside: Customers have completely different addresses on the Ethereum mainnet, testnets, and Layer 2 options, together with counterfactual addresses.

DID Doc resolution:

  • A DID doc has a verificationMethod information property permitting a DID proprietor or controller to specify symmetric and uneven cryptographic keys for any desired curve comparable to secp256k1 utilized by Ethereum stacks.
  • The verificationMethod for a key additionally permits the person to specify an ID for the verification methodology. That is sometimes the DID plus a fraction as per the DID specification. This fragment permits two essential issues. First, it permits you to specify a community identifier, for instance, “1” if the secret’s an Ethereum key, and different numbers if that key just isn’t on an Ethereum community. As well as, the fragment could be prolonged to point if the important thing belongs to a counterfactual tackle or a sensible contract pockets. For instance, “did:ion:1234xxxxddd4444-#1-counter” would point out that the general public key recognized belongs to a counterfactual Ethereum tackle. As well as, if required for sure causes to individually determine an tackle on Polygon PoS vs Arbitrum One the “1” might be changed by the chainId of the goal community, e.g. 137 for Polygon PoS.
  • Lastly, a sensible contract pockets could be given its personal DID and managed by the DIDs of the sensible contract pockets homeowners the place every proprietor identifies a number of controlling keys for the pockets as specified of their DID doc. This final level permits for 2 main enhancements for sensible contract wallets – key rotation aka key restoration, and an arbitrary variety of controlling keys with out revealing these controlling keys

DID Paperwork for Key Administration together with Social Restoration:

DID Answer for Identities:

Downside: Key restoration and key rotation for Ethereum addresses, notably sensible contract wallets, are complicated and should not user-friendly.

DID Doc resolution:

  • When a public key related to a DID have to be rotated for safety or restoration functions, a person can merely replace a DID Doc and exchange the previous public key with a brand new public key within the verificationMethod utilizing one other controlling key. This could be a key the person instantly controls, or if management has been delegated, by one other person controlling a DID listed as controller.
  • Due to this fact, this can be achieved for a Sensible Contract pockets. Every controller can independently replace the important thing within the verificationMethod related to their DID. That is sufficient as a result of the person can produce a cryptographic dedication that the replace was achieved accurately that may be submitted to and verified by the sensible contract pockets.    

Privateness (Zero-Information) Facet of DIDs and DID Paperwork

  • DID Paperwork could be represented as zero-knowledge proofs by first merkelizing their JSON-LD doc, after which verifying Merkle Proofs of relationships of DID-to-key and DID-to-functional-capability (as represented by way of a number of cryptographic keys).
  • Utilizing zk-SNARKs, specifically, permits environment friendly verification of cryptographic key claims on Ethereum networks.
  • For instance, the zero-knowledge circuit for a legitimate key rotation replace of a DID doc would do two issues: a) confirm that the updating key’s within the DID doc and is a controlling key by verifying a Merkle proof of inclusion within the DID doc and b) confirm the digital signature of the controlling key over the basis hash of the previous DID doc. The general public inputs to the proof could be the Merkle Root of the brand new merkelized DID Doc and the basis hash of the previous DID doc, and the non-public inputs could be the Merkle proof and the digital signature. The sensible contract would solely need to confirm the proof, test that the previous root hash was registered, after which replace the previous with the brand new root hash.
  • This has the benefit that no info is leaked about which addresses management the sensible contract pockets. Each sensible contract pockets transaction might be absolutely nameless if all transactions submitted to the sensible contract have a recursive zero-knowledge proof that verifies {that a}) the general public key belonging to the tackle submitting the transaction is a controlling key of the DID that may be a sensible contract proprietor and b) {that a} zero-knowledge proof that the transaction was signed by the proper quorum of signatures of the sensible contract pockets homeowners was correctly verified by a verifier within the circuit itself. 

Utilizing Verifiable Credentials (VCs)

Downside: The entity performing a key operation comparable to a key rotation or a digital signature for a monetary transaction should show that it’s a authorized entity that meets all relevant compliance guidelines for a jurisdiction that has compliance oversight.

VC Answer for Compliant Key Operations:

  • W3C VCs enable assertions to be made in regards to the topic of the credential comparable to “Alice is a authorized enterprise in Brazil”, or, “This enterprise is a authorized entity within the US and a registered Dealer-Vendor”, or, “The authorized US entity A is a legally registered Dealer-Vendor and is legally approved to behave on behalf of the authorized US entity B”. 
  • Given the standardized construction and public context reference recordsdata that specify the VC commonplace and particular VC sorts, every VC could be readily become a zk proof given a standardized, and publicly obtainable zk circuit. Revealing solely the authorized id of the VC issuer as the basis of belief, comparable to a KYC supplier.
  • Such zk proofs, specifically, ZK-SNARKs could be submitted with any transaction and verified in a sensible contract comparable to a sensible contract pockets or a DeFi protocol.
  • This permits for compliant transactions on Ethereum stacks with out revealing any delicate id or different related compliance information.

Helpful Implementations for Ethereum Networks

There are dozens of various implementations of the W3C DID specification. Whereas many DID strategies should not as scalable as needed, or not simply anchored on a blockchain, a number of DID strategies match the invoice for the Ethereum ecosystem – permissionless, blockchain-anchored, scalable, and low-cost. All of those DID strategies are based mostly on the Sidetree Protocol.  The Sidetree Protocol is a “Layer 2” DID protocol that may be carried out on prime of any occasion anchoring system, together with Ethereum, and is compliant with W3C tips. The Sidetree protocol doesn’t require centralized authorities, distinctive protocol tokens, reliable intermediaries, or secondary consensus mechanisms. Particularly, the Sidetree protocol defines a core set of DID PKI state change operations, structured as delta-based Battle-Free Replicated Knowledge Varieties (i.e. Create, Replace, Get well, or Deactivate), that mutate a Decentralized Identifier’s DID Doc state.

Due to this fact, by leveraging an Ethereum-based implementation of Sidetree, the Ethereum ecosystem can make sure that every person has a self-sovereign id, that’s each non-public and interoperable throughout completely different L2s and purposes.

We imagine that the mixing of W3C DIDs and VCs into Ethereum’s infrastructure is essential for navigating the upcoming transitions. They supply the required instruments for managing identities, keys, and tackle safety, and privateness, and are aligned with the decentralized nature of blockchain expertise.

Sadly, the Ethereum ecosystem and the decentralized id (DID) ecosystem haven’t intersected a lot, although each share a concentrate on decentralization. The Ethereum ecosystem has primarily focused on advancing and scaling its blockchain expertise, whereas the DID ecosystem has prioritized growing requirements and protocols for governing digital identities. In consequence, alternatives for collaboration between these two ecosystems have been restricted.

We see the Three Transitions as a chance to alter this and begin a better collaboration between the Decentralized Id and Ethereum ecosystems.

Acknowledgments

Particular thanks go to Eugenio Reggianini ([email protected]) for proofreading the manuscript and including essential content material.

LEAVE A REPLY

Please enter your comment!
Please enter your name here