簡體   English   中英

SpringBoot 中的 BouncyCastle

[英]BouncyCastle in SpringBoot

當我將 Springboot 應用程序作為 jar 文件運行時,它給了我以下錯誤。 當我使用 IDE 運行我的項目時,問題不會發生。 你能幫我解決一下嗎? 謝謝你..

2022-01-14 23:34:58.885  INFO 4247 --- [nio-8080-exec-2] c.o.b.h.s.internal.BouncyCastleHelper    : Instantiated provider: org.bouncycastle.jce.provider.BouncyCastleProvider
com.oracle.bmc.http.signing.internal.PEMFileRSAPrivateKeySupplier$PEMFileRSAPrivateKeySupplierException: org.bouncycastle.openssl.PEMException: exception processing key pair: JCE cannot authenticate the provider BC
    at com.oracle.bmc.http.signing.internal.PEMFileRSAPrivateKeySupplier.<init>(PEMFileRSAPrivateKeySupplier.java:118)
    at com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory.createKeySupplier(DefaultRequestSignerFactory.java:111)
    at com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory.createRequestSigner(DefaultRequestSignerFactory.java:54)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:284)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:218)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:181)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:146)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:118)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:93)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:70)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:56)
    at com.oracle.bmc.objectstorage.ObjectStorageClient.<init>(ObjectStorageClient.java:45)

......


Caused by: org.bouncycastle.openssl.PEMException: exception processing key pair: JCE cannot authenticate the provider BC
    at org.bouncycastle.openssl.PEMEncryptedKeyPair.decryptKeyPair(Unknown Source)
    at com.oracle.bmc.http.signing.internal.PEMFileRSAPrivateKeySupplier.<init>(PEMFileRSAPrivateKeySupplier.java:94)
    ... 112 more
Caused by: java.lang.SecurityException: JCE cannot authenticate the provider BC
    at java.base/javax.crypto.JceSecurity.getInstance(JceSecurity.java:143)
    at java.base/javax.crypto.SecretKeyFactory.getInstance(SecretKeyFactory.java:248)
    at org.bouncycastle.jcajce.util.ProviderJcaJceHelper.createSecretKeyFactory(Unknown Source)
    at org.bouncycastle.openssl.jcajce.PEMUtilities.getKey(Unknown Source)
    at org.bouncycastle.openssl.jcajce.PEMUtilities.getKey(Unknown Source)
    at org.bouncycastle.openssl.jcajce.PEMUtilities.crypt(Unknown Source)
    at org.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1.decrypt(Unknown Source)
    ... 114 more
Caused by: java.lang.IllegalStateException: zip file closed
    at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:829)
    at java.base/java.util.zip.ZipFile.getManifestName(ZipFile.java:1055)
    at java.base/java.util.zip.ZipFile$1.getManifestName(ZipFile.java:1098)
    at java.base/javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:460)
    at java.base/javax.crypto.JarVerifier.verifyJars(JarVerifier.java:316)
    at java.base/javax.crypto.JarVerifier.verify(JarVerifier.java:259)
    at java.base/javax.crypto.ProviderVerifier.verify(ProviderVerifier.java:129)
    at java.base/javax.crypto.JceSecurity.verifyProvider(JceSecurity.java:189)
    at java.base/javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:217)
    at java.base/javax.crypto.JceSecurity.getInstance(JceSecurity.java:139)
    ... 120 more

這是由於在此問題中跟蹤的 Spring 引導中的錯誤: https://github.com/spring-projects/spring-boot/issues/28837

該問題特定於 Oracle 的 JDK 17。如果可以選擇切換 JDK,您可以降級到 Oracle JDK 11。或者,任何版本的 OpenJDK(均支持 8、11 和 17)也應該避免該問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM