Open Hugloss opened 8 months ago
Thank you for your submission.
The ARF does not take a stance on the architecture of implementations of Wallet solutions, and so the proposal is good but out of scope for the ARF document. Component description in the Reference architecture will be improved in version 1.4.0 (ARF v1.4)
Description
ARF needs to accurately describe the EUDI Wallet Solution as it is implemented, including both the CORE and GUI components. Currently, there is a discrepancy between ARF 1.3 and the actual implementation of the EUDI Wallet Solution. It's crucial to explicitly state that the EUDI Wallet Solution consists of both CORE and GUI components, which is not currently mentioned in the ARF.
I believe that the EUDI Wallet Solution has a CORE part at minimum, with the potential addition of a GUI part. This architecture is also described in the documentation for the actual implementation https://github.com/eu-digital-identity-wallet/eudi-lib-android-wallet-core?tab=readme-ov-file#overview
Describing the EUDI Wallet Solution in this manner simplifies its architecture and clarifies how it should be implemented on devices other than mobiles.
To meet the needs for a server environment, either as an on-premise solution or in the cloud, the architecture of the EUDI Wallet Solution must be divided into distinct components. In server implementations, there is a clear separation between the various components, CORE and GUI.
The CORE component contains all base functionality, it is the essential component that manages the operations of the wallet solution. The CORE component is mandatory in all EUDI Wallet Solutions.
The GUI is an optional component that provides additional functionality. It offers a user-friendly interface and seamlessly integrates with the CORE system. Within the GUI, end users can manage attestations, including PIDs and (Q)EAAs. It also has the ability to display attestations and presentations, track their status, and even allow users to revoke an attestation. Importantly, the GUI relies on the CORE part for its fundamental functionality.
CORE https://github.com/eu-digital-identity-wallet/eudi-lib-android-wallet-core
GUI https://github.com/eu-digital-identity-wallet/eudi-app-android-wallet-ui
User Story
User: As a wallet solution architecture, I want to accurately describe the EUDI Wallet Solution as it is implemented, including both the CORE and GUI components Goal: To ensure that the EUDI Wallet Solution support server environments Reason: Currently, there is a discrepancy between ARF 1.3 and the real implementation of the EUDI Wallet Solution. Explicitly stating that the solution consists of both CORE and GUI parts will provide clarity and simplify its architecture for developers and users alike.
Acceptance Criteria
The EUDI Wallet Solution support server environments, by defining a clear separation between the CORE and GUI components