Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into feat/multiSigEnhanced
Browse files Browse the repository at this point in the history
  • Loading branch information
iFergal committed May 7, 2024
2 parents dece778 + e17deae commit e1a6d59
Show file tree
Hide file tree
Showing 256 changed files with 15,074 additions and 10,274 deletions.
3 changes: 2 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
"jest": true
},
"globals": {
"__dirname": true
"__dirname": true,
"NodeJS": true
},
"extends": [
"eslint:recommended",
Expand Down
39 changes: 16 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# Disclaimer

<div align="justify">
<b> Please be aware that your access to and use of the Open-Source Identity Wallet, including any content you may encounter, is subject to your own discretion and risk. Currently, the identity wallet is under-development and security audits have yet to be conducted. It is essential to understand, this version of the identity wallet does not currently feature encryption-at-rest, nor does it offer robust recovery or backup solutions. Furthermore, any seed phrase generated during the onboarding process is currently not being utilised. We are in the process of reviewing the ideal key management and social recovery methodologies for development in 2024. </b>
<b> Please be aware that your access to and use of the Open-Source Identity Wallet, including any content you may encounter, is subject to your own discretion and risk. Currently, the identity wallet is under-development with security audits and threat modelling still pending. It is essential to understand, this version of the identity wallet does not currently feature encryption-at-rest, nor does it offer robust recovery or backup solutions. Furthermore, any seed phrase generated during the onboarding process is currently not being utilised. We are in the process of reviewing the ideal key management and social recovery methodologies for development in 2024. </b>
</div>
<br>
<div align="center">
Expand All @@ -28,7 +28,7 @@
# Overview

<div align="justify">
<b> The Identity Wallet is an open source application developed by the Cardano Foundation. This project is the result of ongoing research and development pertaining to the principles of Self-Sovereign Identity (SSI), Decentralized Identifiers (DIDs), Self-Certifying Identifiers (SCIs), Verifiable Credentials, Verifiable Data Registries (VDRs) and the standards, frameworks and implementations available within the Cardano ecosystem and externally. The first release of Identity Wallet provides an open source reference implementation demonstrating W3C Decentralized Identifiers, Verifiable Credentials, and Key Event Receipt Infrastructure (KERI) on Cardano. </b>
<b> The Identity Wallet is an open source application developed by the Cardano Foundation. This project is the result of ongoing research and development pertaining to the principles of Self-Sovereign Identity (SSI), Self-Certifying Identifiers (SCIs), Verifiable Data Registries (VDRs), and the standards, frameworks, and implementations available within the Cardano ecosystem and externally. The first release of Identity Wallet provides an open source reference implementation demonstrating the Key Event Receipt Infrastructure (KERI) on Cardano. </b>
</div>

<br>
Expand All @@ -46,21 +46,22 @@

# 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](https://github.com/hyperledger/aries-rfcs) | [Verifiable Credentials](https://www.w3.org/TR/vc-data-model/) | Holder-to-Holder | [Open Wallet Foundation](https://github.com/openwallet-foundation/agent-framework-javascript)|
| Android and iOS support | Hierarchical Deterministic (HD) Identity Wallet | [W3C](https://www.w3.org/) | [Autonomic Identifier](https://weboftrust.github.io/WOT-terms/docs/glossary/autonomic-identifier) (AID) | Issuer-to-Holder | [KERIA](https://github.com/cardano-foundation/keria) |
| | | [DIDComm](https://github.com/decentralized-identity/didcomm-messaging) | [ACDC](https://wiki.trustoverip.org/display/HOME/ACDC+%28Authentic+Chained+Data+Container%29+Task+Force) | [Credential Issuance Testing Tool](https://identity-wallet-credential-issuance-web-interface.vercel.app/) | [Signify-TS](https://github.com/cardano-foundation/signify-ts) |
| | | [KERI on Cardano](https://github.com/cardano-foundation/cardano-backer) | | | |
| **User Interface** | **Private Key Storage** | **Standards & Protocols** | **SSI Services** |
|----------------|---------------|---------------|----------------|
| Intuitive User Experience | Hardware Security Module (HSM) | [KERI](https://keri.one/) | [KERIA](https://github.com/cardano-foundation/keria) |
| Android | Secure Enclave (SE) | [ACDC](https://trustoverip.github.io/tswg-acdc-specification/) | [Signify-TS](https://github.com/cardano-foundation/signify-ts) |
| iOS | | [CESR](https://weboftrust.github.io/ietf-cesr/draft-ssmith-cesr.html) | [Credential Issuance Modules](https://identity-wallet-credential-issuance-web-interface.vercel.app/) | |
| | | | [KERI on Cardano](https://github.com/cardano-foundation/cardano-backer) |


# Potential Future Developments

|**App Features** | **Identity Recovery** | **Identifiers** | **Verifiable Credentials** | **Communications** | **Peer-to-Peer (P2P)** |
|----------------|---------------|---------------|----------------|----------------|----------------|
| Bluetooth | [Shamir Secret Sharing](https://en.wikipedia.org/wiki/Shamir%27s_secret_sharing)| [did:webs](https://labs.hyperledger.org/labs/didwebs.html#:~:text=did%3Awebs%20extends%20the%20web,%2C%20X509%2C%20and%20certificate%20authorities.) | [OID4vc](https://openid.net/sg/openid4vc/specifications/)| Messaging | [CIP-45](https://github.com/cardano-foundation/CIPs/pull/395) Support |
| Biometrics | On-chain Recovery | [did:keri](https://identity.foundation/keri/did_methods/) | On-Chain Schemas | Social Recovery | App Integration |
| NFC| Local Encrypted| | [AnonCreds](https://www.hyperledger.org/projects/anoncreds) | [DIDComm v2](https://identity.foundation/didcomm-messaging/spec/) | |
|Aries Askar | Cloud-based | | [Cheqd](https://cheqd.io/) | | |
|**Mobile Application Features** | **Decentralized Identifier Recovery** | **Standards & Protocols** | **Peer-to-Peer (P2P)** |
|----------------|---------------|----------------|----------------|
| Bluetooth | [Shamir Secret Sharing](https://en.wikipedia.org/wiki/Shamir%27s_secret_sharing)| Ledger-based Schemas | Private Messaging |
| Biometrics | On-chain Recovery | Direct Mode (Offline) | Social Recovery | App Integration |
| NFC| Local Encrypted| eIDAS 2.0 | [CIP-45](https://github.com/cardano-foundation/CIPs/pull/395) Support |
|Aries Askar | Cloud-based | [OID4vc](https://openid.net/sg/openid4vc/specifications/) | App Integration |


# Preview in your Browser
Expand Down Expand Up @@ -177,18 +178,12 @@ Please be aware that from time-to-time the hosted pre-production KERI services r
<br>

<div align="center">
<a href="https://discord.gg/Wh25yBqwpz">👨‍💻 Join our Discord! 👩‍💻
<a href="https://discord.gg/Wh25yBqwpz">👨‍💻 Join our Discord! 👩‍💻<a>
</div>


# Resources

## W3C
- [DID Core Specification](https://www.w3.org/TR/did-core/)
- [DID Methods Registry](https://www.w3.org/TR/did-spec-registries/)
- [Verifiable Credentials Data Model](https://www.w3.org/TR/vc-data-model/)
- [Verifiable Credential V2](https://www.w3.org/TR/vc-data-model-2.0/)

## KERI
- [Key Event Receipt Infrastructure](https://keri.one/)
- [Resources](https://keri.one/keri-resources/)
Expand All @@ -197,8 +192,6 @@ Please be aware that from time-to-time the hosted pre-production KERI services r
- [Cardano Backer](https://github.com/cardano-foundation/cardano-backer)

## Standards, Frameworks and Governance
- [Aries Framework JavaScript](https://github.com/openwallet-foundation/agent-framework-javascript)
- [Veramo](https://veramo.io/)
- [SSI Frameworks Overview](https://europeanblockchainassociation.org/ssi-frameworks-sdks-overview/)
- [Global Legal Entity Identifier Foundation (GLIEF)](https://www.gleif.org/en)
- [Decentralized Identity Foundation](https://identity.foundation/)
Expand Down
3 changes: 2 additions & 1 deletion android/app/capacitor.build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@ dependencies {
implementation project(':capacitor-community-barcode-scanner')
implementation project(':capacitor-community-sqlite')
implementation project(':capacitor-clipboard')
implementation project(':capacitor-filesystem')
implementation project(':capacitor-keyboard')
implementation project(':capacitor-preferences')
implementation project(':capacitor-screen-orientation')
implementation project(':capacitor-share')
implementation project(':capacitor-splash-screen')
implementation project(':capacitor-status-bar')

}

Expand Down
9 changes: 6 additions & 3 deletions android/capacitor.settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,20 @@ project(':capacitor-community-sqlite').projectDir = new File('../node_modules/@c
include ':capacitor-clipboard'
project(':capacitor-clipboard').projectDir = new File('../node_modules/@capacitor/clipboard/android')

include ':capacitor-filesystem'
project(':capacitor-filesystem').projectDir = new File('../node_modules/@capacitor/filesystem/android')

include ':capacitor-keyboard'
project(':capacitor-keyboard').projectDir = new File('../node_modules/@capacitor/keyboard/android')

include ':capacitor-preferences'
project(':capacitor-preferences').projectDir = new File('../node_modules/@capacitor/preferences/android')

include ':capacitor-screen-orientation'
project(':capacitor-screen-orientation').projectDir = new File('../node_modules/@capacitor/screen-orientation/android')

include ':capacitor-share'
project(':capacitor-share').projectDir = new File('../node_modules/@capacitor/share/android')

include ':capacitor-splash-screen'
project(':capacitor-splash-screen').projectDir = new File('../node_modules/@capacitor/splash-screen/android')

include ':capacitor-status-bar'
project(':capacitor-status-bar').projectDir = new File('../node_modules/@capacitor/status-bar/android')
2 changes: 1 addition & 1 deletion docker-assets/mediator/Caddyfile
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,4 @@
# format single_field common_log
level DEBUG
}
}
}
4 changes: 2 additions & 2 deletions docs/images/readme/Architecture-Diagram.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion ios/App/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,12 @@ def capacitor_pods
pod 'CapacitorCommunityBarcodeScanner', :path => '../../node_modules/@capacitor-community/barcode-scanner'
pod 'CapacitorCommunitySqlite', :path => '../../node_modules/@capacitor-community/sqlite'
pod 'CapacitorClipboard', :path => '../../node_modules/@capacitor/clipboard'
pod 'CapacitorFilesystem', :path => '../../node_modules/@capacitor/filesystem'
pod 'CapacitorKeyboard', :path => '../../node_modules/@capacitor/keyboard'
pod 'CapacitorPreferences', :path => '../../node_modules/@capacitor/preferences'
pod 'CapacitorScreenOrientation', :path => '../../node_modules/@capacitor/screen-orientation'
pod 'CapacitorShare', :path => '../../node_modules/@capacitor/share'
pod 'CapacitorSplashScreen', :path => '../../node_modules/@capacitor/splash-screen'
pod 'CapacitorStatusBar', :path => '../../node_modules/@capacitor/status-bar'
end

target 'App' do
Expand Down
60 changes: 35 additions & 25 deletions ios/App/Podfile.lock
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
PODS:
- AparajitaCapacitorSecureStorage (5.0.0):
- AparajitaCapacitorSecureStorage (5.2.0):
- Capacitor
- Capacitor (5.5.1):
- KeychainSwift (~> 21.0)
- Capacitor (5.7.4):
- CapacitorCordova
- CapacitorClipboard (5.0.6):
- CapacitorClipboard (5.0.7):
- Capacitor
- CapacitorCommunityBarcodeScanner (4.0.1):
- Capacitor
- CapacitorCommunitySqlite (5.5.0):
- CapacitorCommunitySqlite (5.7.1):
- Capacitor
- SQLCipher
- ZIPFoundation
- CapacitorCordova (5.5.1)
- CapacitorFilesystem (5.1.4):
- CapacitorCordova (5.7.4)
- CapacitorKeyboard (5.0.8):
- Capacitor
- CapacitorKeyboard (5.0.6):
- CapacitorPreferences (5.0.7):
- Capacitor
- CapacitorPreferences (5.0.6):
- CapacitorScreenOrientation (5.0.7):
- Capacitor
- CapacitorShare (5.0.6):
- CapacitorShare (5.0.7):
- Capacitor
- CapacitorSplashScreen (5.0.6):
- CapacitorSplashScreen (5.0.7):
- Capacitor
- CapacitorStatusBar (5.0.7):
- Capacitor
- KeychainSwift (21.0.0)
- SQLCipher (4.5.5):
- SQLCipher/standard (= 4.5.5)
- SQLCipher/common (4.5.5)
Expand All @@ -36,14 +40,16 @@ DEPENDENCIES:
- "CapacitorCommunityBarcodeScanner (from `../../node_modules/@capacitor-community/barcode-scanner`)"
- "CapacitorCommunitySqlite (from `../../node_modules/@capacitor-community/sqlite`)"
- "CapacitorCordova (from `../../node_modules/@capacitor/ios`)"
- "CapacitorFilesystem (from `../../node_modules/@capacitor/filesystem`)"
- "CapacitorKeyboard (from `../../node_modules/@capacitor/keyboard`)"
- "CapacitorPreferences (from `../../node_modules/@capacitor/preferences`)"
- "CapacitorScreenOrientation (from `../../node_modules/@capacitor/screen-orientation`)"
- "CapacitorShare (from `../../node_modules/@capacitor/share`)"
- "CapacitorSplashScreen (from `../../node_modules/@capacitor/splash-screen`)"
- "CapacitorStatusBar (from `../../node_modules/@capacitor/status-bar`)"

SPEC REPOS:
trunk:
- KeychainSwift
- SQLCipher
- ZIPFoundation

Expand All @@ -60,32 +66,36 @@ EXTERNAL SOURCES:
:path: "../../node_modules/@capacitor-community/sqlite"
CapacitorCordova:
:path: "../../node_modules/@capacitor/ios"
CapacitorFilesystem:
:path: "../../node_modules/@capacitor/filesystem"
CapacitorKeyboard:
:path: "../../node_modules/@capacitor/keyboard"
CapacitorPreferences:
:path: "../../node_modules/@capacitor/preferences"
CapacitorScreenOrientation:
:path: "../../node_modules/@capacitor/screen-orientation"
CapacitorShare:
:path: "../../node_modules/@capacitor/share"
CapacitorSplashScreen:
:path: "../../node_modules/@capacitor/splash-screen"
CapacitorStatusBar:
:path: "../../node_modules/@capacitor/status-bar"

SPEC CHECKSUMS:
AparajitaCapacitorSecureStorage: 4e40b517555ee2a0e6e034d4bd744b413b98483c
Capacitor: 9da0a2415e3b6098511f8b5ffdb578d91ee79f8f
CapacitorClipboard: 77edf49827ea21da2a9c05c690a4a6a4d07199c4
AparajitaCapacitorSecureStorage: 2f3a28fa7cf90053bf5b56834607349cbf9f24ca
Capacitor: 4fe9adf012caceb4c71ffea2f1f4d005cdcbeea7
CapacitorClipboard: 45e5e25f2271f98712985d422776cdc5a779cca1
CapacitorCommunityBarcodeScanner: 7feb206489c8555a8ca0c74c57ddf49ead774eb8
CapacitorCommunitySqlite: f2dd4fa2f41f48ee509b506dc1930347cd32ba31
CapacitorCordova: e128cc7688c070ca0bfa439898a5f609da8dbcfe
CapacitorFilesystem: af704badfbc69f6f8623d9ed313e5490e3723dcb
CapacitorKeyboard: b978154b024a5f65e044908e37d15b7de58b9d12
CapacitorPreferences: f03954bcb0ff09c792909e46bff88e3183c16b10
CapacitorShare: cd41743331cb71d217c029de54b681cbd91e0fcc
CapacitorSplashScreen: 5fa2ab5e46cf5cc530cf16a51c80c7a986579ccd
CapacitorCommunitySqlite: 6e2754dde799d618a8e75e409ccc67ec9c189460
CapacitorCordova: a6e87fccc0307dee7aec1560ec9398485f2b0ce7
CapacitorKeyboard: aec619a578235c6ce279075009a2689c2cf5c42c
CapacitorPreferences: 77ac427e98db83bace772455f8ba447430382c4c
CapacitorScreenOrientation: cc638c369cb2b1dfc55f8265485a8b4e0b3cafd9
CapacitorShare: c6a1ebbf0114ff9e863b966cd6052678fa25d480
CapacitorSplashScreen: dd3de3f3644710fa2a697cfb91ec262eece4d242
CapacitorStatusBar: f390fbb49b82ffb754ea4b3cf71dc8b048baf3e7
KeychainSwift: 4a71a45c802fd9e73906457c2dcbdbdc06c9419d
SQLCipher: f2e96b3822e3006b379181a0e4fd145f6de29b56
ZIPFoundation: d170fa8e270b2a32bef9dcdcabff5b8f1a5deced

PODFILE CHECKSUM: 12c7c6ec093cad0df115dcc9a34d57cc41e85bfb
PODFILE CHECKSUM: 90423924fbe85f2efaaf46e65be5f444629b2f3a

COCOAPODS: 1.11.3
COCOAPODS: 1.15.2

0 comments on commit e1a6d59

Please sign in to comment.