ID attestation: Pass second IMEIs to Keystore
To support attestation of a second IMEI, when ID attestation (with IMEI) is requested, pass in the 2nd IMEI as a SECOND_IMEI KeyMint tag. Bug: 244732345 Test: atest android.keystore.cts.DeviceOwnerKeyManagementTest Change-Id: I19a3733746fa6a35c6225f0c60fd9f4b51a62ab1
This commit is contained in:
@@ -126,6 +126,8 @@ public final class KeymasterDefs {
|
||||
Tag.BOOT_PATCHLEVEL; // KM_UINT | 719;
|
||||
public static final int KM_TAG_DEVICE_UNIQUE_ATTESTATION =
|
||||
Tag.DEVICE_UNIQUE_ATTESTATION; // KM_BOOL | 720;
|
||||
public static final int KM_TAG_ATTESTATION_ID_SECOND_IMEI =
|
||||
Tag.ATTESTATION_ID_SECOND_IMEI; // KM_BYTES | 723;
|
||||
|
||||
public static final int KM_TAG_NONCE = Tag.NONCE; // KM_BYTES | 1001;
|
||||
public static final int KM_TAG_MAC_LENGTH = Tag.MAC_LENGTH; // KM_UINT | 1003;
|
||||
|
||||
@@ -52,6 +52,7 @@ import android.system.keystore2.KeyEntryResponse;
|
||||
import android.system.keystore2.KeyMetadata;
|
||||
import android.system.keystore2.ResponseCode;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArraySet;
|
||||
import android.util.Log;
|
||||
|
||||
@@ -856,6 +857,13 @@ public abstract class AndroidKeyStoreKeyPairGeneratorSpi extends KeyPairGenerato
|
||||
KeymasterDefs.KM_TAG_ATTESTATION_ID_IMEI,
|
||||
imei.getBytes(StandardCharsets.UTF_8)
|
||||
));
|
||||
final String secondImei = telephonyService.getImei(1);
|
||||
if (!TextUtils.isEmpty(secondImei)) {
|
||||
params.add(KeyStore2ParameterUtils.makeBytes(
|
||||
KeymasterDefs.KM_TAG_ATTESTATION_ID_SECOND_IMEI,
|
||||
secondImei.getBytes(StandardCharsets.UTF_8)
|
||||
));
|
||||
}
|
||||
break;
|
||||
}
|
||||
case AttestationUtils.ID_TYPE_MEID: {
|
||||
|
||||
Reference in New Issue
Block a user