-
Notifications
You must be signed in to change notification settings - Fork 179
feat: Add RSA KeyStore attestation support #50
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
base: master
Are you sure you want to change the base?
feat: Add RSA KeyStore attestation support #50
Conversation
Currently, the application only allows for verifying ECDSA keys as it lacked support for attesting RSA keys within the Android KeyStore. With this commit, it allows to perform a complete validation of the two currently supported asymmetric key types in the Android KeyStore. A new menu option "Attest RSA key" was added for this purpose. Additionally, when exporting the keychain in p7b format, the keystore's type will be included as part of the filename to differentiate between the ECDSA (current default) and RSA. Signed-off-by: linuxct <linuxct@linuxct.space>
|
More features, even better. If you want you can look there: |
|
@VisionR1 seeing that it's a single commit, think you could cherrypick it and include it in your own fork? |
Yeah, i can take all the changes, and merged manually, like i did with other features from the fork of chiteroman. For that i write my above comment to see @linuxct and if want send a PR to my fork, or if I have permission to merged manually. |
|
Done. 👍 VisionR1#4 Thanks @linuxct, for this useful feature. |
|
@linuxct make sure to disable RSA attestation when SAK is enabled, as SAK only supports EC attestation. |
Thanks for info, didn't know that, and i have already merge this PR with my fork. So, in the AndroidKeyStore.java, in the generateKeyPair part, after boolean useSak) { Must add something like this ? |
|
It's better to disable the toggle/attestation in HomeFragment.kt & HomeViewModel.kt just like it's currently done with attest key/strongbox. KeyAttestation/app/src/main/java/io/github/vvb2060/keyattestation/home/HomeFragment.kt Lines 145 to 146 in e9454a2
KeyAttestation/app/src/main/java/io/github/vvb2060/keyattestation/home/HomeViewModel.kt Lines 193 to 194 in e9454a2
|
menu.findItem(R.id.menu_attest_rsa_key)?.isVisible = !viewModel.preferSakval attestKeyStoreKeyType =
if (preferAttestRsaKey && !useSak) { KeyStoreKeyType.RSA }
else { KeyStoreKeyType.ECDSA } |
|
Oh yeah, i forgot we can disable by default the toggle when use Sak, much more simple. Thanks @salvogiangri for the idea. EDIT: Added. |
Thanks @salvogiangri vvb2060#50 (comment) vvb2060#50 (comment) Also Update README.md for proper info about this fork & the strings for the new feature (see PR #4).
Currently, the application only allowed verifying ECDSA keys as it lacked support for attesting RSA keys within the Android KeyStore. This PR adds support to perform a complete validation of the two currently supported asymmetric key types in the Android KeyStore.
A new menu option "Attest RSA key" was added for this purpose. Additionally, when exporting the keychain in p7b format, the keystore's type will be included as part of the filename to differentiate between the ECDSA (current default) and RSA.
Prebuilt CI outputs: