支付宝(Android4.1版本)以上无法启动支付宝的有关问题"java.security.spec.InvalidKeySpecException
支付宝(Android4.1版本)以上无法启动支付宝的问题"java.security.spec.InvalidKeySpecException
大家看这个帖子
http://blog.****.net/nono_love_lilith/article/details/8833960/
说是是jelly Bean也就是Android4.1版本的问题。
后来我看了下,确实以前我们做适配的机子基本都是4.0以下的。
然后这个Note2刚好是4.1.1的
然后根据
下面的一个Answer
“
PKCS8EncodedKeySpec privSpec = new PKCS8EncodedKeySpec(s_privateKeyIn1t);
KeyFactory keyFactory = KeyFactory.getInstance("RSA", "BC");
PrivateKey privateKey = keyFactory.generatePrivate(privSpec);
我使用了之后sign确实获取到了。。。。但是。。。返回的状态是 获取失败。。返回what-90....
------解决思路----------------------
你看的那个帖子已经有人回答了“其实这个问题是你们的私钥没有转成PKCS8格式引起的。”就是这个原因,也不用改其他代码
------解决思路----------------------
这个问题是你在支付宝获取的公钥不对,请申请的私钥按照openssl加密获取的,是你用的公钥不对
不信你用支付宝自带的测试保证不会错
大家看这个帖子
http://blog.****.net/nono_love_lilith/article/details/8833960/
说是是jelly Bean也就是Android4.1版本的问题。
后来我看了下,确实以前我们做适配的机子基本都是4.0以下的。
然后这个Note2刚好是4.1.1的
然后根据
下面的一个Answer
“
PKCS8EncodedKeySpec privSpec = new PKCS8EncodedKeySpec(s_privateKeyIn1t);
KeyFactory keyFactory = KeyFactory.getInstance("RSA", "BC");
PrivateKey privateKey = keyFactory.generatePrivate(privSpec);
我使用了之后sign确实获取到了。。。。但是。。。返回的状态是 获取失败。。返回what-90....
------解决思路----------------------
你看的那个帖子已经有人回答了“其实这个问题是你们的私钥没有转成PKCS8格式引起的。”就是这个原因,也不用改其他代码
------解决思路----------------------
这个问题是你在支付宝获取的公钥不对,请申请的私钥按照openssl加密获取的,是你用的公钥不对
不信你用支付宝自带的测试保证不会错