Jack Dorsey’s Bitcoin-focused TBD business unit, a subsidiary of Block Inc., announced on Friday that it has created a new decentralized network: Web5.
Web5, the idea of creating a decentralized web with blockchain technology and cryptocurrencies, is based on the assumption that Web3 has the right intentions but uses the wrong tools.
Web5 leverages Bitcoin, the decentralized monetary network, and a wealth of robust computer science technologies to create a new ecosystem of decentralized identities, data storage, and applications where users control their personal information.
Highly decentralized developments on the internet over the past few decades such as BitTorrent and Tor have shown that blockchain technology is not a necessary component for decentralization. Instead, the blockchain has only proven necessary for a very specific purpose – to reduce the double-spending issue to successfully bring Bitcoin and peer-to-peer money into the digital realm.
Software such as TBD’s Web5, decentralized identifiers (DIDs), decentralized web node (DWNs), self-sovereign identity service (SSIS), and a self-sovereign identity software development kit (ssi-sdk) components and services. These components allow developers to focus on building user experiences while more easily enabling decentralized identity and data storage in applications.
Web5’s DID component leverages ION, an open, public and permissionless second-layer DID network running on top of the Bitcoin blockchain. It is based on the deterministic Sidetree protocol, which does not require private tokens, reliable validators, or additional consensus mechanisms to operate.
A DID is essentially a globally unique permanent identifier that does not require a central registration authority and is usually generated and stored cryptographically. It consists of a unique string of uniform resource identifiers (URIs) that serve as an identity in a system, with additional public key infrastructure (PKI) metadata describing encryption keys and other key PKI values linked to a unique, user-controlled, self-managing identifier. The target system, such as the Bitcoin blockchain.
ION only allows DIDs to be disabled by owners, so it is censorship resistant and includes registry capabilities to support decentralized package managers and app stores. The decentralized network can theoretically handle thousands of DID transactions per second.
Decentralized Web Node
The DWN used by Web5 is a reference implementation of the Decentralized Identity Foundation’s DWN draft specification. Two people from Block contributed to the specification: Moe Jangda as contributor and Daniel Bucher as editor.
According to the specification, a DWN is a data storage and message delivery mechanism that participants can use to find public or private data tied to a particular DID. It enables interaction between different entities that must authenticate each other to transmit information to each other.
“Decentralized Web Nodes are a network-like data store structure that enables an entity to run multiple nodes synchronized to the same state among each other, enabling the owning entity to secure, manage and transact with others its data without being dependent on location or provider. -specific infrastructure, interfaces or routing mechanisms”, according to the specification.
TBD’s goal is to produce the first version of the current draft specification together with a reference implementation by 1 July 2022.
Contributions from the development community are welcomed. Interested developers can submit proposals as pull requests to the GitHub repository. Likewise, issues can be submitted in the same GitHub repository.
Self-Sovereign Identity Service
Web5’s SSIS is a web service that wraps around ssi-sdk.
SSIS interacts with standards around verifiable credentials, revoking credentials, prompting, changing credentials, data schemes for credentials and other verifiable data, messaging using DWN, and the use of DIDs.
SSIS provides robust functionality to facilitate all verifiable interactions, such as creating, signing, publishing, editing, requesting, revoking, exchanging, validating, validating credentials of varying degrees of complexity, using these core standards, per web page.
Self Sovereign Identity SDK
ssi-sdk covers standards for self-sovereign identity.
According to its web page, “ssi-sdk aims to provide flexible functionality based on a set of standards-based primitives for building decentralized identity applications in a modular manner: limited dependencies between components”.