开发者社区> 问答> 正文

java RSA 加密解密,汉字乱码怎么办

java RSA 加密解密,汉字乱码怎么办

展开
收起
知与谁同 2018-07-20 10:52:09 3510 0
1 条回答
写回答
取消 提交回答
  • 静静的看着你们
    这个问题不是加密和解密的事件,而是没能正确地使用相同的字符集编码。

    加密之前就应该约定双方使用同一个字符集编码来做编解码,比如用 UTF8,我们在用一个 byte[] 创建一个 String 时应该明确地指定字符集编码而不能使用默认值,因此默认值是跟操作系统或程序启动时的命令行有依赖关系的,这很难预料谁会使用你的程序,又会如何使用你的程序,我们明确地指定字符集就不会受此影响。

    String a = "汉字“

    byte[] bytes = a.getBytes("UTF8");

    byte[] encoded = encode(bytes);

    byte[] decoded = decode(encoded);

    String received = new String(decoded, "UTF8");
    2019-07-17 22:56:19
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
\"视频服务特色解决方案——直播连麦与点播加密 \" 立即下载
从《阿里巴巴Java开发手册》编写推广谈技术成长 立即下载
量子加密通信技术 立即下载