The Linux Foundation Projects
Skip to main content
Blog

Credo: Heading Into 2025, Releases 0.5 and 0.6, and How We’re Becoming a Central Player in Global Interoperability

By February 5, 2025No Comments

Thanks to the Credo Team for sharing this update with the community.

As we go into the new year, it’s a great time to look back at what Credo has achieved so far and what’s on the horizon for 2025. A lot happened last year: the move to the OpenWallet Foundation, the 0.5 release, exciting global adoption and major improvements in the framework.  Here’s a quick look at how far we’ve come and where we’re headed next.

Credo, a Growth project at the OpenWallet Foundation, is a TypeScript-based framework for building client (usually wallets) and/or server-side (usually issuers and verifiers) solutions that require verifiable credentials, peer-to-peer secure communication, or any other decentralized-identity-focused technology. Credo’s distinguishing factors are its modular approach, focus on usability, and the large number of standards that are supported by the framework. The project, originally named Aries Framework JavaScript, started out as a project under the Hyperledger Foundation but was rebranded to Credo when it was moved to the OpenWallet Foundation last year. With support for OpenID for Verifiable Credentials in the framework calling it an ‘Aries’ framework didn’t fit anymore, so the community widened the scope to become more agnostic to standards and protocols. The framework, its maintainers, and its contributors have not changed, and are excited about the potential created by the move. The new name and branding should make it easier for new contributors and implementers to see the framework for what it is instead of what it was in the past. 

Release 0.5

One of the main milestones Credo reached in 2024 was the release of its new 0.5 version. Where version 0.4.0 made the framework ledger-independent, added support for receiving credentials over OpenID4VCI, and enabled multi-tenant capabilities, Credo version 0.5 has taken the next step and shows it has evolved into a cutting-edge, leading technical choice. Especially in light of the developments around EUDI, as Credo can now be used to build Issuer and Verifier applications as well as identity wallets suitable for the EUDI ecosystem. The latest Credo 0.5.13 release now:

  • Supports issuance, presenting, and verification using OpenID4VCI, OpenID4VP and SIOPv2. You can now build end-to-end OpenID for Verifiable Credential solutions with Credo.
  • Supports issuance and verification of SD-JWT-VC and mDL/mDOC, which is fully integrated with OpenID4VC. SD-JWT-VCs are a relatively easy credential format, while still supporting selective disclosure of attributes. mDOC is used globally, and has a well-defined method for in-person presentation over bluetooth.
  • Supports X509 certificates in addition to DIDs.
  • Deprecated and removed the Indy SDK, Credo has fully moved to Aries Askar as secure storage.
  • Support for AnonCreds credentials represented as W3C Verifiable Credentials. This allows for better integration and interoperability of AnonCreds credentials with the efforts going on in the W3C and other identity standards bodies, while still keeping all of the anonymous credential features that AnonCreds has to offer.
  • Revocation of AnonCreds credentials issued in Credo. Support for proving and verifying revocable credentials was already supported in earlier versions, and now all AnonCreds features are supported by Credo.
  • Supports both DIF Presentation Exchange V1 and V2 as a core component. You can now share almost all credential formats in Credo, whether you’re using DIDComm or OpenID4VP.
  • Supports DIDComm DID Rotation, DID Exchange v1.1, did:peer:4, and has improved interoperability with ACA-Py using DIDExchange. Most features are in preparation for support of DIDComm v2 which is planned for an upcoming release. These additions will allow for a smooth transition from DIDComm V1 to DIDComm V2
  • Supports several interoperability profiles, namely DIIPv1 (Decentralised Identity Interop Profile) and AIP (Aries Interop Profile) V1 & V2
  • Countless small improvements to the framework in general and the newly introduced shared components (Aries Askar, Indy VDR, AnonCreds RS).

Ariel Gentile, Credo maintainer and CTO of 2060.io, rightly says about the new release: “0.4.0 was already a big step, but I think in 0.5.0, Credo finally completed all pieces of the ‘full-stack SSI framework’ puzzle. Over the last year, we started using it in some server-side deployments, and now we are focusing on the optimizations required to build high-reliability, scalable solutions on top of it.” 

Credo goals

