## 关于RSA解密失败记录 ##

来源:互联网 发布:淘宝助理5.5版本下载 编辑:程序博客网 时间:2024/05/22 03:26

关于RSA解密失败记录

在做公司项目时候,同事使用java加密一段数据,让我进行一下测试,是否能解密成功,但是研究一上午发无果,最后老大指出java默认解密和Android默认解密的Padding不同,特此记录,以免后续再犯!
Android 默认是 :RSA/None/Nopadding
Java 默认是:RSA/None/PKCS1Padding

padding不同,Android端设置padding即可 贴出代码

        // prikey是密钥的byte[]        PKCS8EncodedKeySpec priPKCS8 = new PKCS8EncodedKeySpec(                prikey1                );        try {             KeyFactory keyf = KeyFactory.getInstance("RSA");             RSAPrivateKey privkey= (RSAPrivateKey) keyf.generatePrivate(priPKCS8);              // here padding             Cipher cipher=Cipher.getInstance("RSA/None/PKCS1Padding");             cipher.init(Cipher.DECRYPT_MODE, privkey);             byte[] decData=cipher.doFinal(data);             Log.i("javaTest", "--"+new String(decData));        } catch (Exception e) {            // TODO Auto-generated catch block            e.printStackTrace();        }  
0 0
原创粉丝点击