Please describe your proposed solution.
This Android and iOS products will implement the same use cases as described in the proposal “BLOCKTRUST Identity Wallet (PRISM) - Browser Extension and Shared Features, v1.0”, with some UI design and implementation elements that are unique to smartphones and their operating system. The Android and iOS wallet products will be built on the shared features described in that “base” proposal.
Vote for this Android and iOS proposal only if you also have voted for the base proposal.
The Wallet operates on the principles of self-sovereign identity (SSI) and utilizes Atala PRISM technology. Self-sovereign identity lets you have multiple digital identities (personas), composed of a decentralized identifier (DID) and a collection of verifiable claims, or Verifiable Credentials, about you.
These Verifiable Credentials (VCs) are generated by entities called Issuers. The VCs contain information about you (you're the Subject), and you hold them (making you the Holder). You can then present these verifiable claims to another entity called a Verifier.
Our Wallet not only receives these VCs from Issuers but also supports the roles of a Holder and a Verifier. It essentially lets you collect, store, and present your verifiable credentials.
The VCs are of type W3C JSON-JWT, and additional types will be added in the future. The communication protocols between agents (e.g. issuer-to-holder, holder-to-verifier) are based on Hyperledger Aries, and make use of a DIDComm v2 Mediator service, which the user can specify, one of those being Blocktrust's.
Additionally, our Wallet also uses DIDComm and a Mediator to implement secure, end-to-end encrypted chat messaging between you and another Wallet user or with any other compliant identity agent.
Specific implementation and differences for targeting Android and iOS (when compared with the browser extension product) include:
-
Android
-
Targeting Android 12L or later.
-
Wallet Connect protocol
-
User interface layouts (platform-specific designs and paradigms)
-
Android Keystore System for key vault and signing
-
Other areas: Android Manifest File. Resource Management, Signing the App, Min SDK Version, Platform-Specific APIs, Google-Specific Services.
-
iOS
-
Target is iOS 16.
-
Wallet Connect Protocol
-
User Interface Layouts (platform-specific designs and paradigms)
-
Trusted Enclave use for key vault and signing
-
Other areas: Info.plist File, Asset Catalog:, Entitlements:, Platform-Specific APIs, Apple-Specific Services, and Provisioning Profiles and Certificates.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
Using decentralized identity wallets and agents such as Blocktrust's, developers of decentralized applications (DApps) or centralized solutions interfacing with the Cardano ecosystem will be better equipped to fulfill their goals. These often involve establishing trust between different parties and ensuring regulatory compliance. Without the availability of Blocktrust's wallet, developers could face increased risks. They may find their progress impeded or become overly reliant on another provider's identity wallet solution, limiting their flexibility.
How do you intend to measure the success of your project?
We plan to gather user feedback through a specific Discord channel dedicated to this purpose. Additionally, we'll keep track of the number of times our product is downloaded from the Chrome Web Store after it's released for beta testing and when it's made generally available. These download numbers will give us tangible data about our product's reach. We're also currently investigating potential ways to generate revenue from the product in the future.
Please describe your plans to share the outputs and results of your project?
Blocktrust will keep the Cardano community informed about our progress by providing updates as we achieve each of our milestones, typically on a monthly basis. We'll be communicating through Catalyst progress reports, our dedicated Discord channel, and videos showcasing the latest features of our product.
Occasionally, we may interact with the community in real-time during the Catalyst After Town Hall sessions. These sessions will give us an opportunity to show our progress and collect immediate feedback.
For Android, we’ll have Beta and Generally Available releases and distribution via the Google Play Store. For the iOS releases, they will be via Apple App Store.