Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secure area definitions and key management functionality #49

Merged
merged 28 commits into from
Nov 27, 2024

Conversation

phisakel
Copy link
Collaborator

Secure area definitions and refactor key management structures. Introduce new protocols and enums to streamline key access and management, while ensuring compatibility with existing cide.

This commit refactors the secure area key options and purpose. It introduces a new file `KeyOptions.swift` that defines the tasks for which keys can be used, such as signing and key agreement. It also adds a new enum `KeyAccessProtection` to specify the condition for the key to be available. Additionally, the `KeyPurpose.swift` file has been deleted as it is no longer needed.
…ce and requirePassword in KeyAccessControl struct
…f ECCurveType

Refactor the CoseKey and CoseKeyPrivate structs in the CoseKey.swift file to use the CoseEcCurve enum instead of the ECCurveType enum. This change ensures consistency and clarity in the codebase.

Refactor DeviceEngagement to use CoseEcCurve enum in initializer

Refactor the DeviceEngagement struct in the DeviceEngagement.swift file to use the CoseEcCurve enum in the initializer instead of the ECCurveType enum. This change improves code readability and maintainability.

Update CoseEcCurve to use UInt64 raw value type

Update the CoseEcCurve enum in the CoseEcCurve.swift file to use UInt64 as the raw value type instead of Int. This change aligns with the COSE registry and ensures compatibility with iOS natively supported curves.

Refactor KeyOptions.swift to use requireApplicationPassword instead of requirePassword

Refactor the KeyOptions.swift file to use the requireApplicationPassword property instead of the requirePassword property in the KeyAccessControl struct. This change improves clarity and consistency in the codebase.
…ance key management and support actor-based concurrency
…tor model for improved concurrency and key management
…n to simplify signature method and improve code clarity
…n to adopt actor model and support async operations
@phisakel phisakel requested a review from a team as a code owner November 27, 2024 14:03
@phisakel phisakel merged commit 29f30a9 into eu-digital-identity-wallet:main Nov 27, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants