Commit Graph

888 Commits

Author SHA1 Message Date
Yo Chiang
7d66876dce Merge "Keystore 2.0: Fix infinit recursion." am: 544f3d5211 am: d68724597d am: bcd0c980ff
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1645913

Change-Id: I685b5bf126dd50c2b9ac1e062132e782110e3e9d
2021-03-19 09:44:27 +00:00
Janis Danisevskis
8758b2ceaf Keystore 2.0: Fix infinit recursion.
Fix endless recursion when Cipher is initialized with
AndroidKeyStorePrivateKey.

Fixes: 183167349
Test: atest android.keystore.cts.AndroidKeyStoreTest#testKeyStore_Encrypting_RSA_NONE_NOPADDING
Change-Id: I5b4166fb1a4e298072f7156ba61a64966e86dc53
2021-03-19 08:09:34 +00:00
Treehugger Robot
be1b1d5550 Merge "Keystore 2.0: Fix diagnosing invalid key in CipherSpiBase." 2021-03-18 23:46:37 +00:00
Janis Danisevskis
0b66a19bdd Keystore 2.0: No longer install the legacy provider.
The legacy provider is obsolete now that all calling code has
been fixed.

Bug: 183100147
Bug: 183093711
Bug: 171305684
Test: N/A
Merged-In: I0d71d3c9cdd586a508827eb26120c872cb8643ea
Change-Id: I0d71d3c9cdd586a508827eb26120c872cb8643ea
2021-03-18 20:24:39 +00:00
Janis Danisevskis
0b858aef63 Keystore 2.0: Fix diagnosing invalid key in CipherSpiBase.
Bug: 183101158
Test: atest CtsLibcoreTestCases:com.android.org.conscrypt.javax.crypto.CipherBasicsTest#testAeadEncryption

Merged-In: Idc9c7dc2614a47818227a06fe76078f72c0c1f57
Change-Id: Idc9c7dc2614a47818227a06fe76078f72c0c1f57
2021-03-18 19:41:56 +00:00
Janis Danisevskis
a1963a9b64 Keystore 2.0: Fix diagnosing invalid key in CipherSpiBase.
Bug: 183101158
Test: atest CtsLibcoreTestCases:com.android.org.conscrypt.javax.crypto.CipherBasicsTest#testAeadEncryption

Change-Id: Idc9c7dc2614a47818227a06fe76078f72c0c1f57
2021-03-18 12:28:45 -07:00
Janis Danisevskis
d2d4c69a66 Keystore 2.0: No longer install the legacy provider.
The legacy provider is obsolete now that all calling code has
been fixed.

Bug: 183100147
Bug: 183093711
Bug: 171305684
Test: N/A
Change-Id: I0d71d3c9cdd586a508827eb26120c872cb8643ea
2021-03-18 09:47:33 -07:00
Janis Danisevskis
88664f6586 Merge "Keystore 2.0: Remove hidden Keystore API from locksettings tests." am: 665844b1e2 am: a8781112be am: 5f2b63be5e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1638940

Change-Id: Ibd44148535bc5d02fc4b9a9f7d58cd32151829ce
2021-03-17 22:12:11 +00:00
Janis Danisevskis
53ed9207a7 Keystore 2.0: Remove hidden Keystore API from locksettings tests.
Test: N/A
Bug: 171305684
Change-Id: I6fd90c29dd1fb077c25f1bd428fb8adf9782330e
2021-03-15 18:33:46 -07:00
Alex Johnston
ef6aa4d213 Merge "Unregister cred mng app KeyChain API" into sc-dev 2021-03-15 10:26:35 +00:00
Hasini Gunasinghe
e4db265623 Merge "Keystore2: Integrate getState method of IKeystoreMaintenance AIDL." am: 11e324829e am: 181ffb4bec am: 216234ab45
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1630059

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibd0c0c34bf9ab1f3df6a8cab5fb111893678e0cc
2021-03-12 18:42:35 +00:00
Hasini Gunasinghe
e92adf724b Keystore2: Integrate getState method of IKeystoreMaintenance AIDL.
Bug: 176123105
Test: TBD
Change-Id: I8bc6bf219f7c4bb3722c310debcc8a276d14ed98
2021-03-12 00:07:44 +00:00
Treehugger Robot
2bfebf3c69 Merge "Keystore 2.0: Rename KeystoreUserManagement KeystoreMaintenance" am: 721f75ec5a am: 2172f58763 am: 49e95446fe
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1623080

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Id87860c4d3741a78a5b7aa8bb67931e5c8581e59
2021-03-11 13:01:02 +00:00
Treehugger Robot
721f75ec5a Merge "Keystore 2.0: Rename KeystoreUserManagement KeystoreMaintenance" 2021-03-11 11:20:11 +00:00
Alex Johnston
1d524e6672 Unregister cred mng app KeyChain API
Bug: 177979648
Test: CTSVerifier CredentialManagementAppActivity
Change-Id: I8c9e22b2334e8e060bc00701f1d2bec76950faf3
2021-03-11 11:01:30 +00:00
Janis Danisevskis
6bf2762532 Merge "Modify AttestationUtils to use public Keystore API" am: 7a46c3c1fd am: a1d687e0e5 am: 0ce87eacbb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1622922

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6e7fab5ec09589a2fc5da0548f5f2a48e7130baf
2021-03-11 08:13:02 +00:00
Janis Danisevskis
30f847faa2 Merge "Keystore 2.0: Fix TODOs in public doc comments." am: 12ddcc8874 am: f81dbc08ea am: 9fbbc616c5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1626281

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I85945d2c9d6fe178d4a3dd6dece03c06c8ff60b8
2021-03-11 08:12:02 +00:00
Janis Danisevskis
7a46c3c1fd Merge "Modify AttestationUtils to use public Keystore API" 2021-03-11 06:47:41 +00:00
Janis Danisevskis
274a93e953 Keystore 2.0: Fix TODOs in public doc comments.
Bug: 174580379
Test: N/A
Change-Id: If893c408156b2481a22730de22f1a7ba391d88eb
2021-03-10 11:22:22 -08:00
Janis Danisevskis
7160506468 Keystore 2.0: Rename KeystoreUserManagement KeystoreMaintenance
Test: N/A
Change-Id: I252f75fc6d918029ef682c20edb3fb667ebaf8db
2021-03-08 09:27:41 -08:00
Shawn Willden
0306b1ced8 Modify AttestationUtils to use public Keystore API
AttestationUtils calls directly into keystore1 to generate ID
attesations.  This needs to change prior to keystore2 being enabled
and keystore1 deleted.  This CL changes the AttestationUtils to use
the public API (and one SystemAPI method) to generate ID attestations,
allowing the lower layers to handle the transition between keystore1
and keystore2.

Test: CtsKeystoreTestCases
Change-Id: I64a230b9983cc90767a60d6e7cf2abcf5dfb0108
2021-03-08 09:52:33 -07:00
Treehugger Robot
f41a01c8d2 Merge "Keystore 2.0: Silence common error on operation abort." am: 492ab3dd2c am: 11cb680764 am: b956f8b6f0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1619901

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic0216e28a74d9583eb6509488909449bc48e5dfa
2021-03-08 16:08:47 +00:00
Treehugger Robot
492ab3dd2c Merge "Keystore 2.0: Silence common error on operation abort." 2021-03-08 14:10:27 +00:00
Pavel Grafov
af9181a67d Merge changes from topics "wifi-dpm-grant", "wifi-keychain" into sc-dev
* changes:
  Allow WiFi module to request grants from KeyChain
  DPM API to grant keys to Wifi
