Giter Club home page Giter Club logo

id_ideal_wallet's Introduction

Hidy wallet

The wallet

Wallet Application supporting W3C Verifiable Credentials and recent didcomm protocols to issue credentials to the wallet and request them from the wallet. It also support OpenID Connect for Verifiable Credential Issuance using the pre-authorized code flow and OpenID Connect for Verifiable Presentations.

The application also features a custodial lightning wallet.

This app is under development and for now only recommended to use for testing, demonstration and research purpose.

In case you experience problems when building the app

  • it might be, that it only works with latest flutter version 3.16.x (if you see an error message during pub get)
  • use flutter clean if you experience problems during build with the mobile_scanner package

App-Link

  • https://wallet.bccm.dev
  • App is able to scan codes pointing to a webview: https://wallet.bccm.dev/webview?url=https://maps.google.com&title=Karte, where url parameter is mandatory and title optional
  • if the url for the webview contains fragment and query it MUST be percent-encoded
  • the wallet will add a wallet id to the url if requested. To request this id, add the query-parameter wid= (without value) to your url.
  • the wallet can also understand links with ligthning-invoices or lnurls : https://wallet.bccm.dev/invoice?invoice=<lightning invoice> or https://wallet.bccm.dev/invoice?lnurl=<lnurl>

Important Notes

  • because the wallet store potential sensitive data the smartphone you run it on must offer an enrolled authentication mechanism (password, pin, pattern, fingerprint, face)
  • Documentation (Flow charts) explaining how the wallet react on specific didcomm messages can be found in doc folder
  • running the wallet works like running every other flutter app using flutter run after flutter pub get

Last update added Internationalization If building the app won't work out of box, run:

flutter gen-l10n

to generate needed translation files

App Links in iOS (universal links)

  1. Add "FlutterDeepLinkingEnabled": YES (boolean) to the Info.plist
  2. In Singing & Capabilities, add applinks:wallet.bccm.dev to the domains
  3. Create a file https://wallet.bccm.dev/.well-known/apple-app-site-association (must be https), with this content:
{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "9MY7ZZP3KS.eu.hidy.app",
        "paths": [
          "*"
        ]
      }
    ]
  }
}

(the weird code before the identifier is the team id, which can be found in the development team apple ID)

  1. Make sure that the file is delivered as content-type: application/json (it has no extension, so configure the web server accordingly)
  2. Write the app-internal code to handle routing

id_ideal_wallet's People

Contributors

saotto avatar mmeisel-hs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.