Skip to content

Commit

Permalink
GitBook: [#59] No subject
Browse files Browse the repository at this point in the history
  • Loading branch information
dombrn authored and gitbook-bot committed Jun 2, 2022
1 parent 7234d85 commit 045c50f
Show file tree
Hide file tree
Showing 17 changed files with 72 additions and 77 deletions.
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,5 @@

This documentation will help you understand how the Wallet works and how you can use it. However, it presumes a certain level of knowledge about Self-Sovereign Identity (SSI) so

* if you are already familiar with SSI, you can jump to the [introduction of the Wallet](what-is-the-wallet/wallet/). 
* if you are new to SSI, please continue with our [introduction to Self-Sovereign Identity](what-is-the-wallet/self-sovereign-identity/).

* if you are already familiar with SSI, you can jump to the [introduction of the Wallet](wallet-kit/wallet/).
* if you are new to SSI, please continue with our [introduction to Self-Sovereign Identity](wallet-kit/self-sovereign-identity/).
24 changes: 12 additions & 12 deletions SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# Table of contents

## What is the wallet
## Wallet Kit

* [Introduction](README.md)
* [Self-Sovereign Identity](what-is-the-wallet/self-sovereign-identity/README.md)
* [SSI | Basics](what-is-the-wallet/self-sovereign-identity/ssi-101.md)
* [Technology & Concepts](what-is-the-wallet/self-sovereign-identity/technology-and-concepts.md)
* [Wallet Kit](what-is-the-wallet/wallet/README.md)
* [Wallet Kit | Basics](what-is-the-wallet/wallet/functional-overview/README.md)
* [Overview](what-is-the-wallet/wallet/functional-overview/overview.md)
* [Functionality](what-is-the-wallet/wallet/functional-overview/functionality.md)
* [Architecture](what-is-the-wallet/wallet/architecture.md)
* [Issuer & Verifier Portals](what-is-the-wallet/issuer-and-verifier-portals/README.md)
* [Functionality](what-is-the-wallet/issuer-and-verifier-portals/functionality.md)
* [Architecture](what-is-the-wallet/issuer-and-verifier-portals/architecture.md)
* [Self-Sovereign Identity](wallet-kit/self-sovereign-identity/README.md)
* [SSI | Basics](wallet-kit/self-sovereign-identity/ssi-101.md)
* [Technology & Concepts](wallet-kit/self-sovereign-identity/technology-and-concepts.md)
* [Wallet Kit](wallet-kit/wallet/README.md)
* [Wallet Kit | Basics](wallet-kit/wallet/functional-overview/README.md)
* [Overview](wallet-kit/wallet/functional-overview/overview.md)
* [Functionality](wallet-kit/wallet/functional-overview/functionality.md)
* [Architecture](wallet-kit/wallet/architecture.md)
* [Issuer & Verifier Portals](wallet-kit/issuer-and-verifier-portals/README.md)
* [Functionality](wallet-kit/issuer-and-verifier-portals/functionality.md)
* [Architecture](wallet-kit/issuer-and-verifier-portals/architecture.md)

## Getting started

Expand Down
10 changes: 5 additions & 5 deletions getting-started/quick-start/README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
# Quick Start

There are different ways to get started with the Wallet, the Issuer and the Verifier Portal:
There are different ways to get started with the Wallet Kit, the Issuer and the Verifier Portal:

* [**Docker Compose**](docker-compose.md): Quick way to launch and try out the latest builds of the services. No build environment required, adaptation of default config may be necessary, depending on your setup.
* [**Local Docker Build**](local-build/#docker-build): Quickly build the individual services using Docker and launch the docker images. No local build environment required, besides docker.
* [**Local Build**](local-build/#local-build): Build and run the services locally on your machine. Requires build environment, including JDK 16, Gradle, NodeJs and Yarn.
* ****[**Dependency (JVM)**](dependency-jvm.md): The wallet-backend can be used directly as [**JVM-dependency**](dependency-jvm.md) **** for Maven or Gradle. 
* ****[**Dependency (JVM)**](dependency-jvm.md): The Wallet Kit ("wallet backend") can be used directly as [**JVM-dependency**](dependency-jvm.md) **** for Maven or Gradle. 

[**CLI tool**](../cli.md): The wallet-backend comes with a **** [**command-line interface**](../cli.md) to conveniently configure the issueer DID among other configuration options.
[**CLI tool**](../cli.md): The Wallet Kit comes with a **** [**command-line interface**](../cli.md) to conveniently configure the issueer DID among other configuration options.

Once you have the wallet backend up and running, you may want to explore the [**REST APIs**](../rest-apis.md) exposed by the service.
Once you have the Wallet Kit ("wallet backend") up and running, you may want to explore the [**REST APIs**](../rest-apis.md) exposed by the service.

If you just want to try out the wallet and the issuer and verifier portals, you may directly use our [**public deployments**](../public-deployments.md), which don't require any configuration or build environment.
If you just want to try out the Wallet Kit and the Issuer and Verifier Portals, you may directly use our [**public deployments**](../public-deployments.md), which don't require any configuration or build environment.

Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Issuer & Verifier Portals

The issuer and verifier portals are **demo web portals** showcasing the scenarios of getting verifiable credentials issued into the wallet by a certified issuer or presenting a credential to a relying party. They can be used as reference implementations for issuers and verifiers to implement their own service platforms.
The Issuer and Verifier Portals are **demo web portals** showcasing the scenarios of getting verifiable credentials issued into the wallet by a certified issuer or presenting a credential to a relying party. They can be used as reference implementations for issuers and verifiers to implement their own service platforms.

For credential and presentation exchange, we make use of the OIDC/SIOP protocols described in [OIDC](../../concepts/oidc/).



![Architecture](../wallet/architecture.png)
![Architecture](../../what-is-the-wallet/wallet/architecture.png)
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ Since the issuer and verifier backends are currently integrated with the wallet-

To save you the roundtrip, in case you ended up on this page, here's the architecture diagram once more:

![Architecture](../wallet/architecture.png)
![Architecture](../../what-is-the-wallet/wallet/architecture.png)
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Wallet
# Wallet Kit

This section elaborates the theory behind the Wallet:

* Wallet Basics - Learn what the Wallet is and what it does.
* Wallet Basics - Learn what the Wallet Kit is and what it does.
* Architecture - Explore the architecture and components.
7 changes: 7 additions & 0 deletions wallet-kit/wallet/architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Architecture

The Wallet Kit (or "wallet backend") as well as the Issuer and Verifier Portals (or "Issuer and Verifier backends") are built as abstraction layers over the SSI Kit. They provide **user data separation** (user contexts of the underlying data stores) and **high-level APIs** for the interaction with the **web frontends** and the **credential exchange protocols** such as OIDC and SIOP.

Moreover, the wallet backend can be seen as an abstraction over the "Custodian" component of the SSI Kit, whereas the Issuer and Verifier backends build on top of the "Signatory" and "Auditor" components, respectively.

![Wallet architecture](../../what-is-the-wallet/wallet/architecture.png)
7 changes: 7 additions & 0 deletions wallet-kit/wallet/functional-overview/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Wallet Kit | Basics

The Wallet enables you to **launch an identity wallet** or **extend an existing app with identity capabilities**:

![
Note: The easiest and fastest way to launch a wallet is to take our web-app and rebrand it. Also, this web-based approach has a number of advantages. For example, it works on every platform/device, users do not require multiple devices and must not scan QR Codes. More importantly a web-based flow is very user friendly and leverages learned behaviour from federated identity providers (“login with Google”).](<../../../.gitbook/assets/Screenshot 2022-03-17 at 11.54.22.png>)

31 changes: 31 additions & 0 deletions wallet-kit/wallet/functional-overview/functionality.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Functionality

The Wallet Kit makes it easy for you to build and launch your own wallet. Now, you can think of wallets as **secure data hub for organizations and individuals** which allows them to act as "Holders", i.e. they can store, manage and share keys, identity data (e.g. Verifiable Credentials) and other secrets.

Practically speaking, a wallet is a tool that allows anyone to **collect and present identity data** in order to access services (e.g. sign up, login, check-out) or procure products in a seamless and privacy preserving fashion.

Since there are different types of wallets, it is important to mention that our Wallet Kit enables so-called **custodial wallets**, which means that keys and data are ultimately stored by the wallet provider (e.g. by you). While this means less control for end-users, it also means a better user experience (e.g. no need to handle private keys or seed phrases) and less risk (e.g. loss of data). Also, end-users enjoy full data portability, which means that they can switch wallets (and take their keys and data with them) at any time without having to fear lock-in effects.

The Wallet Kit provides various high-level functionalities. For example:

* **Web app**
* Web-based user interface (UI) for managing credentials and DIDs.
* **User context separation**
* Separation of user contexts in the data stores (key store, credential store, DID store).
* **User data management**
* DIDs
* Credentials
* **Ecosystems integrations**
* did:ebsi
* DID creation
* DID registration
* did:web
* DID creation
* DID web registry
* did:key
* DID creation
* **Verifiable Credential and Presentation exchange**
* Support for credential and presentation exchange based on the OIDC and SIOP specs
* OIDC4CI - OIDC for credential issuance
* OIDC4VP - OIDC for verifiable presentations (SIOP)
* Credential issuance via SIOP protocol (custom protocol)
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Overview

Here are the most important things to know about the Wallet:
Here are the most important things to know about the Wallet Kit:

* It is **open source (Apache 2)**. You can use the code for free and without limitations.
* It is an **out-of-the-box solution** that you can simply re-use or even white-label such as for building pilot projects quickly.
* It is **customisable** in a sense that you can individualise the app based on your requirements: You can rebrand the app, build your own UI and add new features. \*\*\*\*
* It is **composable** in a sense that you can plug your existing (d)apps into the wallet backend in order to supercharge your (d)apps with SSI capabilities.
* It **abstracts complexity** such as low-level functionality related to key handling, data storage, signing and interactions with third party systems.
* It is **built on open standards** to ensure interoperability and prevent lock-in effects.
* It is **flexible** in a sense that you can deploy and run the Wallet on-premise, in your (multi) cloud environment or directly integrate our libraries.
* It enables you to **use different identity ecosystems** like Europe’s emerging identity ecosystem ([EBSI, ESSIF](https://ec.europa.eu/digital-building-blocks/wikis/display/ebsi)) in anticipation of a multi-ecosystem future. (Consult the [SSI Kit documentation](https://app.gitbook.com/o/ZPIzdSlXqm9n9ywE2dcK/s/1k3zreXT6Nz41D1g1C6K/) to find out which ecosystems the Wallet supports.)&#x20;
* It is **flexible** in a sense that you can deploy and run wallets on-premise, in your (multi) cloud environment or directly integrate our libraries.
* It enables you to **use different identity ecosystems** like Europe’s emerging identity ecosystem ([EBSI, ESSIF](https://ec.europa.eu/digital-building-blocks/wikis/display/ebsi)) in anticipation of a multi-ecosystem future. (Consult the [SSI Kit documentation](https://app.gitbook.com/o/ZPIzdSlXqm9n9ywE2dcK/s/1k3zreXT6Nz41D1g1C6K/) to find out which ecosystems the Wallet Kit supports.)&#x20;
10 changes: 0 additions & 10 deletions what-is-the-wallet/wallet/architecture.md

This file was deleted.

8 changes: 0 additions & 8 deletions what-is-the-wallet/wallet/functional-overview/README.md

This file was deleted.

31 changes: 0 additions & 31 deletions what-is-the-wallet/wallet/functional-overview/functionality.md

This file was deleted.

0 comments on commit 045c50f

Please sign in to comment.