Technical Assessment
To minimize impact to the existing codebase, we will only be replacing two components in the current setup:
New Component | Previous Component (To be replaced) | Description |
---|---|---|
SaFi IAM SDK | VIDA SDK | This will replicate VIDA SDKs functionalities especially key generation and registration |
IAM Manager + IAM DB | VIDA BE | This will replicate VIDA BE’s functionalities especially as repository of the public keys |
DB Design
The revised sequence diagram below illustrates the minor changes in the flow notably the interactions with the new components. New flows are highlighted in orange.
Key Registration
Request Signing and Verification
All of the flows below are new but follows the same pattern as the current one implemented for VIDA.
IAM SDK (Mobile)
IAM SDK will depend on:
Secure Storage: https://pub.dev/packages/flutter_secure_storage
Crypto Key: https://pub.dev/packages/crypto_keys
Biometric: https://pub.dev/packages/local_auth
Attachments:
plantuml_1676546635137.svg (image/svg+xml)
plantuml_1676546635137.png (image/png)
plantuml_1676559144158.svg (image/svg+xml)
plantuml_1676559144158 (text/plain)
plantuml_1676559144158.png (image/png)
plantuml_1676546635137 (text/plain)
plantuml_1676546635137.svg (image/svg+xml)
plantuml_1676546635137.png (image/png)
plantuml_1676546635137 (text/plain)
plantuml_1676546635137.svg (image/svg+xml)
plantuml_1676546635137.png (image/png)
Untitled-20230216-164032.png (image/png)
vida-replacement-db-design (application/vnd.jgraph.mxfile)
vida-replacement-db-design.png (image/png)
plantuml_1676546635137.svg (image/svg+xml)
plantuml_1676546635137 (text/plain)
plantuml_1676546635137.png (image/png)