-
Notifications
You must be signed in to change notification settings - Fork 88
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Assorted Credential and Auth Key changes. (#415)
Introduce the concept of "domains" on authentication keys. This already existed for CredentialUtil.managedAuthenticationKeyHelper() so port this method to use it. This new concept makes it easier to have a single Credential support multiple credential formats, for example one auth key domain could be "mdoc/mDL", another could be "SD-JWT", a third could be something else. Add support for NameSpacedData on ApplicationData. Also remove the nameSpacedData member on Credential and port users to use the "credentialData" key on the associated aplicationData member. Application changes: - Auth key inspection UI: show counter instead of alias, show domain and Secure Area - Rework how SecureArea.CreateKeySettings instances are created for auth keys - Always use Android Keystore and P-256 for CredentialKey, regardless of Secure Area used - Move generation of response off the UI thread With these changes, the CloudSecureArea from the experimental-cloud-secure-area branch works out of the box, just add a couple of lines of code in HolderApp.createCredentialStore() to add it to the SecureAreaRepository and things work out of the box, for example ``` val cloudSecureArea = CloudSecureArea( context, storageEngine, "https://your-csa-server-here.example.com/csa-server/" ) { /* code for checking Root Of Trust for Cloud Secure Area */ } Executors.newSingleThreadExecutor().execute(kotlinx.coroutines.Runnable { if (!cloudSecureArea.isRegistered) { cloudSecureArea.register() } }) secureAreaRepository.addImplementation(cloudSecureArea) ``` This changes the on-disk format so change the location of where local data is stored. Users upgrading to this new version will have to reprovision their credentials.. Test: New unit tests and all unit tests pass Test: Manually tested using both Android Keystore and Software Secure Area
- Loading branch information
Showing
41 changed files
with
683 additions
and
425 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.