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

来源:互联网 发布:无法进入linux系统 编辑:程序博客网 时间:2024/06/05 18:08

最近做项目的时候用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

0 0
原创粉丝点击