在Android上生成并导出RSA密钥对

时间:2018-06-11 10:32:44

标签: android kotlin rsa

我尝试在Android上生成KeyPair并将公钥作为字符串导出,因此它的格式为 -

-----BEGIN RSA PUBLIC KEY-----MIIB...

我已使用以下方法成功生成KeyPair -

fun generateKeyPair(): KeyPair {
    val generator = KeyPairGenerator.getInstance(KeyProperties.KEY_ALGORITHM_RSA)

    generator.initialize(2048, SecureRandom())
    val keypair = generator.genKeyPair()
    return keypair
}

val keypair = generateKeyPair()

Log.d("Keypair", keypair.public.toString())

但是这给了我 -

OpenSSLRSAPublicKey{modulus=e0a6a5a...

有谁知道如何以上述格式导出密钥?

1 个答案:

答案 0 :(得分:1)

对于其他遇到此问题的人来说,答案是 -

val keyText = Base64.encodeToString(keypair.public.encoded, Base64.DEFAULT)