diff options
author | Bjørn Christian Seime <bjorncs@oath.com> | 2018-03-19 15:09:02 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@oath.com> | 2018-03-19 16:03:31 +0100 |
commit | 3881827d9d3580ac159b1612f8962198cf296da3 (patch) | |
tree | 428b74db0b2a82d8bbdd7aa6cf7803263247c0f2 /vespa-athenz/src/test | |
parent | ef26430294cb081813867d84612f7d6eda6ee39e (diff) |
Use new builders in TestUtils
Diffstat (limited to 'vespa-athenz/src/test')
4 files changed, 18 insertions, 41 deletions
diff --git a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/AthenzSslContextBuilderTest.java b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/AthenzSslContextBuilderTest.java index 20ac8791863..cf1b2168dc8 100644 --- a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/AthenzSslContextBuilderTest.java +++ b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/AthenzSslContextBuilderTest.java @@ -10,7 +10,6 @@ import java.security.KeyPair; import java.security.cert.X509Certificate; import static com.yahoo.vespa.athenz.tls.TestUtils.createCertificate; -import static com.yahoo.vespa.athenz.tls.TestUtils.createKeyPair; import static com.yahoo.vespa.athenz.tls.TestUtils.createKeystore; import static com.yahoo.vespa.athenz.tls.TestUtils.createKeystoreFile; @@ -48,7 +47,7 @@ public class AthenzSslContextBuilderTest { @Test public void can_build_sslcontext_with_keystore_from_private_key_and_certificate() throws Exception { - KeyPair keyPair = createKeyPair(); + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA, 2048); X509Certificate certificate = createCertificate(keyPair); new AthenzSslContextBuilder() .withKeyStore(keyPair.getPrivate(), certificate) diff --git a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/KeyStoreBuilderTest.java b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/KeyStoreBuilderTest.java index 1b6fa8bcbf1..6060f6f3521 100644 --- a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/KeyStoreBuilderTest.java +++ b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/KeyStoreBuilderTest.java @@ -9,7 +9,6 @@ import java.security.KeyPair; import java.security.cert.X509Certificate; import static com.yahoo.vespa.athenz.tls.TestUtils.createCertificate; -import static com.yahoo.vespa.athenz.tls.TestUtils.createKeyPair; import static com.yahoo.vespa.athenz.tls.TestUtils.createKeystoreFile; /** @@ -24,7 +23,7 @@ public class KeyStoreBuilderTest { @Test public void can_create_jks_keystore_from_privatekey_and_certificate() throws Exception { - KeyPair keyPair = createKeyPair(); + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA, 4096); X509Certificate certificate = createCertificate(keyPair); KeyStoreBuilder.withType(KeyStoreType.JKS) .withKeyEntry("key", keyPair.getPrivate(), certificate) diff --git a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java index 54601c04514..64f15408313 100644 --- a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java +++ b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java @@ -1,23 +1,13 @@ // Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.athenz.tls; -import com.yahoo.athenz.auth.util.Crypto; -import org.bouncycastle.asn1.x500.X500Name; -import org.bouncycastle.operator.OperatorCreationException; -import org.bouncycastle.pkcs.PKCS10CertificationRequest; - -import java.io.BufferedOutputStream; +import javax.security.auth.x500.X500Principal; import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.security.GeneralSecurityException; import java.security.KeyPair; -import java.security.KeyPairGenerator; import java.security.KeyStore; -import java.security.NoSuchAlgorithmException; -import java.security.cert.Certificate; import java.security.cert.X509Certificate; +import java.time.Instant; +import java.time.temporal.ChronoUnit; import static com.yahoo.vespa.athenz.tls.KeyStoreUtils.writeKeyStoreToFile; @@ -26,32 +16,22 @@ import static com.yahoo.vespa.athenz.tls.KeyStoreUtils.writeKeyStoreToFile; */ class TestUtils { - static KeyStore createKeystore(KeyStoreType type, char[] password) - throws GeneralSecurityException, IOException, OperatorCreationException { - KeyPair keyPair = createKeyPair(); - KeyStore keystore = type.createKeystore(); - keystore.load(null); - keystore.setKeyEntry("entry-name", keyPair.getPrivate(), password, new Certificate[]{createCertificate(keyPair)}); - return keystore; - } - - static X509Certificate createCertificate(KeyPair keyPair) - throws OperatorCreationException, IOException { - String x500Principal = "CN=mysubject"; - PKCS10CertificationRequest csr = - Crypto.getPKCS10CertRequest( - Crypto.generateX509CSR(keyPair.getPrivate(), x500Principal, null)); - return Crypto.generateX509Certificate(csr, keyPair.getPrivate(), new X500Name(x500Principal), 3600, false); + static KeyStore createKeystore(KeyStoreType type, char[] password) { + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA, 4096); + return KeyStoreBuilder.withType(type) + .withKeyEntry("entry-name", keyPair.getPrivate(), password, createCertificate(keyPair)) + .build(); } - static KeyPair createKeyPair() throws NoSuchAlgorithmException { - KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA"); - keyGen.initialize(4096); - return keyGen.genKeyPair(); + static X509Certificate createCertificate(KeyPair keyPair) { + X500Principal subject = new X500Principal("CN=mysubject"); + return X509CertificateBuilder + .fromKeypair( + keyPair, subject, Instant.now(), Instant.now().plus(1, ChronoUnit.DAYS), SignatureAlgorithm.SHA256_WITH_RSA, 1) + .build(); } - static void createKeystoreFile(File file, KeyStoreType type, char[] password) - throws IOException, GeneralSecurityException, OperatorCreationException { + static void createKeystoreFile(File file, KeyStoreType type, char[] password) { writeKeyStoreToFile(createKeystore(type, password), file, password); } } diff --git a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/X509CertificateBuilderTest.java b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/X509CertificateBuilderTest.java index 4a6340ab0d5..81ff4fdb208 100644 --- a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/X509CertificateBuilderTest.java +++ b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/X509CertificateBuilderTest.java @@ -9,7 +9,6 @@ import java.security.cert.X509Certificate; import java.time.Instant; import java.time.temporal.ChronoUnit; -import static com.yahoo.vespa.athenz.tls.TestUtils.createKeyPair; import static org.junit.Assert.assertEquals; /** @@ -19,7 +18,7 @@ public class X509CertificateBuilderTest { @Test public void can_build_self_signed_certificate() throws NoSuchAlgorithmException { - KeyPair keyPair = createKeyPair(); + KeyPair keyPair = KeyUtils.generateKeypair(KeyAlgorithm.RSA, 2048); X500Principal subject = new X500Principal("CN=myservice"); X509Certificate cert = X509CertificateBuilder.fromKeypair( |