From 7e6517b2cdafb884e159fe9203a2871577b05088 Mon Sep 17 00:00:00 2001 From: Roberto Tyley Date: Sat, 7 Dec 2013 23:39:03 +0000 Subject: [PATCH] Fix some "no such provider" initialisation errors in tests Caused by: java.security.NoSuchProviderException: no such provider: BC at sun.security.jca.GetInstance.getService(GetInstance.java:83) at sun.security.jca.GetInstance.getInstance(GetInstance.java:206) at java.security.Signature.getInstance(Signature.java:355) at org.bouncycastle.jcajce.NamedJcaJceHelper.createSignature(NamedJcaJceHelper.java:95) Fix org.bouncycastle.tsp.test.NewTSPTest: org.bouncycastle.tsp.test.NewTSPTest > testGeneral FAILED java.lang.ExceptionInInitializerError at org.bouncycastle.tsp.test.NewTSPTest.testGeneral(NewTSPTest.java:64) Caused by: java.lang.RuntimeException: java.security.NoSuchProviderException: no such provider: BC at org.bouncycastle.tsp.test.TSPTestUtil.(TSPTestUtil.java:86) ... 1 more java.security.NoSuchAlgorithmException: MD5WithRSAEncryption Signature not available at java.security.Signature.getInstance(Signature.java:224) at org.bouncycastle.x509.X509Util.getSignatureInstance(X509Util.java:190) at org.bouncycastle.x509.X509Util.calculateSignature(X509Util.java:223) at org.bouncycastle.x509.X509V3CertificateGenerator.generate(X509V3CertificateGenerator.java:434) at org.bouncycastle.x509.X509V3CertificateGenerator.generate(X509V3CertificateGenerator.java:412) at org.bouncycastle.tsp.test.TSPTestUtil.makeCertificate(TSPTestUtil.java:196) at org.bouncycastle.tsp.test.TSPTestUtil.makeCACertificate(TSPTestUtil.java:155) at org.bouncycastle.tsp.test.NewTSPTest.testGeneral(NewTSPTest.java:65) --- .../org/bouncycastle/cms/test/MiscDataStreamTest.java | 2 ++ .../cms/test/NewAuthenticatedDataStreamTest.java | 2 ++ .../cms/test/NewAuthenticatedDataTest.java | 2 ++ .../bouncycastle/cms/test/NewEnvelopedDataTest.java | 9 ++------- .../java/org/bouncycastle/pkcs/test/PfxPduTest.java | 11 ++++++----- .../java/org/bouncycastle/tsp/test/NewTSPTest.java | 6 ++++++ .../java/org/bouncycastle/tsp/test/ParseTest.java | 7 +++++++ 7 files changed, 27 insertions(+), 12 deletions(-) diff --git a/pkix/src/test/java/org/bouncycastle/cms/test/MiscDataStreamTest.java b/pkix/src/test/java/org/bouncycastle/cms/test/MiscDataStreamTest.java index 4a86cace04..bc633dd494 100644 --- a/pkix/src/test/java/org/bouncycastle/cms/test/MiscDataStreamTest.java +++ b/pkix/src/test/java/org/bouncycastle/cms/test/MiscDataStreamTest.java @@ -5,6 +5,7 @@ import java.io.OutputStream; import java.security.KeyPair; import java.security.MessageDigest; +import java.security.Security; import java.security.cert.X509CRL; import java.security.cert.X509Certificate; import java.util.ArrayList; @@ -106,6 +107,7 @@ private static void init() if (!_initialised) { _initialised = true; + Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); _signDN = "O=Bouncy Castle, C=AU"; _signKP = CMSTestUtil.makeKeyPair(); diff --git a/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataStreamTest.java b/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataStreamTest.java index c8135e84ac..b260bcbc09 100644 --- a/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataStreamTest.java +++ b/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataStreamTest.java @@ -3,6 +3,7 @@ import java.io.ByteArrayOutputStream; import java.io.OutputStream; import java.security.KeyPair; +import java.security.Security; import java.security.cert.X509Certificate; import java.util.Arrays; import java.util.Collection; @@ -60,6 +61,7 @@ private static void init() if (!_initialised) { _initialised = true; + Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); _signDN = "O=Bouncy Castle, C=AU"; _signKP = CMSTestUtil.makeKeyPair(); diff --git a/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataTest.java b/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataTest.java index 812d0e37c9..1c0a80cf59 100644 --- a/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataTest.java +++ b/pkix/src/test/java/org/bouncycastle/cms/test/NewAuthenticatedDataTest.java @@ -3,6 +3,7 @@ import java.security.KeyPair; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; +import java.security.Security; import java.security.cert.X509Certificate; import java.util.Arrays; import java.util.Collection; @@ -75,6 +76,7 @@ private static void init() if (!_initialised) { _initialised = true; + Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); _signDN = "O=Bouncy Castle, C=AU"; _signKP = CMSTestUtil.makeKeyPair(); diff --git a/pkix/src/test/java/org/bouncycastle/cms/test/NewEnvelopedDataTest.java b/pkix/src/test/java/org/bouncycastle/cms/test/NewEnvelopedDataTest.java index d95499d998..da3641cbbd 100644 --- a/pkix/src/test/java/org/bouncycastle/cms/test/NewEnvelopedDataTest.java +++ b/pkix/src/test/java/org/bouncycastle/cms/test/NewEnvelopedDataTest.java @@ -1,13 +1,7 @@ package org.bouncycastle.cms.test; import java.io.IOException; -import java.security.GeneralSecurityException; -import java.security.Key; -import java.security.KeyFactory; -import java.security.KeyPair; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; -import java.security.PrivateKey; +import java.security.*; import java.security.cert.CertificateEncodingException; import java.security.cert.X509Certificate; import java.security.spec.MGF1ParameterSpec; @@ -228,6 +222,7 @@ private static void init() if (!_initialised) { _initialised = true; + Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); _signDN = "O=Bouncy Castle, C=AU"; _signKP = CMSTestUtil.makeKeyPair(); diff --git a/pkix/src/test/java/org/bouncycastle/pkcs/test/PfxPduTest.java b/pkix/src/test/java/org/bouncycastle/pkcs/test/PfxPduTest.java index 2bbf9eaa53..931ed1281c 100644 --- a/pkix/src/test/java/org/bouncycastle/pkcs/test/PfxPduTest.java +++ b/pkix/src/test/java/org/bouncycastle/pkcs/test/PfxPduTest.java @@ -3,11 +3,7 @@ import java.io.ByteArrayInputStream; import java.io.IOException; import java.math.BigInteger; -import java.security.KeyFactory; -import java.security.KeyStore; -import java.security.NoSuchAlgorithmException; -import java.security.PrivateKey; -import java.security.PublicKey; +import java.security.*; import java.security.cert.Certificate; import java.security.cert.X509Certificate; import java.security.spec.RSAPrivateCrtKeySpec; @@ -679,6 +675,11 @@ public static X509Certificate createCert( return new JcaX509CertificateConverter().setProvider(BC).getCertificate(cert); } + public void setUp() + { + Security.addProvider(new BouncyCastleProvider()); + } + public void testPfxPdu() throws Exception { diff --git a/pkix/src/test/java/org/bouncycastle/tsp/test/NewTSPTest.java b/pkix/src/test/java/org/bouncycastle/tsp/test/NewTSPTest.java index 7bf19be594..3aa3e97e54 100644 --- a/pkix/src/test/java/org/bouncycastle/tsp/test/NewTSPTest.java +++ b/pkix/src/test/java/org/bouncycastle/tsp/test/NewTSPTest.java @@ -4,6 +4,7 @@ import java.math.BigInteger; import java.security.KeyPair; import java.security.PrivateKey; +import java.security.Security; import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.Collection; @@ -57,6 +58,11 @@ public class NewTSPTest { private static final String BC = BouncyCastleProvider.PROVIDER_NAME; + public void setUp() + { + Security.addProvider(new BouncyCastleProvider()); + } + public void testGeneral() throws Exception { diff --git a/pkix/src/test/java/org/bouncycastle/tsp/test/ParseTest.java b/pkix/src/test/java/org/bouncycastle/tsp/test/ParseTest.java index 557d012e69..46821d48d8 100644 --- a/pkix/src/test/java/org/bouncycastle/tsp/test/ParseTest.java +++ b/pkix/src/test/java/org/bouncycastle/tsp/test/ParseTest.java @@ -2,6 +2,7 @@ import java.io.ByteArrayInputStream; import java.io.IOException; +import java.security.Security; import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; @@ -11,6 +12,7 @@ import org.bouncycastle.asn1.cmp.PKIStatus; import org.bouncycastle.cert.X509CertificateHolder; import org.bouncycastle.cms.jcajce.JcaSimpleSignerInfoVerifierBuilder; +import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.tsp.TSPAlgorithms; import org.bouncycastle.tsp.TimeStampRequest; import org.bouncycastle.tsp.TimeStampResponse; @@ -358,6 +360,11 @@ private void generalizedTimeParse( fail("request not rejected."); } } + + public void setUp() + { + Security.addProvider(new BouncyCastleProvider()); + } public void testParsing() throws Exception