Currently, Credo is being used by different organizations for different purposes. On the mobile wallet side, OGCIO Ireland is utilizing Credo for their gov.ie Digital Wallet Pilot, and will be using release 0.5’s new support of OpenID4VC and SD-JWT in their efforts to align with the Architecture Reference Framework. Other wallets built with Credo include the BC Wallet, which uses DIDComm and AnonCreds and was created by the Government of British Columbia, as well as the EasyPID Wallet. The EasyPID wallet was built by Animo as a prototype EUDI Wallet for SPRIN-D, the German Federal Agency for Breakthrough Innovation. The base for the BC Wallet is the open-source project Aries Bifold, which in itself is built on Credo.

The Paradym platform, a developer-oriented platform for building digital identity solutions created by Animo, is also built on Credo.It features a multi-tenant, server-side cloud platform, as well as a mobile wallet available for iOS and Android. Under the hood it supports DIDComm, OpenID4VC, AnonCreds, and SD-JWT VC, and is a great showcase to see what can be built using Credo 

Then what’s next for Credo? Going forward, Credo aims to align with ongoing interop efforts across the world. Credo’s position as an agnostic framework with contributors from different standards backgrounds, make it uniquely positioned to take a central role in enabling global interoperability. The community is working on better alignment with the European Union’s Architecture Reference Framework (ARF), support for Decentralized Identity Interop Profile V3/4 (DIIP), and new versions of the High Assurance Interoperability Profile (HAIP). Other topics that are gaining interest for future releases and are being worked on are DIDComm v2, trust establishment and trust registries (using OpenID Federation).

The Credo 2024 annual review has a more in-depth analysis of Credo’s goals.

Release 0.6 and beyond

In 2025, the Credo community is working hard on release 0.6. This release will be in line with the maturation of the framework, the community and the digital identity ecosystem in general. Here’s what we’re aiming to achieve next year:

  1. Better Key Management
    • Create a new Key Management System interface to support various crypto backends and hardware security modules (HSMs).
    • Provide built-in support for OpenBAO/Hashicorp Vault, Google Cloud KMS, and AWS KMS.
  2. Improved Storage Layer and Security Improvements
    • Credo handles a lot of personal identifiable information (PII). To sign credentials and verify presentations this is essential. In the future we want to make it easier to prevent any PII from being stored by the framework, making compliance with data protection regulations simpler. Currently you have to remove exchange records (such as an OpenId4VcVerificationSessionRecord) manually after the exchange is completed.
    • Currently Credo works out of the box with Askar for secure storage of data. This works great for mobile wallets, but for large scale server side deployments, directly leveraging the power of a database gives a lot more control on what Credo can do, and how it can scale. Most databases support encryption at rest, and especially when Credo does not store any PII or cryptographic keys used for signing of credentials, using Askar for storage is not needed anymore. So for future versions of Credo we want to provide support to directly integrate with one or multiple databases, leveraging the powerful features those databases have to offer.
  3. Staying up to date with evolving standards
    • Keep up with OpenID for Verifiable Credentials advancements. The latest 0.6 alpha release of Credo adds support for OpenID4VCI authorization code flow, and will also include wallet attestations, key attestations, and support for Implementers Draft 2. For OpenID4VP support for Implementers Draft 3 including the new DCQL query language will be added.
    • Complete work on new versions of the High Assurance Interoperability Profile.
  4. Framework Improvements
  5. Scaling and Revocation Support
    • Add APIs for managing revocation lists and easier issuance of revocable credentials.
    • Provide tools for large-scale deployments, like caching solutions and Kubernetes deployment files.
  6. Better Documentation
    • Focus on clear, user-friendly documentation for Credo’s most-used features.
  7. Growing Awareness
    • Boost Credo’s visibility and encourage more organizations to get involved

 

The Credo community is already working hard on new plans and new functionality. To learn more about how to use the framework to build your solutions, look into the documentation. Or if you want to get involved, community meetings are held biweekly on Thursday at 6 AM Pacific Time – Los Angeles (which is currently at 15:00 CET). See the Meeting Information for the most up-to-date information. Credo also has a new mailing list and Discord channel, check out this page for up-to-date information on how to join the Discord or mailing list.