Author: Paolo Lulli <paolo@lulli.net>
Explicit key size and algo
src/main/java/net/lulli/certsigner/Client.java | 4 ++-- src/main/java/net/lulli/certsigner/Settings.java | 1 + src/main/java/net/lulli/certsigner/ca/CaData.java | 2 +- src/main/java/net/lulli/certsigner/ca/CertificateIssue.java | 1 - src/main/java/net/lulli/certsigner/util/FileCAUtils.java | 2 +- src/main/java/net/lulli/certsigner/util/Keys.java | 6 ++++--
diff --git a/src/main/java/net/lulli/certsigner/Client.java b/src/main/java/net/lulli/certsigner/Client.java index 53fbad9e5b334107f90fe3d9f0c7740f62abd912..e58c80b74bb0296ce04218ab715ed2b722228da5 100644 --- a/src/main/java/net/lulli/certsigner/Client.java +++ b/src/main/java/net/lulli/certsigner/Client.java @@ -60,8 +60,8 @@ public String createCsr() { try { Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); - KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA"); - keyGen.initialize(2048); + KeyPairGenerator keyGen = KeyPairGenerator.getInstance(Settings.KEY_ALGORITHM); + keyGen.initialize(Settings.KEYSIZE); KeyPair keypair = keyGen.genKeyPair(); Serde.toFile(keypair.getPrivate(), getCertificatesPath() + "/" + this.clientName + ".key"); diff --git a/src/main/java/net/lulli/certsigner/Settings.java b/src/main/java/net/lulli/certsigner/Settings.java index b0939523e8412d5500f9a4f9b7439fe814f7017b..b04fba7305bfad9b0779b8e75bc1707dd0221fec 100644 --- a/src/main/java/net/lulli/certsigner/Settings.java +++ b/src/main/java/net/lulli/certsigner/Settings.java @@ -18,6 +18,7 @@ package net.lulli.certsigner; public interface Settings { + int KEYSIZE = 2048; String BC_PROVIDER = "BC"; String KEY_ALGORITHM = "RSA"; String SIGNATURE_ALGORITHM = "SHA256withRSA"; diff --git a/src/main/java/net/lulli/certsigner/ca/CaData.java b/src/main/java/net/lulli/certsigner/ca/CaData.java index dc8c67afd66baa1315ae294fd04c63a746a6661e..c8a78d304960e6d19da7ac8d8f06654d22847fc3 100644 --- a/src/main/java/net/lulli/certsigner/ca/CaData.java +++ b/src/main/java/net/lulli/certsigner/ca/CaData.java @@ -45,7 +45,7 @@ try { Security.addProvider(new BouncyCastleProvider()); var keyPairGenerator = KeyPairGenerator.getInstance(Settings.KEY_ALGORITHM, Settings.BC_PROVIDER); - keyPairGenerator.initialize(2048); + keyPairGenerator.initialize(Settings.KEYSIZE); var rootKeyPair = keyPairGenerator.generateKeyPair(); var rootCert = CertificateIssue.rootCertificate(rootKeyPair.getPublic(), rootKeyPair.getPrivate(), rootSubject); diff --git a/src/main/java/net/lulli/certsigner/ca/CertificateIssue.java b/src/main/java/net/lulli/certsigner/ca/CertificateIssue.java index 4dcc08ab4e28acc2c0d2670636e48e139504145c..0df828211c232a857488e73bd5c1b441f460293d 100644 --- a/src/main/java/net/lulli/certsigner/ca/CertificateIssue.java +++ b/src/main/java/net/lulli/certsigner/ca/CertificateIssue.java @@ -62,7 +62,6 @@ return new JcaX509CertificateConverter().setProvider(Settings.BC_PROVIDER).getCertificate(rootCertHolder); } - public static X509Certificate clientCertificate( PrivateKey privateKey, String certificateSubject, diff --git a/src/main/java/net/lulli/certsigner/util/FileCAUtils.java b/src/main/java/net/lulli/certsigner/util/FileCAUtils.java index 675da4bf3cb5cdb8491486120942db2f840a90fe..3626306c3adb34642cf3d838949c2054030c1fea 100644 --- a/src/main/java/net/lulli/certsigner/util/FileCAUtils.java +++ b/src/main/java/net/lulli/certsigner/util/FileCAUtils.java @@ -39,7 +39,7 @@ try { Security.addProvider(new BouncyCastleProvider()); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(Settings.KEY_ALGORITHM, Settings.BC_PROVIDER); - keyPairGenerator.initialize(2048); + keyPairGenerator.initialize(Settings.KEYSIZE); KeyPair rootKeyPair = keyPairGenerator.generateKeyPair(); X509Certificate rootCert = CertificateIssue.rootCertificate(rootKeyPair.getPublic(), rootKeyPair.getPrivate(), rootSubject); diff --git a/src/main/java/net/lulli/certsigner/util/Keys.java b/src/main/java/net/lulli/certsigner/util/Keys.java index 031803178cb3d5c6109f4af7ec6a6870ee2f3c77..f773b00230e41504ee8aec8c11cb9d28ebc1758d 100644 --- a/src/main/java/net/lulli/certsigner/util/Keys.java +++ b/src/main/java/net/lulli/certsigner/util/Keys.java @@ -17,6 +17,8 @@ */ package net.lulli.certsigner.util; +import net.lulli.certsigner.Settings; + import java.io.File; import java.nio.charset.Charset; import java.nio.file.Files; @@ -39,7 +41,7 @@ .replace("-----END PUBLIC KEY-----", ""); byte[] encoded = Base64.getDecoder().decode(publicKeyPEM); - KeyFactory keyFactory = KeyFactory.getInstance("RSA"); + KeyFactory keyFactory = KeyFactory.getInstance(Settings.KEY_ALGORITHM); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(encoded); return (RSAPublicKey) keyFactory.generatePublic(keySpec); } @@ -53,7 +55,7 @@ .replace("-----END PRIVATE KEY-----", ""); byte[] encoded = Base64.getDecoder().decode(privateKeyPEM); - KeyFactory keyFactory = KeyFactory.getInstance("RSA"); + KeyFactory keyFactory = KeyFactory.getInstance(Settings.KEY_ALGORITHM); PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encoded); return (RSAPrivateKey) keyFactory.generatePrivate(keySpec); }