当我在 API 24 中使用这个 KeyPairGeneratorSpec 对象时,我的类可以工作。
KeyPairGeneratorSpec spec = new KeyPairGeneratorSpec.Builder(this)
.setAlias(KEY_ALIAS)
.setSubject(new X500Principal("CN=" + KEY_ALIAS))
.setSerialNumber(BigInteger.TEN)
.setStartDate(start.getTime())
.setEndDate(end.getTime())
.build();
KeyPairGenerator kpg = KeyPairGenerator.getInstance(RSA);
kpg.initialize(spec);
keyPair = kpg.generateKeyPair();
在低于 24 的情况下编译时,出现此错误:
java.security.InvalidAlgorithmParameterException: Only RSAKeyGenParameterSpec supported
我不明白,因为 KeyPairGeneratorSpec 应该可以从 api 18 获得?