【发布时间】:2012-06-29 12:27:14
【问题描述】:
我使用的是 Android 4.1 钥匙串,以下代码在 4.0 下运行良好,但现在给了我一个 Nullpointer 异常(密码无法读取某些内部属性)
privateKey = KeyChain.getPrivateKey(context,mAlias);
byte[] data = // some biary data
Cipher rsasinger = javax.crypto.Cipher.getInstance("RSA/ECB/PKCS1PADDING");
rsasinger.init(Cipher.ENCRYPT_MODE, privkey);
byte[] signed_bytes = rsasinger.doFinal(data);
我将 KeyChain 中的私钥处理为不透明的,只需将其与 java 安全 Api 一起使用。我需要以其他方式使用 KeyChain API 吗?
【问题讨论】:
-
NullpointerException 发生在哪里(源代码行)?顺便说一句:您为什么使用密码进行签名?在 RSA 中,如果您加密数据块的消息摘要,这是可能的,但我会使用签名来代替。
标签: android security android-4.2-jelly-bean