Identus (Atala PRISM) needs community developer support to complete an important feature: SD-JWT-VC Support.
This is the total amount allocated to Identus: Complete SD-JWT-VC Support.
We will complete SD-JWT-VC support in Identus, adding Revocation and the ability to issue and selectively disclose SD-JWT-VC Edge Agent to Edge Agent
Hyperledger Identus, an open-source Self-Sovereign Identity (SSI) framework that is part of the Hyperledger suite of blockchain and identity projects. Hyperledger Identus, formerly known as Atala PRISM, provides components to develop decentralized identity solutions adhering to widely recognized SSI standards.
The Csign engineering team, Roberto Carvajal and Jon Bauer have been working with Identus since its version 2 beta and has become an active participant in its developer and contributor community.
All work will be submitted for consideration to be included as part of Identus, which is Open Source and licensed under Apache 2.0
Identus (formerly known as Atala PRISM) is now Open Sourced under the Hyperledger family of projects. IOG is funding maintenance through 8 core team developers, however some of the original road map has been re-prioritized to make efficient use of existing resources.
This has left the future of a powerful feature in question.
SD-JWT-VCs allow someone to selectively disclose the information in their Verifiable Credential, while keeping all the information and PII encrypted. This makes Verifiable Credentials more safe, secure, portable, and privacy-preserving. The Csign engineering team has a vested interest in using SD-JWT-VCs in their product Csign
SD-JWT-VC support has been mostly completed by the core team, however important actions like Revocation and the ability to issue and validate SD-JWT-VCs between edge agents has not been completed in all Edge SDKs.
The Csign engineering team would like to contribute to Identus and help finish this feature. Csign intends to use SD-JWT-VC (Selective Disclosure JWT Verifiable Credentials) in its own product, and it would be extremely valuable to other users of Identus to have this feature complete.
The Csign engineering team, Roberto Carvajal and Jon Bauer, who are co-authors of the book "Mastering Identus: A Developer's Handbook" will contribute time, code, and will ultimate use the feature in the Csign product.
This will involve adding Revocation support to the Identus Cloud Agent, TypeScript for the TypeScript Edge Agent SDK, and native mobile code in the Swift and Kotlin for the Edge Agent SDK support.
Csign wants to use SD-JWT-VCs in it's product: https://www.csign.io
Identus is Open Source and is freely available under an Apache 2.0 license.
As good community citizens who benefit from the open source license used by Identus, we would like to give back to the project by enhancing critical features which we want everyone to have access to.
We believe SD-JWT-VC is an important privacy-preserving technology which will make all Identus SSI applications much more secure and private.
Our engineering team has been active in the Identus (Atala PRISM) developer and contributor community and thanks to a Fund 11 Catalyst grant, Jon Bauer and Roberto Carvajal are writing “Mastering Identus: A Developer’s Handbook”, which is a developer-centric technical reference for developing with Identus ( Atala PRISM ). Csign was built with early versions of Identus, before it was open sourced and we have helped the project by reporting bugs and contributing fixes and workarounds.
Beyond Atala PRISM, our team is made up of highly experienced digital product designers and engineers. We have created applications for the world’s most famous brands, and are excited to be working together on cutting edge digital identity product ideas.
Duration: 1 Month
Work with Identus Core Team to create Behavioral-Driven-Development (BDD) Scenarios for remaining work left for SD-JWT-VC support in Identus
Duration: 3 Months
Write Revocation support for SD-JWT-VC in Identus Cloud Agent.
We have met with the Identus core team and there appears to be some feature work and decisions made before Revocation can be fully implemented.
This includes implementing a StatusList spec, which may be included in implementing VC-JOSE-COSE. Discussion ongoing amongst Identus core team.
We are allowing enough time to implement whichever solution is decided.
Duration: 4 Months
Roberto will add support for SD-JWT-VC in the Identus TypeScript Edge SDK.
Jon will add support for SD-JWT-VC in the Identus Swift Edge SDK.
According to the Identus core team, a lot of this has been implemented in the Swift SDK already but needs to be ported over to TypeScript and Kotlin SDKs. Our efforts will focus on porting the work over to the other platforms if Swift is fully implemented by the time this milestone begins.
Duration: 2 months
Roberto and Jon will use the code design patterns from the TypeScript and Swift SDK work to support for SD-SWT-VC in the Identus Kotlin/Android Edge SDK.
Identus Kotlin SDK is made with Kotlin MultiPlatform (KMM). We will port over the work from the other SDKs to this platform.
Duration: 2 months
We will submit a Pull Request to the Identus project, in each appropriate repository, complete with tests and documentation. This may receive feedback or change requests from the Core Team and we will work to address their comments.
We will present our work to the Identus Community in both the Identus Discord and with a presentation on one of the regularly scheduled community calls.
Please note: We cannot guarantee that the Identus Core Team will accept or merge our Pull Request into the Identus code base.
Jon Bauer - Engineer
linkedin: https://www.linkedin.com/in/jonbauer/
Skillsets: Swift/iOS/Project Management
Roberto Carvajal - Engineer
linkedin: https://www.linkedin.com/in/robertocarvajal/
Skillsets: TypeScript/Full Stack/ Cross Platform Mobile
200,000 ADA
Milestone 1: 13,358 ADA
BDD Scenarios: ~30 hr x 2 Engineers
Milestone 2: 58,322 ADA
Revocation support: ~120 hr x 2 Engineers
Milestone 3: 63,940 ADA
TypeScript SDK support: ~200 hr x 1 Engineer
Swift SDK support: ~200 hr x 1 Engineer
Milestone 4: 34,416 ADA
Kotlin SDK support: ~100 hr x 2 Engineers
Final Milestone: 29,964 ADA
Handle PR feedback and presentation: ~90 hr x 2 Engineers
We believe the value of having SD-JWT-VC functionality complete in Identus is a huge win for the Self-Sovereign Identity developer community. This will give all Identus developers the option to make secure and private Verifiable Credentials. As Governments adopt this new standard in their SSI wallets, having SD-JWT-VC support is critical to make Identus a competitive platform worldwide.