Please describe your proposed solution.
Context
Our identities and networks are fundamental to who we are, yet in the Web 2.0 era, we lack ownership of the data that encapsulates them. Our social, personal, and professional connections are controlled by others. But in the new Web 3.0 era, can we reclaim full custody of our data and digital identities? Is it possible to securely transact in a self-sovereign digital world? And can we embrace stricter regulations while preserving our freedom from prejudice or censorship?
These questions drive us to seek solutions that empower individuals, enhance security, and ensure privacy in the digital world, with Data Minimization principles at the core. Our proposed solution aims to establish a framework that allows individuals to retain control over their data and digital identities, whilst still offering a high level of security and convenience of access.
Through a convenient, secure, and private Digital Wallet App, end-users can access apps and dApps while maintaining ownership, stay in control of their personal information, and share only the minimum required to get authenticated and/or authorized.
Making use of our system’s APIs, developers will have the opportunity to integrate the Digital Passport capabilities into their apps and dApps with minimal effort. This enables them to provide users with a seamless and trusted experience, where individuals can securely interact with decentralized applications while retaining control over their data and identities.
Let’s see in detail the two use cases that we propose to cover with our solution.
Authentication and Authorisation main use-case
Let’s review a basic use case, and where the authentication / authorization fits in.
1. Sue manages her decentralized identity and Verifiable Credentials on her phone via the Digital Passport app. She has created several “did:prism” Decentralised Identities within the app. She now wants to register with the online service AiForGood.
2. AiForGood have already integrated the Digital Passport for authenticating users into their online services. They also have their own “did:prism” Decentralised Identity with Digital Passport.
AiForGood are wary of their online reputation. They have decided to only accept pre-registered validated users. Basically, they do not want bots in their community of real users.
The developers at AiForGood have pre-set their registration requirements with the Digital Passport: they want to receive the following four assurances for a new registration to be valid:
a. a valid name for the user ;
b. confirmation that the user has had an online presence for at least 2 years ;
c. confirmation that the user is over 18 years of age ;
d. confirmation that the user has a first-degree social network of at least 200 users.
AiForGood accept a list of accredited VC issuers which they disclose on their registration page. This includes LinkedIn. The registration page could look like this:
3. Sue sees on the AiForGood registration page that she could share ALL her private credentials with AiForGood via a Social Login, or that she could share only minimal credentials via the option of authenticating using her Digital Passport.
She also sees that AiForGood accept LinkedIn as proof for completing the “minimal credential” registration process.
Sue uses her Digital Passport app to automatically connect to LinkedIn with one of her multiple Digital Identities. She requests the issuance of a LinkedIn Social VC. She receives the Verified Credential, associated with her chosen Digital Identity, for free in her wallet within less than a minute.
4. Still with her Digital Passport app, Sue scans the QR Code that is presented to her on the AiForGood’s registration page. This QR code initiates a secure connection between Sue and AiForGood. It also embeds the requirements set by the developers at AiForGood.
Sue accepts the connection, and for the first time, she sees that she is required to produce the four conditions as described above. She is pleased that she does not even need to share her surname, a picture of herself, nor her email address, which a direct “Sign-in with LinkedIn” into AiForGood would have shared automatically if she had taken such option, in addition to the constant tracking by LinkedIn of her activity in AiForGood, which does not sit well with her exasperation of being tracked everywhere online.
5. With her newfound Self Sovereign Identity, Sue has the choice to share any accepted VC with AiForGood. But she also has the choice to select which data she accepts to share.
Sue wants to share the strict minimum requirements. She will share her pre-selected DID, in the form of an pseudo-anonymous value such as “did:prism:12345…”. In addition to that, in the AiForGood database, she will be known as Sue, over 18, more than 2 years of online presence, and more than 200 connections on LinkedIn. Nothing more. She purposely removes the sharing of most private data embedded in the LinkedIn VC, and click the share button on her mobile app.
6. Sharing the VC from the app triggered an API call into the backend of the Digital Passport, which acts as a PRISM Mediator (identity) and an Authenticator (login), with all the required input for validating or invalidating Sue’s pre-registration into AiForGood.
The Digital Passport’s backend validates within a few seconds that Sue can be registered as a user in AiForGood. It automatically sends a notification into AiForGood’s backend.
7. The AiForGood’s backend receives the notification that a new user meets their requirements for login. It automatically triggers the issuing of two Verified Credentials that the AiForGood service issues with their own DID, for the benefit of Sue’s shared DID:
a. an Authentication VC into AiForGood’s website
b. a “Level one” Authorization VC
Less than a minute after having shared a LinkedIn VC with AiForGood, Sue receives in her Digital Passport app the two VCs issued by AiForGood.
From this moment, neither Sue nor AiForGood need a third-party in the middle to prove authentication between them. They become direct trust parties through the issuing of AiForGood’s authentication VC for the exclusive benefit of Sue.
8. Since all pre-registration requirements were met and the Authentication VC was issued in the background, AiForGood’s website automatically redirects Sue to the Login page, where a new QR code appears. Still within her Digital Passport mobile app, Sue scans this new QRCode.
9. A notification message is sent to Sue’s mobile to accept the login into AiForGood and proposes that in addition to the Authentication VC, she uses her Authorization “level one” credentials. Sue accepts and she is automatically redirected to the AiForGood’s secure area, post authentication. She is also automatically granted the “level one” authorization level, which allows here to participate into the AiForGood discussion forums.
10. After a few weeks of participation into AiForGood’s forums, Sue received automatically a “Level two” Authorization VC from AiForGood. This authorization level will give her moderator rights on the forum. She is thrilled of having received an automatic upgrade which reflects her contribution into AiForGood’s community of users.
The significance of the use case above is important to understand. It shows that a web3 identity, whilst improving the end-user’s data privacy, can also improve the onboarding process and the access to a web2 application.
Extending the use-case: towards secure & regulated access to web3 assets
Building upon this use case, we can extend the above solution to encompass a web3 scenario. In this case, users would be granted access to a dApp or a Smart Contract through the authorization provided by their Digital Passport.
Specifically, we can enable regulated authentication (e.g., "KYC") for accessing web3 assets like Marlowe smart contracts. The presentation of a relevant VC for authentication (e.g., a KYC-recognized VC in this new example, as opposed to the LinkedIn VC in the previous example) would trigger the automatic creation of a unique NFT. This NFT would be immediately delivered on-chain to the owner of the digital identity. The NFT would then serve as the key to access and execute a dedicated Marlowe contract, which would also be generated "immediately" for executing a specific web3 transaction, such as a loan application.
By expanding the scope to include such a web3 use cases, we enhance the value and versatility of the Digital Passport, enabling seamless integration with decentralized applications and unlocking new opportunities for Cardano eco-system participants.
Solution
To enable the two use-cases listed above, the proposed solution is made of several components, covering the entire scope of the functional requirements for both web2 (authentication and authorisation) and web3 (regulated authentication and sole execution of a smart contract).
- A “Digital Identity” backend: we will deliver a REST API backend, which interacts with Atala PRISM nodes.
This backend will be secured behind proper authenticated access and will offer APIs for the three important roles: Holders, Issuers, and Verifiers. It will act as a both a PRISM agent / mediator and an oAuth 2.0 secure authenticator.
- A “Digital Passport” app: our goal is to deliver it as a mobile app, although pending on some technology and security risks which have not been fully evaluated at this time, a fallback solution could be to deliver it first as a browser plugin.
The Digital Passport app will make use of our Digital Identity backend and will also be able to connect to other PRISM mediators. Ultimately, this is a complete web3 wallet, although it puts the focus on Digital Identity and Verified Credentials, rather than on Coins and NFTs.
- A “Web3 Gateway”: we will deliver a second backend with associated website, which interacts with the Digital Passport solution (app and backend) for authenticating and authorizing users into web3 assets.
This web3 Gateway will allow users to access Marlowe smart contract dApps with proof of authentication via Verified Credentials, leveraging the entire Digital Passport solution.
- Leading and/or contributing to the creation of a Cardano Problem Statement (CPS)
The implementation of the Digital Passport App will undoubtedly have encountered functional or technical challenges in integrating Digital Identity into a Cardano web3 wallet. This implementation process will provide valuable insights and serve as a foundation for defining the specific problems that other projects may encounter when integrating digital identity into wallets. By documenting and detailing these challenges, we aim to contribute to the creation of a CPS that outlines the key motivations, obstacles and potential solutions for integrating digital identity in Cardano wallets.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
Recognizing the critical role of digital identity in driving blockchain mass adoption, the Digital Passport project directly addresses this challenge and offers substantial benefits to the Cardano eco-system. Its core objective is to deliver a robust and production-ready solution for the essential use-case of authentication via proof of ownership, enabling access to both web2 Apps and web3 dApps (smart contracts).
The requested funding will primarily support the comprehensive development of an end-to-end solution, incorporating valuable input from prominent working groups such as the Atala PRISM Pioneers, the ToIP's Governance Framework Working Group, and community of Marlowe developers.
The final product will provide multiple integration entry points, ensuring seamless adoption by any App or dApp built on Cardano. Through oAuth integration, authentication and authorization can be effortlessly achieved, typically within an hour of integration. Additionally, the availability of API integration will empower verifiers to directly verify Verified Credentials (VCs) within their applications, facilitating real-time credential notifications.
One notable benefit of the Digital Passport is its ability to enable authorized access to web3 assets. Users can leverage their Self-Sovereign Identity to execute regulated smart contracts, subsequently transferring control over the same smart contract by transferring the NFT executor role to another party.
In summary, the implementation of the web3 Digital Passport will bring significant advantages to the Cardano eco-system. It will serve as a gateway for integrating Digital Identity seamlessly into any application (web2) and any dApp or smart contract built on the Cardano Blockchain. This integration will improve user experience, increase security, lower the risk and cost of data theft, promote interoperability, offer compliance solutions to current and future web3 financial regulations, and ultimately foster wider adoption of blockchain technology throughout the eco-system.
How do you intend to measure the success of your project?
The success of the Digital Passport project will be measured by reaching specific milestones and achieving the ultimate goal of delivering and adopting a production-ready solution for authenticating users with their Digital Identity and Verified Credentials.
To assess progress and success, I have established key checkpoints:
1/ Robust design of a v1 solution
Validation of the solution's design and usefulness through feedback from small working groups is crucial. This design stage is currently well in progress, thanks to the various participations into workshops and exposure to many use-cases. Success will ultimately be determined by validating the capability to support most Authentication and Authorization use-cases, ensuring compliance with non-functional requirements, and confirming the effectiveness of multiple integration points, including integration with Marlowe contracts.
2/ Generating growing interest in the solution
Since the project's introduction within the Atala PRISM Pioneer program in April and May 2023 (under the codename "Login with DID"), I have received significant interest from other Digital Identity projects seeking an Authentication use-case solution. Additionally, there is growing interest in using this solution for KYC-authorized access to web3 financial assets and/or smart contracts. Continued success will be demonstrated by ongoing interest and securing at least one third-party project integration per month, resulting in approximately 10 integration use-cases by the time our project is production-ready.
3/ Delivery of a "Digital Identity" backend solution with documented REST APIs
Successful completion of this milestone entails delivering fully functional APIs that meet their functional and non-functional requirements, accompanied by comprehensive documentation. Client Apps should be able to seamlessly integrate with the backend, the Digital Passport app serving as the primary client application.
4/ Delivery of a Digital Passport App for end-users
Success will be achieved by launching a digital wallet mobile app on the AppStore (and later on Google Play) that enables users to create their own DiDs, receive VCs, authenticate into third party apps, and leverage their level of authorization to execute transactions (particularly web3 ones). This milestone will involve fulfilling the main functional and non-functional requirements outlined in the Capabilities section.
5/ Delivery of a "web3 Gateway"
Successful completion of this milestone will occur when we deliver a fully functioning integrated solution for executing simple Marlowe programs, such as coin swap contracts, via the approval of a user's Verified Credential.
6/ Establishing a Cardano Problem Statement (CPS)
Building upon the project's learnings and the successful implementation of the Digital Passport wallet, I intend to deliver or contribute into a CPS in which I will document the motivations, obstacles, as well as the functional and technical problems for integrating Digital Identity into Cardano wallets. Success at this stage involves establishing the CPS which would act a good base for upcoming CIPs. Note that the final community-driven validation of the CPS and any subsequent participation into CIPs are beyond the scope of this project.
Ultimately, the adoption of the Digital Passport by third-party projects will serve as a great measure of success. I am actively engaged in discussions with several projects that stand to benefit from this solution, and their adoption will signify the effectiveness and value of this project within the Cardano eco-system.
Please describe your plans to share the outputs and results of your project?
Community engagement (PRISM & Digital Identity partners)
To effectively spread the outputs of the Digital Passport project, over a reasonable timescale, I have first actively engaged in the Atala Prism Beta Program from March to May 2023. This participation has allowed me to establish valuable connections within the Cardano eco-system's Digital Identity community. Through the beta program, I gained crucial insights into market needs, available solutions, and the potential benefits my project can bring to the community.
Notably, my project was selected as one of the top 3 projects within the Atala Prism Beta program, affording me the opportunity to present a 4-minute pitch to Charles Hoskinson in May 2023. You can access the extract here, although the private discussion which followed the presentation is not included.
<https://youtu.be/MG6QZMnRUZY>What was originally known as project "Login with DID" has undergone thorough preparation and refinement within the Atala Prism community, ensuring its alignment with the needs and expectations of developers within Atala Prism and the broader Cardano community.
This approach ultimately led to addressing a broader scope, and a new project name: the Web3 Digital Passport. With its milestones-based approach, the project is well-suited to deliver an effective decentralised authentication solution to both web2 and web3 projects. It has so far generated significant interest from several identified teams seeking similar solutions.
Close cooperation (Marlowe Smart Contract)
Note that this project could also feature as a reference implementation in the nascent Marlowe eco-system, which was only released live in June 2023. I intend to collaborate very closely with the Marlowe team and share with them all design, development, and findings.
Contribution to CPS/CIP (Cardano Problem Statement / Improvement Proposal)
Furthermore, this project lays the technological groundwork for the creation of a Cardano Problem Statement (CPS), which will serve as a valuable resource for future CIPs, guiding the development of standards, protocols, and best practices for seamless and secure Digital Identity integration within the Cardano eco-system.
I am committed to either lead or actively contribute to this CPS, with the aim of aligning its delivery with the completion of the Digital Passport project. This approach ensures that the CPS is firmly rooted in a tangible use-case, supported by a fully functional digital wallet implementation, rather than being based on hypothetical scenarios.
By sharing the outcomes and impact of my project far beyond the smaller circle of PRISM, I aim to foster collaboration and opportunities for further Research and Development activities in the Cardano eco-system.