IOS APNs p12认证文件不适用于Java
我正在尝试使用APNs推送库从服务器推送通知 客户提供了一个APNs p12文件,该文件不适用于此库和其他一些JAVA工具 为了调查它,我尝试使用 它尝试对BKS、JKS、UBER等使用多种组合,并给出如下错误IOS APNs p12认证文件不适用于Java,java,apple-push-notifications,ssl-certificate,bouncycastle,jks,Java,Apple Push Notifications,Ssl Certificate,Bouncycastle,Jks,我正在尝试使用APNs推送库从服务器推送通知 客户提供了一个APNs p12文件,该文件不适用于此库和其他一些JAVA工具 为了调查它,我尝试使用 它尝试对BKS、JKS、UBER等使用多种组合,并给出如下错误 java.io.IOException: exception decrypting data - java.security.InvalidKeyException: Illegal key size org.bouncycastle.jce.provider.JDKPKCS12
java.io.IOException: exception decrypting data - java.security.InvalidKeyException: Illegal key size
org.bouncycastle.jce.provider.JDKPKCS12KeyStore.cryptData(Unknown Source)
java.io.IOException: Wrong version of key store.
org.bouncycastle.jce.provider.JDKKeyStore.engineLoad(Unknown Source)
java.security.KeyStore.load(Unknown Source)
java.io.IOException: Wrong version of key store.
org.bouncycastle.jce.provider.JDKKeyStore$BouncyCastleStore.engineLoad(Unknown Source)
java.security.KeyStore.load(Unknown Source)
我尝试将客户提供的p12导入我的Mac笔记本电脑钥匙链,然后我再次导出为新的p12文件,然后工作正常
但是客户应该使用一些API来配置从他那边上传的证书,我们不能每次都手动完成
我们如何解决这个问题?您必须安装Java加密扩展(JCE)。内置安全提供程序(/lib/bin/security)不允许使用更高安全性的密码 Java 6: Java 7: Java 8:
不应该影响bouncycastle,是吗?bouncycastle也依赖于这些设置。你可以在这方面做一些粗俗的事情。但最简单的方法是用JCE中的文件替换两个标准jar文件。