Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
- fun generateAsymmetricKey(keyAlias: String, context: Context): KeyStore.Entry {
- val keyStore = KeyStore.getInstance("AndroidKeyStore")
- keyStore.load(null)
- if (!keyStore.containsAlias(keyAlias)) {
- val startDate = Calendar.getInstance()
- val endDate = Calendar.getInstance()
- endDate.add(Calendar.YEAR, 25)
- val keyPairGeneratorSpec = KeyPairGeneratorSpec.Builder(context.applicationContext)
- .setAlias(keyAlias)
- .setSubject(X500Principal("CN=$keyAlias"))
- .setSerialNumber(BigInteger.valueOf(123456))
- .setStartDate(startDate.time)
- .setEndDate(endDate.time)
- .build()
- val keyPairGenerator = KeyPairGenerator.getInstance(
- "RSA",
- "AndroidKeyStore"
- )
- keyPairGenerator.initialize(keyPairGeneratorSpec)
- keyPairGenerator.generateKeyPair()
- }
- return keyStore.getEntry(keyAlias, null)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement