作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从 iOS 应用程序与 Java 后端进行通信。使用 .rsaEncryptionOAEPSHA256
时SecKeyCreateEncryptedData
中的算法对于encryption ,后端显示以下堆栈跟踪:
Caused by: java.lang.SecurityException: Exception thrown while invoking doFinal(byte[]).
at ... 101 common frames omitted
Caused by: javax.crypto.BadPaddingException: Decryption error
at java.base/sun.security.rsa.RSAPadding.unpadOAEP(RSAPadding.java:497)
at java.base/sun.security.rsa.RSAPadding.unpad(RSAPadding.java:292)
at java.base/com.sun.crypto.provider.RSACipher.doFinal(RSACipher.java:366)
at java.base/com.sun.crypto.provider.RSACipher.engineDoFinal(RSACipher.java:392)
at java.base/javax.crypto.Cipher.doFinal(Cipher.java:2207)
... 103 common frames omitted
Java 后端正在使用 RSA/ECB/OAEPWithSHA-256AndMGF1Padding
算法来自 SunJCE
提供商。此提供商使用 SHA-1
对于MGF1 摘要。但是 iOS 的默认设置是使用 SHA-256
.
注意:需要说明的是,完全相同的交互目前在 .rsaEncryptionPKCS1
上运行良好在后端使用 RSA/ECB/PKCS1Padding
的 iOS 上在 Java 中。
最佳答案
面对同样的问题,根据我的研究和实验,在 iOS 上支持 RSA/ECB/OAEPWithSHA-256AndMGF1Padding 几乎是不可能的。
类似问题:Encrypt RSA/ECB/OAEPWithSHA-256AndMGF1Padding Swift
但这只解决了算法问题,没有解决填充问题。
关于java - .rsaEncryptionOAEPSHA256算法在iOS上与Java的兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63727889/
我是一名优秀的程序员,十分优秀!