2011-08-31 69 views
3

我使用SpongyCastle(全面实施BouncyCastle的对Android的加密功能),我有一个包含大小384.我想用方法来提取密钥的密钥的BKS KeyStore.getKey (别名,密码),就像密钥库中的任何密钥一样。但我碰到的是错误无限强度JCE和Android

java.security.UnrecoverableKeyException: no match

做的一点点研究表明,这可能是因为密钥尺寸太大的Android来处理这有意义的,因为我的程序变得尺寸128和256没有问题的其他键。通常在Java中,这可以通过将“Unlimited Strength”JCE导入Java安全文件夹来解决,但android呢?我可以将无限强度的JCE导入到android中(我的直觉是否定的)如果没有,是否有关于如何提取密钥的建议? SpongyCastle解决了很多其他问题,我希望这里也有SpongyCastle解决方案。

谢谢!

+0

它是什么样的关键? RSA,AES,还有其他的东西? –

+0

SHA384WITHECDSA – Otra

回答

8

所以经过多次摔角后,我发现了这个问题。

我没有指定提供程序,所以我的程序默认为默认的Android BouncyCastle。那一刻我没有

KeyStore ks = new KeyStore("BKS","SC"); 

,而不是

KeyStore ks = new KeyStore("BKS"); 

它工作得很好,没有抱怨。