- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个错误是什么意思:
java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0c0000b9:ASN.1 encoding routines:OPENSSL_internal:WRONG_TAG
我的代码是:
public static byte[] encryptByPublicKey(byte[] data, String key)
throws Exception {
key = key.replace("-----BEGIN RSA PUBLIC KEY-----\r\n", "").replace("-----END RSA PUBLIC KEY-----", "");
byte[] bytes = decryptBASE64(key);
X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(bytes);
KeyFactory keyFactory = KeyFactory.getInstance(KEY_ALGORITHM);
PublicKey pkPublic = keyFactory.generatePublic(x509KeySpec);
Cipher pkCipher = Cipher.getInstance("RSA");
pkCipher.init(Cipher.ENCRYPT_MODE, pkPublic);
return pkCipher.doFinal(data);
}
我确定,我有正确的数据和 key (在 php 中创建的),但我得到了这个错误:
PublicKey pkPublic = keyFactory.generatePublic(x509KeySpec);
我在我的其他 android(没有 php 服务器)应用程序中使用此代码没有任何问题,并且我通过相同的加密/解密代码得到了正确的答案。
是否有可能在两个项目中使用一个功能,在同一个软件中,具有相同的输入和输出值,具有不同的操作?是的!有可能,但是 Android Studio 和 Phpstorm 怎么样?是关于 Openssl cer.?或其他图书馆?还是其他一些原因?我怎样才能克服这个错误?
如果你能帮助我,我将不胜感激。预先感谢您的回答。
最佳答案
请检查 key 字符串,可能包含非法的Base64字符:“\n”、“\t”或\s等,删除它们并重试!
关于php - ASN.1 编码例程 :OPENSSL_internal:WRONG_TAG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44616565/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!