KiruthikaJeyashankar 82740bcc36 [INJIMOB-2471] set UUID as vc identifier (#1745)
* [INJIMOB-2471] make identifier of Vc as random UUID

Previously, we were relying on the id feild of the Vc to construct the unique identifier for VC component and file name for storing VC, this identifier in now replaced with random generated UUID. This was made since id property of VC is optional field as per w3c data-model 1.1.

We are using UUID version 4 to ensure randomness and collision-resistance.

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2471] maintain consistency in setting VCMetadata ID

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJICERT-2471] use VC metadata id as VC key

This VC key will be used for storing file name, component key & other identifier for VCs

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2471] remove setting identifier field in credential wrapper

The identitifier in credentialWrapper having the value "$issuer:$protocol:$UUID" was used to construct VC metadata id, issuer and protocol field which is already available in context param. This is now replaced with constructing VC metadata with the required fields available in machine context.

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2471] use context VCMetadata instead of calling function for accessing in issuersMachine

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2471] optimize import

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

---------

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
2024-12-24 10:00:27 +05:30
2022-02-15 10:26:25 +07:00
2022-05-11 18:40:05 +08:00
2023-12-20 10:17:46 +05:30
2022-02-28 13:39:10 +08:00
2022-02-15 10:26:25 +07:00

Inji

Inji Mobile Wallet is a mobile application specifically created to streamline all types of identification and credentials into one digital wallet. It offers a secure, trustworthy, and dependable mobile Verifiable Credentials wallet designed to fulfil the following functions

  • Download and store Verifiable Credentials
  • Share Verifiable Credentials
  • Enable users to log in to relying parties with their credential
  • Generate a QR code for the credential to be shared offline with relying parties.

for more details refer here

Setup PreRequisites

Be sure to have the following build tools installed before proceeding:

Android

iOS

  • XCode = >15
  • Minimum Deployment Target = 13.0
  • cocoapods > 1.12
  • Ruby >= 2.6.10

Configuring the Environment

If you ever want to use something in your local environment based on your customization and in need of using environment files other than default (.env), you can add some variables to your .env.local file. Create a .env.local file using .env as your template in your root directory :

# Mimoto Server
MIMOTO_HOST =  https://api.collab.mosip.net/

# ESignet Server
ESIGNET_HOST =  https://esignet.collab.mosip.net/

# Telemetry Server
OBSRV_HOST = https://dataset-api.obsrv.mosip.net
Telemetry Dashboard = https://druid.obsrv.mosip.net/unified-console.html#workbench

#Application Theme can be ( grdaient | purple ), defaults to grdaient theme
APPLICATION_THEME=grdaient

#environment can be changed if it is toggled
CREDENTIAL_REGISTRY_EDIT=true

#Inji Wallet CLIENT ID for Data backup & Restore
GOOGLE_ANDROID_CLIENT_ID='<client_id>'

for more information on the backend services refer here.

Building & Running for Android

Refer to the documentation of Inji Wallet's build and deployment android section for the steps build the android application.

Note: Alternative to building and running app via react native CLI, it can be built via Android Studio. The app is available in this repository's ./android directory. Open this directory in Android Studio (version
4.1 and above) and the app can be built and run from there.

More info here:

Building & Running for iOS

Refer to the documentation of Inji Wallet's build and deployment iOS section for the steps build the iOS application.

More info here:

Contributions

Please refer here for contributing to Inji

Credits

Credits listed here

Troubleshooting

If you can't get this to work, see the Troubleshooting page. this project runtime can be debugged using Flipper.

Learn More

To learn more about React Native, take a look at the following resources:

Description
No description provided
Readme MIT 299 MiB
Languages
TypeScript 86.6%
Kotlin 5.2%
Swift 2.7%
Java 2.6%
JavaScript 1.4%
Other 1.4%