The Linux Foundation Projects
Skip to main content

Meeting OpenWallet Projects and Community Members

An Inspiring IIW Week of OpenWallet discussions

The OpenWallet Foundation (OWF) had a great Internet Identity Workshop (IIW) week in mid October, starting with our first hybrid Developer Face-to-Face (F2F) on October 9 (recording available here), the Monday before IIW at the Google Mountain View Campus. The event saw around 40 attendees participate in person and over 20 join online. 

Daniel Goldscheider, the Executive Director of OWF, kicked off the F2F by sharing highlights of OWF’s first six-month journey, particularly the recent joining of Google and Microsoft as members as well as the critical code contributions from a wide range of organizations. Tracy Kuhrt, the Chair of OWF’s Technical Advisory Council followed Daniel to introduce the OWF code contribution process and project stages. For the first time, the existing OWF code projects and prospective new projects are meeting each other and the community: 

Farmworker Wallet OS (Recording: 22:10)

  • Status: Accepted
  • Maintainer: Entidad and United Farm Workers Foundation (UFWF)
  • Project Stage: Labs
  • Project Description: The goal of the project is to foster the adoption of an open, secure, interoperable digital wallet engine that makes it easier for farmworker communities to access an ecosystem of life-altering social and human services. The project is the digital wallet engine of Entidad’s Preparese solution that layers DIDComm, wallet, decentralized identifiers, and verifiable credential (VC) technologies with a low-code application development platform. Preparese is being used by nine organizations and has five digital services in production. The most recent service launched is being used to process and distribute $80 million in one-time relief payments to over 125,000 workers, under the United States Department of Agriculture’s Farm and Food Workers Relief Program (FFWR). By contributing the code, Entidad and UFWF also hope that other underserved communities could benefit greatly from the privacy, accessibility, and security of digital wallets. The implementation currently supports AnonCreds, but is being planned to add support for other credential formats and leverage OpenID for Verifiable Credential Issuance (OpenID4VCI) and OpenID for Verifiable Presentations (OpenID4VP) for credential exchanges.

VC API Implementation (Recording: 8:20)

  • Status: Accepted
  • Maintainer: Energy Web Foundation
  • Project Stage: Labs 
  • Project Description: The project is a reference implementation of the VC API specification, which is a set of HTTP APIs for VC lifecycle management. The implementation aims to enable organizations and individuals to effortlessly conduct self-sovereign identity (SSI) operations over HTTP without requiring technical expertise, making it seamless to integrate into existing projects. The code is written in Typescript and uses the Nest.js API Framework.

Wallet Framework .Net (Recording: 36:15)

  • Status: Accepted
  • Maintainer: Neosfer (responsible for the Lissi wallet) and esatus AG
  • Project Stage:  Labs
  • Project Description: It is a framework designed for .NET, focusing on providing a multi-platform wallet framework. The primary aim is to create a multiprotocol wallet framework enabling implementations of OpenID4VC and SD-JWT VC, in accordance with the European Identity Wallet initiative’s objectives. Currently, the framework supports DidComm v1 and AnonCreds. Implementations of the OpenID4VC protocols and SD-JWT are in an independent library. 

SD-JWT Python (Recording: 55:30)

  • Status: Accepted
  • Maintainer: IETF SD-JWT editors, Daniel Fett (Authlete)
  • Project Stage: Labs 
  • Project Description: This is the reference implementation of the IETF SD-JWT specification maintained by the editors of the specification together with other contributors. It is used to generate the examples in the IETF SD-JWT specification and it can also be used in other projects for implementing SD-JWT. It includes various test cases that can be used to test SD-JWT implementations. Next steps for the project would be incremental improvements, e.g. proper release process, improved documentation of library’s API, independent test case repository. 

