Skip to content

mbirnhak/TrinityWallet

Repository files navigation

Trinity Wallet - eIDAS 2.0 Compliant Digital Identity Wallet

Trinity Wallet is an eIDAS 2.0 compliant digital identity wallet designed for Trinity College students. It leverages Microsoft Azure for authentication, OpenID4VCI for credential issuance, OpenID4VP for credential presentation, and encrypted SQLite (SQLCipher) for on-device storage. BLE capabilities are integrated to unlock smart locks, and ECDSA-based signing allows for secure digital signatures. It serves as a robust blueprint for building digital identity wallets compliant with eIDAS 2.0 standards.


🚀 Features

  • Microsoft Azure Authentication: Secure login using Trinity College credentials.

  • 6-Digit PIN & Face ID: Access controlled with bcrypt-hashed PIN and biometric authentication.

  • Credential Management:

    • Request credentials from the eIDAS Expert Group Issuer using OpenID4VCI.
    • Securely store credentials in an encrypted SQLite database.
    • View and delete credentials with a clean UI.
  • Credential Presentation:

  • Activity Logs: Real-time logging for recent activity.

  • Smart Lock Integration:

    • BLE-based unlocking for KUCACCI T17 smart lock.
    • Demo app available here.
  • Digital Signatures:

    • Self-sign and embed digital (and handwritten) signatures into PDF documents using ECDSA.
  • Profile Customization:

    • Upload profile picture, set display name, and manage personal information.
  • Home Dashboard:

    • Quick access to logout, profile updates, and app details.

🔧 Installation

  1. Clone the repository:

    git clone https://github.com/mbirnhak/TrinityWallet.git
    cd TrinityWallet
  2. Install dependencies:

    npm install
  3. Prebuild the app:

    npx expo prebuild
  4. Start the app:

    npx expo start
  5. Open in:

    • Android Emulator
    • iOS Simulator
    • Expo Go (for mobile testing)

🔐 Backup & Restoration (Upcoming)

  • Planned implementation:

    • Secure database storage in Microsoft Azure.
    • Shamir Secret Sharing for decryption key distribution.

📡 Endpoints Used


📱 Demo & Assets

TrinityWalletDemo.mp4

Trinity Wallet Logo

  • App Logo: TrinityWalletLogo.png
  • Demo Video: TrinityWalletDemo.mp4

Located in the root directory of the repository.


👥 Contributors


📫 Contact

For inquiries, reach out:


🔄 Contributing

Submit a Pull Request or open an issue for enhancements or bug fixes. Contributions are welcome!


🎓 Learn More

Happy Building! 🚀

About

This is an eIDAS 2.0 compliant digital identity wallet prototype for Trinity College

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors