-
Notifications
You must be signed in to change notification settings - Fork 88
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
Add new Secure Area Test App. #395
Conversation
fb36e46
to
fef76fd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just had some questions, nothing blocking though
* <p>In general this is implemented by examining | ||
* <a href="https://developer.android.com/reference/android/content/pm/PackageManager#FEATURE_HARDWARE_KEYSTORE"> | ||
* FEATURE_HARDWARE_KEYSTORE</a> and | ||
* <a href="https://developer.android.com/reference/android/content/pm/PackageManager#FEATURE_STRONGBOX_KEYSTORE"> | ||
* FEATURE_STRONGBOX_KEYSTORE</a> to determine the KeyMint version for both | ||
* the normal hardware-backed keystore and - if available - the StrongBox-backed keystore. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just wondering what's the reasoning behind detailing implementation in the docstring?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Each method references the conditions of the particular capability and a lot of them reference KeyMint versions. I thought it was useful to at least link to this from somewhere.
@@ -0,0 +1,70 @@ | |||
package com.android.identity.secure_area_test_app.ui.theme |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do files like this (+ Color.kt, Type.kt) need copyright at the top?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably can't hurt. Added.
This is taken from the experimental-cloud-secure-area branch and adapted to show just AndroidKeystoreSecureArea and SoftwareSecureArea (will rebase that branch for all three secure areas once this is merged). Also rework how Android Keystore capabilities are reported and show these in the UI in the new SA test app. Since it's now possible to test AndroidKeystoreSecureArea under various conditions (for example when a Secure Lock Screen has not been set up) it's easier to verify our error handling paths. To that end, fix up propogated exceptions so they are easier to parse from the top-level exception message and not just the cause. Test: Manually tested
fef76fd
to
1f020f4
Compare
This is taken from the experimental-cloud-secure-area branch and adapted to show just AndroidKeystoreSecureArea and SoftwareSecureArea (will rebase that branch for all three secure areas once this is merged).
Also rework how Android Keystore capabilities are reported and show these in the UI in the new SA test app.
Since it's now possible to test AndroidKeystoreSecureArea under various conditions (for example when a Secure Lock Screen has not been set up) it's easier to verify our error handling paths. To that end, fix up propogated exceptions so they are easier to parse from the top-level exception message and not just the cause.
Test: Manually tested