cf-identity-wallet
cf-identity-wallet copied to clipboard
Identity Wallet is an open source mobile application developed by the Cardano Foundation. It provides a digital solution for users to securely store, manage, and share their identifiers and verifiable...
Cardano Foundation | Identity Wallet
Disclaimer
Overview
Features
User Interface | Secure Storage | Interoperability | Standards & Protocols | Connections & Credential Issuance | SSI Agents |
---|---|---|---|---|---|
Intuitive User Experience | Hardware Security Module (HSM) or Secure Enclave (SE) securely stores private key material | Aries RFCs | Verifiable Credentials | Holder-to-Holder | Open Wallet Foundation |
Android and iOS support | Hierarchical Deterministic (HD) Identity Wallet | W3C | Autonomic Identifier (AID) | Issuer-to-Holder | KERIA |
DIDComm | ACDC | Credential Issuance Testing Tool | Signify-TS | ||
KERI on Cardano |
Potential Future Developments
App Features | Identity Recovery | Identifiers | Verifiable Credentials | Communications | Peer-to-Peer (P2P) |
---|---|---|---|---|---|
Bluetooth | Shamir Secret Sharing | did:webs | OID4vc | Messaging | CIP-45 Support |
Biometrics | On-chain Recovery | did:keri | On-Chain Schemas | Social Recovery | App Integration |
NFC | Local Encrypted | AnonCreds | DIDComm v2 | ||
Aries Askar | Cloud-based | Cheqd |
Preview in your Browser
Disclaimer: This preview version is not intended to be used for any purposes other than previewing the application.
To experience the mobile application within the browser, please select one of the following links below, depending on whether you are accessing the preview version on your desktop or mobile device.
🔗 Preview the latest version of the Identity Wallet on your browser 🔗
Architecture
User Flows
In this section, you'll find detailed PDF documents outlining the various user flows within our application. These user flows serve as comprehensive guides, illustrating the application's user journeys step-by-step. Please feel free to explore and gain insight into the following user flows:
Getting Started
Requirements
- Node.js: Version 18.16.0.
- npm: Compatible with the Node.js version.
- Xcode: For iOS emulation (latest version recommended).
- Android Studio: For Android emulation (latest version recommended).
- Capacitor: Version 4.8.1 (refer to package.json). For detailed environment setup, refer to the Capacitor Environment Setup Guide.
- Mobile Device: iOS or Android for running the app on physical devices.
- Docker (only required if running the credential server in Docker).
Ensure that your system meets these requirements to successfully use and develop the Identity Wallet application.
Cloning the Repository
git clone https://github.com/cardano-foundation/cf-identity-wallet.git
cd cf-identity-wallet
Preparing the App
This project uses a specific node version (check the requirements section above). You can optionally use nvm to manage and switch between different Node.js versions on your computer.
Before running the App, ensure that all dependencies are installed and the app is built properly. In the project root directory, run the following commands:
npm install
Running in the Browser
npm run dev
This command starts the development server and allows you to preview the application on your browser by opening this localhost address:
Running in an Emulator
You can discover how to run the application in an emulator by following this link.
End-to-End (E2E) Testing
You can gain additional insights into end-to-end testing by visiting the provided link.
Contributing
All contributions are welcome! Please feel free to open a new thread on the issue tracker or submit a new pull request.
Please read Contributing in advance. Thank you for contributing!
Additional Documents
- Code of Conduct
- Security
- Changelog
Troubleshooting
Resources
W3C
- DID Core Specification
- DID Methods Registry
- Verifiable Credentials Data Model
- Verifiable Credential V2