public static final class KeyPairGeneratorSpec.Builder
extends Object
java.lang.Object | |
↳ | android.security.KeyPairGeneratorSpec.Builder |
此类在API级别23中已被弃用。
改为使用KeyGenParameterSpec.Builder
。
KeyPairGeneratorSpec
对象的生成器类。
这将构建与 Android KeyStore facility一起使用的参数规范。
必填字段必须填写与建设者。
例:
Calendar start = new Calendar(); Calendar end = new Calendar(); end.add(1, Calendar.YEAR); KeyPairGeneratorSpec spec = new KeyPairGeneratorSpec.Builder(mContext).setAlias("myKey") .setSubject(new X500Principal("CN=myKey")).setSerial(BigInteger.valueOf(1337)) .setStartDate(start.getTime()).setEndDate(end.getTime()).build();
Public constructors |
|
---|---|
KeyPairGeneratorSpec.Builder(Context context) 用给定的 |
Public methods |
|
---|---|
KeyPairGeneratorSpec |
build() 构建 |
KeyPairGeneratorSpec.Builder |
setAlgorithmParameterSpec(AlgorithmParameterSpec spec) 设置算法特定的密钥生成参数。 |
KeyPairGeneratorSpec.Builder |
setAlias(String alias) 使用 |
KeyPairGeneratorSpec.Builder |
setEncryptionRequired() 表示此密钥对必须在休息时加密。 |
KeyPairGeneratorSpec.Builder |
setEndDate(Date endDate) 设置生成的密钥对的自签名证书的有效期结束。 |
KeyPairGeneratorSpec.Builder |
setKeySize(int keySize) 设置要创建的密钥对的密钥大小。 |
KeyPairGeneratorSpec.Builder |
setKeyType(String keyType) 设置密钥对(例如,类型 |
KeyPairGeneratorSpec.Builder |
setSerialNumber(BigInteger serialNumber) 设置用于生成密钥对的自签名证书的序列号。 |
KeyPairGeneratorSpec.Builder |
setStartDate(Date startDate) 设置生成的密钥对的自签名证书的有效期开始。 |
KeyPairGeneratorSpec.Builder |
setSubject(X500Principal subject) 设置用于生成的密钥对的自签名证书的主题。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
KeyPairGeneratorSpec.Builder (Context context)
用给定的context
创建Builder
的新实例。 传入的context
可能会用于弹出一些UI,要求用户解锁或初始化Android KeyStore工具。
Parameters | |
---|---|
context |
Context
|
KeyPairGeneratorSpec build ()
构建 KeyPairGeneratorSpec
的实例。
Returns | |
---|---|
KeyPairGeneratorSpec |
built instance of KeyPairGeneratorSpec |
Throws | |
---|---|
IllegalArgumentException |
if a required field is missing |
KeyPairGeneratorSpec.Builder setAlgorithmParameterSpec (AlgorithmParameterSpec spec)
设置算法特定的密钥生成参数。 例如,对于RSA密钥,这可能是RSAKeyGenParameterSpec
一个实例。
Parameters | |
---|---|
spec |
AlgorithmParameterSpec
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setAlias (String alias)
使用 AndroidKeyStore
提供程序设置以后用于从 KeyStore
实例中检索密钥的别名。
Parameters | |
---|---|
alias |
String
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setEncryptionRequired ()
表示此密钥对必须在休息时加密。 这将使用安全锁定屏幕凭证(例如,密码,PIN或模式)来保护密钥对。
请注意,此功能要求设置安全锁定屏幕(例如,密码,PIN,图案),否则密钥对生成将失败。 此外,当安全锁定屏幕被禁用或重置(例如,由用户或设备管理员)时,该密钥对将被删除。 最后,只有在用户启动后解锁安全锁屏后,才能使用该密钥对。
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
也可以看看:
KeyPairGeneratorSpec.Builder setEndDate (Date endDate)
设置生成的密钥对的自签名证书的有效期结束。
Parameters | |
---|---|
endDate |
Date
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setKeySize (int keySize)
设置要创建的密钥对的密钥大小。 例如,对于RSA的关键类型,这将设置模数大小,对于EC的关键类型,它将选择具有匹配字段大小的曲线。
Parameters | |
---|---|
keySize |
int
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setKeyType (String keyType)
设置密钥对(例如,类型EC
, RSA
要生成的密钥对)。 见KeyProperties
。 KEY_ALGORITHM
常数。
Parameters | |
---|---|
keyType |
String
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
Throws | |
---|---|
NoSuchAlgorithmException |
KeyPairGeneratorSpec.Builder setSerialNumber (BigInteger serialNumber)
设置用于生成密钥对的自签名证书的序列号。
Parameters | |
---|---|
serialNumber |
BigInteger
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setStartDate (Date startDate)
设置生成的密钥对的自签名证书的有效期开始。
Parameters | |
---|---|
startDate |
Date
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |
KeyPairGeneratorSpec.Builder setSubject (X500Principal subject)
设置用于生成的密钥对的自签名证书的主题。
Parameters | |
---|---|
subject |
X500Principal
|
Returns | |
---|---|
KeyPairGeneratorSpec.Builder |