2021-03-06 12:12:14 +00:00
Pavel Grafov
685bbb18fe Allow WiFi module to request grants from KeyChain
Bug: 160457441
Test: atest MixedDeviceOwnerTest#testAddNetworkWithKeychainKey_granted
Test: atest MixedDeviceOwnerTest#testAddNetworkWithKeychainKey_notGranted
Test: atest MixedManagedProfileOwnerTest#testAddNetworkWithKeychainKey_granted
Change-Id: I89d753f9000ef2616ffbe3df11c003ac54ddee26
2021-03-05 13:05:03 +00:00
Alex Johnston
4183c1d4a7 Merge "AppUriAuthenticationPolicy and UrisToAliases equals and hashcode" into sc-dev 2021-03-05 09:31:15 +00:00
Treehugger Robot
a615e5eceb Merge "Fix subject in self-signed certificates." am: a27ce04850 am: 19c771ec4e am: 508469a1fe
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1619939

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If94978b20c4bb2e8364021779c2808e4ef1f227d
2021-03-05 05:20:50 +00:00
Janis Danisevskis
421c5739ea Merge "Keystore 2.0: Make VPN Keystore 2.0 ready." 2021-03-05 02:57:34 +00:00
Janis Danisevskis
051d7668f7 Keystore 2.0: Silence common error on operation abort.
Test: N/A
Change-Id: I7c85ae881165bc77d836624bfe20251b971d4479
2021-03-04 15:48:12 -08:00
Shawn Willden
c7de4a237a Fix subject in self-signed certificates.
Bug: 180620122
Test: atest -c CtsKeystoreTestCases:android.keystore.cts.KeyPairGeneratorTest#testGenerate_EC_ModernSpec_Defaults
Change-Id: Ib74a3f0cea81faf741d49d868739cbedda77e8df
2021-03-04 12:21:17 -07:00
Janis Danisevskis
8cd7953577 Keystore 2.0: Make VPN Keystore 2.0 ready.
* Use public stable API to load certificates from keystore.
* Also use grants to allow racoon to use keystore keys without
  special exceptions in keystore.
* Use LegacyProfileStore instead of Keystore for storing VPN profiles.

Bug: 175068876
Bug: 171305607
Test: atest android.net.cts.Ikev2VpnTest
      atest android.net.cts.IpSecManagerTest
      atest com.android.server.connectivity.VpnTest
      atest com.android.server.ConnectivityServiceTest
Merged-In: I27975113896ea137260a9f94a34fb1c3ca173fe3
Change-Id: I27975113896ea137260a9f94a34fb1c3ca173fe3
2021-03-03 22:14:41 -08:00
Alex Johnston
0c3f0c51bc AppUriAuthenticationPolicy and UrisToAliases equals and hashcode
Bug: 177979648
Test: atest android.devicepolicy.cts.CredentialManagementAppTest
      atest android.devicepolicy.cts.AppUriAuthenticationPolicyTest
      atest android.security.CredentialManagementAppTest
Change-Id: I66d715ba6b47749e2e89c037caecc29f02d3a017
2021-03-03 18:13:21 +00:00
Janis Danisevskis
4ba2f0c690 Keystore 2.0: Make VPN Keystore 2.0 ready.
* Use public stable API to load certificates from keystore.
* Also use grants to allow racoon to use keystore keys without
  special exceptions in keystore.
* Use LegacyProfileStore instead of Keystore for storing VPN profiles.

Bug: 175068876
Bug: 171305607
Test: atest android.net.cts.Ikev2VpnTest
      atest android.net.cts.IpSecManagerTest
      atest com.android.server.connectivity.VpnTest
      atest com.android.server.ConnectivityServiceTest
Change-Id: I27975113896ea137260a9f94a34fb1c3ca173fe3
2021-03-02 22:56:44 -08:00
Dmitry Dementyev
7d21d719a5 Merge "Migrate recoverablekeystore to KeyStore V2." am: dbf8a7c1bd am: 26085ee2ff am: 25de7c49b8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1603470

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I4c23d408e34d6305784e54b7ef00a258b4ea6fab
2021-03-01 08:07:59 +00:00
Janis Danisevskis
fdfc090a98 Merge "Keystore 2.0: Clear Uid/Namesapce" am: a51a74a8c5 am: 6413a11508 am: 36dfffbdbe
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1604089

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6556ce399ddf4444e7655f05d92861073580c2cf
2021-03-01 08:06:58 +00:00
Pavel Grafov
2199092f3f Merge "Keystore 2.0: Add keystore engine grant string convenience functions." am: 4da629d9be am: 7e74123b72 am: 6776c214d2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1569501

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7f2ba849f84956b95caa9d7b32e3967bafb99c18
2021-02-26 17:27:08 +00:00
Dmitry Dementyev
dbf8a7c1bd Merge "Migrate recoverablekeystore to KeyStore V2." 2021-02-26 06:13:35 +00:00
Janis Danisevskis
a51a74a8c5 Merge "Keystore 2.0: Clear Uid/Namesapce" 2021-02-26 03:04:30 +00:00
Dmitry Dementyev
16491e1316 Migrate recoverablekeystore to KeyStore V2.
Test: manual
Bug: 171305545
Change-Id: Id415be48cab6852df155b5b2dbaf941ef54cd5a4
2021-02-25 16:42:15 -08:00
Janis Danisevskis
d5dd5ebaed Keystore 2.0: Clear Uid/Namesapce
Implement uid/namespace clearing for Keystore 2.0.

