【发布时间】:2018-04-26 16:11:19
【问题描述】:
我对 Android 编程很感兴趣。我正在使用对称和非对称加密,我想用公钥包装来自 Android Key Store 的密钥,但我失败了。我可以从 Key Store 获取密钥,但我无法打包它。
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.WRAP_MODE, publicKey);
SecretKey secret = (SecretKey) keyStore.getKey("key",null);
byte[] encrypted = cipher.wrap(secret);
错误:
InvalidKeyException:无法包装密钥,空编码
我尝试在上面的代码中使用这个密钥对和密钥 - 我通过对称和非对称加密成功地加密和解密了一些字符串。
有什么有趣的?我尝试通过 KeyGenerator 生成新的密钥并且包装成功。我有点困惑。我不能用从 KeyStore 加载的密钥来包装它。
你能帮帮我吗?
【问题讨论】:
-
“我无法包装它”的描述性不够。你有错误吗?
-
是的,InvalidKeyException:Cannot wrap key,null encoding
标签: java android encryption