您的位置:首页 > 编程语言 > Java开发

RSA javax.crypto.BadPaddingException: Blocktype mismatch: 0 错误

2017-03-25 23:32 656 查看
最近做项目的时候用RSA进行数据加密,解密的时候发现会 报javax.crypto.BadPaddingException: Blocktype mismatch,检查确定密钥是没有问题的,查找资料后发现是在获取cipher的参数导致的,将

cipher = Cipher.getInstance("RSA");

改成
Cipher cipher = Cipher.getInstance("RSA/ECB/NoPadding"); 就可以正常解密,但用这种方式解密后明文前面会有很多不明字符,最后确定该字符是char(0),所以在获取明文后对其进行处理,将全部char(0)过滤掉后就是正确的明文信息了。

参考网址:
http://www.educity.cn/wenda/152511.html http://blog.csdn.net/zhubo0228/article/details/8899473 http://blog.csdn.net/u012571415/article/details/49892227 http://blog.csdn.net/rj_jqd/article/details/8181982 http://bbs.csdn.net/topics/250024841 http://blog.csdn.net/centralperk/article/details/8558678
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java rsa
相关文章推荐