Test: Verified that keys get deleted when an app gets uninstalled.
Change-Id: I1b0b65e977177a6e34c500b00b5070ec18be2671
2021-02-25 09:30:44 -08:00
Alex Johnston
0f6d014813 Merge "Credential management app follow ups" into sc-dev 2021-02-25 09:56:00 +00:00
Janis Danisevskis
7e06904734 Keystore 2.0: Add keystore engine grant string convenience functions.
This patch adds function for and end decoding grant identfiers as
understood by the keystore boringssl engine.

Test: N/A
Change-Id: I619d8f460163e6270e41da81ca549efb71138113
2021-02-23 14:42:13 -08:00
Janis Danisevskis
0cdf262ee5 Keystore 2.0: Remove attestKey from KeyChain.
KeyChain supports device id attestation through KeyGenParameterSpec now.
No need to call attest key individually. Also calling attest key
individually is no longer supported by Keystore 2.0 and KeyMint.

Also isBoundKeyAlgorithm returns true.

Test: atest FrameworksServicesTests:DevicePolicyManagerTest
Bug: 171305387
Merged-In: I759fe245b48fe435153fded2c74c9ae99634c146
Change-Id: I759fe245b48fe435153fded2c74c9ae99634c146
2021-02-23 14:41:49 -08:00
Janis Danisevskis
0f138dc0cc Keystore 2.0: Remove attestKey from KeyChain.
KeyChain supports device id attestation through KeyGenParameterSpec now.
No need to call attest key individually. Also calling attest key
individually is no longer supported by Keystore 2.0 and KeyMint.

Also isBoundKeyAlgorithm returns true.

Test: atest FrameworksServicesTests:DevicePolicyManagerTest
Bug: 171305387
Change-Id: I759fe245b48fe435153fded2c74c9ae99634c146
2021-02-23 12:19:47 -08:00
Janis Danisevskis
6d23bc6d7e Keystore 2.0: Fix correct handling of Uid/Namespace
AndroidKeyStoreKeyPairGeneratorSpi used the Uid as namespace which is
wrong, and ParcelableKeyGenParameterSpec inadvertently used the Uid as
namespace specifier during conversion.

Bug: 160623310
Test: com.android.keychain.tests.BasicKeyChainServiceTest#testGenerateKeyPairErrorsOnBadUid
Change-Id: I84b4c69c639e42922449e00a3708cef89b82f63e
2021-02-23 09:06:34 -08:00
Alex Johnston
42112e1e75 Credential management app follow ups
* KeyChain API to check if the caller is the
  credential management app.
* KeyChain API to get the authentication policy
  if the caller is the credential management app.
* KeyChain createManageCredentialsIntent docs
  mention startActivityForResult should be used

Bug: 177979648
Test: atest android.devicepolicy.cts.CredentialManagementAppTest
Change-Id: Ia5125adb677ec103a9d5a5318edf95050e74916e
2021-02-23 09:32:47 +00:00
Treehugger Robot
75025c5b62 Merge "Keystore 2.0: Fix correct handling of Uid/Namespace" 2021-02-22 23:35:21 +00:00
Janis Danisevskis
fa1a21957c Keystore 2.0: Fix correct handling of Uid/Namespace
AndroidKeyStoreKeyPairGeneratorSpi used the Uid as namespace which is
wrong, and ParcelableKeyGenParameterSpec inadvertently used the Uid as
namespace specifier during conversion.

Bug: 160623310
Test: com.android.keychain.tests.BasicKeyChainServiceTest#testGenerateKeyPairErrorsOnBadUid
Change-Id: I84b4c69c639e42922449e00a3708cef89b82f63e
2021-02-22 12:55:35 -08:00
Treehugger Robot
824e654d27 Merge "Keystore 2.0: Revisite Authorization.java" am: 08bf2e8f49 am: fe60537082 am: 20d7e967d2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1587591

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iad78430492ee0838456796df741aa2ac81e12692
2021-02-20 23:14:25 +00:00
Treehugger Robot
08bf2e8f49 Merge "Keystore 2.0: Revisite Authorization.java" 2021-02-20 19:26:58 +00:00