Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(WIP) docs: reordering of technical specs to reflect intra-communities structure #27

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
80 changes: 76 additions & 4 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,74 @@ To understand the philosophy of self-sovereign identity these starting guides an

## 💁‍♂️ Products & Services

Here you will find an overview of the technical specifications, grouped by level and sorted by community.

An overview of the technical specifications can be found in [this simplified map](https://github.com/decentralized-identity/decentralized-identity.github.io/blob/master/assets/map-of-adjacent-orgs-and-specs--sept-2020--one-sided.pdf) and [here](https://github.com/decentralized-identity/decentralized-identity.github.io/blob/master/assets/crosscommunity-architecture-survey-oct-2020.pdf) in a more detailed fashion.

### Verifiable Credentials

#### W3C
- [W3C Verifiable Credentials](https://www.w3.org/TR/vc-data-model/) - Specification of verifiable credentials (VCs).
- [W3C Verifiable Credentials Implementation Guidelines](https://www.w3.org/TR/vc-imp-guide/) - Implementation guidelines for verifiable credentials.

- [Data Integrity](https://w3c-ccg.github.io/data-integrity-spec/) - Specifications describing mechanisms for ensuring the authenticity and integrity of structured digital documents using cryptography, such as digital signatures and other digital mathematical proofs (used to be LD Proofs).

#### Decentralized Identity Foundation (DIF)
- [DIF Presentation Exchange](https://identity.foundation/presentation-exchange/) - Credential format and transport agnostic specification to articulate proof requirements and submit proofs.
- [DIF Credential Manifest](https://identity.foundation/credential-manifest) - Common data format for describing the inputs a subject must provide for credential issuance.

#### Hyperledger Foundation
- [Hyperledger Indy Improvement Proposals](https://github.com/hyperledger/indy-hipe/blob/master/index.md) - Specifications of Indy protocols and standards.
- [Hyperledger Aries RFCs](https://github.com/hyperledger/aries-rfcs/tree/main/features)

### DID Communication (DIDComm) and Sub-protocols
#### W3C
- [CHAPI](https://w3c-ccg.github.io/credential-handler-api/) - Credential Handler API: specification defining capabilities that enable third-party Web applications to handle credential requests and storage events.

#### DIF
- [DIF DIDComm Messaging (v2)](https://identity.foundation/didcomm-messaging/spec) - A secure, private communication methodology built atop the decentralized design of DIDs.

#### Hyperledger Foundation
- [x] [Aries RFC 0005 : DIDComm v1](https://github.com/hyperledger/aries-rfcs/tree/main/concepts/0005-didcomm) - First version of the DIDComm protocol spec. Refer to v2 specs.

### DIDs, Anchors and Registries
#### W3C
- [Decentralized Identifiers](https://www.w3.org/TR/did-core/) - Core specification of decentralized identifiers (DIDs).
- [Decentralized Identifier Resolution](https://w3c-ccg.github.io/did-resolution/) - Specification related to algorithms and guidelines for resolving DIDs and dereferencing DID URLs.
- [DID Specification Registries](https://www.w3.org/TR/did-spec-registries/) - Official registry for all known global parameters, properties, and values used by the Decentralized Identifier ecosystem
- [did:key Method](https://w3c-ccg.github.io/did-method-key/) - Specification describing a non-registry based DID Method based on expanding a cryptographic public key into a DID Document.

---

- [WebKMS](https://w3c-ccg.github.io/webkms/) - Cryptographic Key Management Systems for the Web.


#### DIF
- [SideTree](https://identity.foundation/sidetree/spec/) - Protocol for creating scalable DID networks that can run atop any existing decentralized anchoring system.
- [Key Event Receipt Infrastructure (KERI) collected resources](https://keri.one/keri-resources/) - Collected list of resources on Key Event Receipt Infrastructure.

## 🛠 Tools & Technologies

### Hyperledger Foundation
anagoessens marked this conversation as resolved.
Show resolved Hide resolved

- [Hyperledger Aries](https://www.hyperledger.org/use/aries) - Shared, reusable, interoperable tool kit designed for initiatives and solutions focused on creating, transmitting and storing verifiable digital credentials.
- [Aries Toolbox](https://github.com/hyperledger/aries-toolbox) - Tools for developing agents and testing that they are compatible with other agents in the ecosystem.
- [Aries Framework .NET](https://github.com/hyperledger/aries-framework-dotnet) - Provides a universal library for building Aries SSI applications for the cloud, mobile and IoT stack.
- [Aries Framework Go](https://github.com/hyperledger/aries-framework-go) - A flexible toolkit to enable the usage of DIDs, DIDComm and verifiable credential exchange.
- [Aries Framework JavaScript](https://github.com/hyperledger/aries-framework-javascript) - A framework for building SSI agents and DIDComm services for desktop, mobile and in the cloud, built using TypeScript.
- [Aries Mobile Agent React Native](https://github.com/hyperledger/aries-mobile-agent-react-native) - An open source Aries mobile agent build with React Native and Aries Framework JavaScript.
- [Aries Mobile Agent Xamarin](https://github.com/hyperledger/aries-mobileagent-xamarin) - An open source Aries mobile agent build with Xamarin and Aries Framework .NET.
- [Aries Cloud Agent Python](https://github.com/hyperledger/aries-cloudagent-python) - An easy to use Aries agent for building SSI services using any language that supports sending/receiving HTTP requests.
- [Hyperledger Indy](https://www.hyperledger.org/use/hyperledger-indy) - Tools, libraries, and reusable components for providing digital identities rooted on blockchains or other distributed ledgers
- [Indy SDK](https://github.com/hyperledger/indy-sdk) - Everything needed to build applications that interact with an Indy distributed identity ledger.
- [Hyperledger Fabric](https://www.hyperledger.org/use/fabric) - Enterprise-grade permissioned distributed ledger framework for developing solutions and applications.
anagoessens marked this conversation as resolved.
Show resolved Hide resolved
- [Hyperledger Besu](https://www.hyperledger.org/use/besu) - Ethereum client designed to be enterprise-friendly for both public and private permissioned network use cases.
- [Hyperledger Ursa](https://www.hyperledger.org/use/ursa) - Shared cryptographic library, it enables implementations to avoid duplicating other cryptographic work and hopefully increase security in the process.

### DIF
- [ION](https://github.com/decentralized-identity/ion) - Public, permissionless, DID network that implements the blockchain-agnostic Sidetree protocol on top of Bitcoin (as a 'Layer 2' overlay) to support DIDs/DPKI (Decentralized Public Key Infrastructure) at scale.
- [sidetree.js](https://github.com/transmute-industries/sidetree.js) - Simple-as-possible TypeScript implementation of the Sidetree version 1.0 protocol.
- [DIDComm Implementations](https://github.com/decentralized-identity/didcomm-messaging/#implementations) - Links to some implementations of the DIDComm v2 spec.
What projects are out there using self-sovereign identity.

- [List of Global Adoption (projects and their status)](https://www.notion.so/Global-Verifiable-Credential-Adoption-78c7e4c5f2a34a228a55d03db54ab399)
Expand Down Expand Up @@ -109,15 +177,19 @@ Notable self-sovereign identity products and services that are in production.
- [SSI Kit](https://walt.id/ssi-kit) - Open source infrastructure that offers everything developers need to use SSI (to build end-to-end use cases and applications).
- [Universal DID Resolver](https://github.com/decentralized-identity/universal-resolver) - Universal DID resolver implementation and method specific drivers.
- [Universal DID Registrar](https://github.com/decentralized-identity/universal-registrar) - Universal DID registrar implementation and method specific drivers.
- [JavaScript: DID Client (did-io)](https://github.com/digitalbazaar/did-io) - A DID resolution library for JavaScript.
- [JavaScript: DID](https://github.com/ceramicnetwork/js-did) - A simple library to interact with DIDs that conform to the DID-provider interface.
- [JavaScript: vc-js](https://github.com/digitalbazaar/vc-js) - A JavaScript library for issuing and verifying Verifiable Credentials.
- [JavaScript: vc.js](https://github.com/transmute-industries/vc.js) - Support Verifiable Credentials in JavaScript.
- [JavaScript: DID Resolver](https://github.com/decentralized-identity/did-resolver) - A simple common interface for JavaScript applications to resolve DID documents from Decentralized Identifiers (DIDs).
- [ethr DID Resolver](https://github.com/decentralized-identity/ethr-did-resolver) - Use Ethereum addresses as fully self managed Decentralized Identifiers and wrap them in a DID Document.
- [web DID Resolver](https://github.com/decentralized-identity/web-did-resolver) - Use domains accessed through https as Decentralized Identifiers and retrieve an associated DID Document.
- [Rust: did-key.rs](https://github.com/decentralized-identity/did-key.rs) - Provide basic support for `did:key` methods.

### Others
- [IOTA Identity](https://github.com/iotaledger/identity.rs) - Implementation of the decentralized identity standards such as DIDs and VCs by W3C for the IOTA Tangle.
- [JavaScript: DID Client (did-io)](https://github.com/digitalbazaar/did-io) - A DID resolution library for JavaScript.
- [JavaScript: DID](https://github.com/ceramicnetwork/js-did) - A simple library to interact with DIDs that conform to the DID-provider interface.
- [JavaScript: vc-js](https://github.com/digitalbazaar/vc-js) - A JavaScript library for issuing and verifying Verifiable Credentials.
- [JavaScript: vc.js](https://github.com/transmute-industries/vc.js) - Support Verifiable Credentials in JavaScript.

## 💁‍♂️ Products & Services
## 🎓 Tutorials & Guides

- [Aries Framework JavaScript Tutorials](https://www.youtube.com/playlist?list=PLopHpZBbk8wM4FRFZl3LXeAhz6fbX4_lk) - A playlist of useful beginner tutorials on how to use Aries Framework JavaScript.
Expand Down