Java将公钥和私钥转换为字符串,然后再转换回字符串

Java将公钥和私钥转换为字符串,然后再转换回字符串,java,sqlite,rsa,Java,Sqlite,Rsa,我有一个私有和一个公共RSA 2048bit密钥,我需要将它们转换为字符串以保存在SQLite DB中,但我还需要一种方法,当我在DB中读取数据时,将它们转换回私有/公钥,我如何在Java中做到这一点 对不起,我的英语不好。你可以使用和 当您需要将二进制数据序列化为字符串时,Base64编码/解码非常有用,因为它生成一个好的字符串,它只是ascii码,或多或少没有特殊字符 // You can turn your bytes into a string using encoder.

我有一个私有和一个公共RSA 2048bit密钥,我需要将它们转换为字符串以保存在SQLite DB中,但我还需要一种方法,当我在DB中读取数据时,将它们转换回私有/公钥,我如何在Java中做到这一点

对不起,我的英语不好。

你可以使用和

当您需要将二进制数据序列化为字符串时,Base64编码/解码非常有用,因为它生成一个好的字符串,它只是ascii码,或多或少没有特殊字符

    // You can turn your bytes into a string using encoder.
    String keyAsString = Base64.getEncoder().encodeToString(key);
    // ....
    ///

    // When you need your bytes back you call the decoder on the string.
    byte[] keyBytes = Base64.getDecoder().decode(keyAsString);

在低于1.8的java版本上,您可以使用

欢迎使用堆栈溢出!我们是一个问答网站,而不是一个编码出租服务。请将您的问题缩小到一个特定的编码问题,这将是本网站的主题。请参阅:并使用base64编码和解码。当时我提前复制了,我的帖子是在评论前2分钟写的。即使如此,这仍然是一个几乎只有链接的答案。如果你改进它,我肯定会推翻我的投票。@GhostCat我讨厌人们是对的,而你是对的。我会服从的,但我不知道这里缺少什么。我回答这个问题的原因是我不知道Java SE中是否存在标准的Base64编码/解码方法。我寻找它,发现Java1.8拥有它。我总是用公地。所以我决定和大家分享。我想这应该可以。