SD-JWT Kotlin (Recording: 1:08:10)

  • Status: Accepted
  • Maintainer: Fabian Hauck
  • Project Stage: Labs 
  • Project Description: This is a Kotlin implementation of the IETF SD-JWT specification specification (up-to-date with the draft version -04) using the connect2id Nimbus JOSE + JWT library. This library makes it easy to use SD-JWT for both web and Android apps. It can be used to manage the full lifecycle of SD-JWT credentials, credential issuance, presentations and verification. The project is planning on adding support for hardware-backed keys. 

Android Identity Library (Recording: 1:44:04)

  • Status: Proposed
  • Organization: Google
  • Project Stage: N/A 
  • Project Description: It is a library and example apps for Real-World Identity. The initial focus was mDL/mDoc according to ISO/IEC 18013-5:2021 and related standards. The project has been available in open source since 2019 under the Apache2 license. The code is production-ready and has been used in several UL-certified production wallets, including Google Wallet. It currently implements on-device provisioning, storage, presentment, and verification of mDL/mDocs. But the libraries are not restricted to either mDL/mDOcs or Android – it can be easily used for W3C VCs. The library includes Android Keystore (for hardware-backed keys) implementation.

PingOne Neo (Recording: 44:15)

  • Status: To be Proposed
  • Organization: Ping Identity
  • Introduction: PingOne Neo is the decentralized identity solution by Ping Identity. It covers verification of individuals from unknown to known (e.g. document verification, voice authentication, voice recognition) and issuance of verifiable credentials to individuals in a Ping wallet SDK. The product is being worked towards using the OpenID4VCI so that the credentials could be issued into standards-based wallets. The plan is to contribute the standards-based work of the PingOne Neo Platform to the OWF, such as Credential Format Support (JWT, SD-JWT VC, mdoc), OpenID4VP and OpenID4VCI, Presentation Exchange 2.0, ISO 18013-7 Presentation using a REST API.   

MOSIP contributions, not present at the event but introduced by Torsten Lodderstedt, Technical Advisor of OWF (Recording: 1:11:34)

  • Status: To be Proposed
  • Organization: Modular Open Source Identity Platform (MOSIP)
  • Introduction: The MOSIP contributions cover two areas – presentation of credentials through a near-field communication based on bluetooth energy and issuance of JSON-LD credentials based on OpenID4VCI natively implemented for Android and IOS

(Another project at the proposal stage is SD-JWT JS, which was proposed in a face-to-face conversation after the event.) 

The second half of the pre-IIW event was featured by an engaging and interactive workshop facilitated by Kaliya Young and Lucy Yang to get community inputs on the following topics: 

  • What Code / Components / Resources / Expertise do you have and/or know that can potentially be contributed to OWF?
  • What capabilities / code components / expertise would be ideal to support the success of OWF that are currently missing?

Kaliya was facilitating workshop with Lucy updating participants’ inputs live on a Miro board

Following the great conversations and momentum of our Pre-IIW event, Daniel and Tracy, with the support from Kaliya and Lucy, hosted a session on the first day of IIW, briefing the IIW community OWF’s first six months (slide deck here) and collecting further feedback on the same two topics from the Pre-IIW event. We have aggregated and organized the inputs from both events into one Miro board so that as a community, we can continue to reflect and build on these thoughts. Among them, we have seen some common threads: 

  • There is a keen interest in contributing a wide variety of projects in different languages focused on different aspects of a wallet. 
  • There are needs for tooling for specific use-cases in particular guardianship, payments, and Web3.
  • Keys management and storage were raised repeatedly and will require focused attention
  • Public engagement and education were seen as important by many.

The OpenWallet momentum was indeed a real and lively one during the IIW week, as we were able to gather a full room of participants after the closing circle on the last day of IIW. We collectively reflected on our learning and takeaways; some are recurring themes such as diversity of wallet profiles/stacks, cross pollination among projects, standardized user patterns/UI components. For next steps, there was consensus in the room that we needed to host more community events to further the momentum and foster collaborations. So stay tuned!

Whiteboard notes from the Post-IIW reflection session