The Wallet Kit


Discontinuation Notice!

Important: Please be informed that, beginning from December 2023, the Wallet Kit will no longer receive new features. Furthermore, the Wallet Kit is planned for discontinuation by the end of Q3 2024.

However, all functionalities offered by the Wallet Kit will be integrated into our new libraries, APIs, and apps in the walt.id identity repo. Giving you more modularity, flexibility and ease-of-use to build end-to-end digital identity and wallet solutions.

Read the transition guide here.

For any clarification or queries, feel free to contact us as we aim to make this transition as smooth as possible.


This post introduces our new open source product: the Wallet Kit, which enables developers and organisations to put Self-Sovereign Identity (SSI) into the hands and pockets of the people via easy-to-use applications.

Following the SSI Kit (an infrastructure on which developers rely to build applications and use cases with SSI), we are now growing our product portfolio further towards the application layer.

Let’s dive in ...

The Dilemma (or Why we built the Wallet Kit)

Self-Sovereign Identity (SSI) enables decentralised ecosystems in which people and organisations can freely exchange and verify identity data. These ecosystems look like three-sided marketplaces in which participants can take on different roles:

  • Issuers issue identity credentials to their stakeholders (e.g. citizens, customers, employees). For example, a government issues a digital passport to a citizen.

  • Holders manage and share their credentials (via so-called “wallets”).  For example, a citizen manages her digital passport.

  • Verifiers request and verify data from Holders in order to provide products or services. For example, a bank requires a passport from a potential customer to open a bank account remotely.

Illustration:

You can find more information and examples in our Knowledge Base.

 

While the roles of Issuers and Verifiers are typically performed by organisations, the Holder role is often performed by individuals who require an easy-to-use interface like a web or mobile app to use SSI. This application is called a “Wallet”.

The problem is that today, there are hardly any SSI wallets. As a result, individuals lack the capacity to receive, manage and present identity credentials and cannot participate in decentralised identity ecosystems.

While our first product - the SSI Kit - already enabled certain core functionality of a wallet, many pieces were still missing as they could only be implemented on the application layer, such as data exchange protocols (e.g. OpenID Connect) or a consumer-friendly user interface (UI).

This is why we decided to build the Wallet Kit as a way to complement our product portfolio and make SSI even more accessible to everyone.

What is the Wallet Kit?

The Wallet Kit offers developers and organisations everything they need to extend any app with holistic identity (SSI) and NFT capabilities without much complexity. In other words, the Wallet Kit turns any app into an identity and NFT wallet.

You can think about the Wallet itself as a secure data hub for organisations and individuals. Its main capabilities are about enabling potentially anyone to act as a Holder by giving them the ability to store, manage and share their identity data, keys and other secrets. 

Practically speaking, the Wallet is a tool that allows your organisation or your stakeholders (customers, employees) to collect and present identity data to access services (e.g. sign up, login, check-out, …) or procure products in a seamless and privacy preserving fashion.

 Illustration:

Here’s the most important things to know about the Wallet Kit:

  • It is open source (Apache 2) so that anyone 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 demos or 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 Kit on-premise, in your (multi) cloud environment or directly integrate our libraries. 

  • It enables you to use different identity ecosystems - starting with Europe’s emerging digital identity ecosystem: the EU Self-Sovereign Identity Framework or “ESSIF”. (We believe in a multi-ecosystem future, which is why we believe that a Wallet must support different ecosystems with unique characteristics.)

How it works? 

Since there are different types of wallets, it is important to mention that Wallets enabled by the Wallet Kit are a so-called “custodial” wallets, i.e. keys and data are ultimately stored by the provider of the Wallet (e.g. 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, i.e. they can switch wallets (and take their keys and data with them) at any time without having to fear lock-in effects.

There are basically three editions of the Wallet Kit:

  1. White Label: 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”).

  2. Wallet Backend: You can also supercharge your existing applications with SSI and NFT capabilities (e.g. manage keys, credentials, NFTs) by running our Wallet Kit (or “wallet backend”) as a microservice (via APIs).

  3. Wallet Library: Finally, you can build your own applications, including mobile apps, by using our libraries as a direct dependency.

How to get started?

You can get started with the Wallet Kit in two different ways:

  1. Self-Managed Service: Deploy the Wallet Kit on-premise or in your own cloud environments and connect your application via REST APIs or directly integrate our lib with your (Java/Kotlin) application. Learn how to get started via GitHub.

  2. Managed Service: We can deploy, run and maintain the Wallet Kit for you and make it accessible via high-level APIs so you do not need to worry about anything.

In any case, we offer a broad range of services to make life easier for you like consulting, development / integration of pilots and production systems or technical support.

Want to learn more?

Join our community or get in touch. We’re always happy to help.

Previous
Previous

The Storage Kit

Next
Next

The SSI Kit