[utilities COMMIT] /java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertifi...
noreply at shibboleth.net
noreply at shibboleth.net
Wed Jul 9 23:08:12 EDT 2014
Author: scantor
Date: Wed Jul 9 23:08:12 2014
New Revision: 620
URL: http://svn.shibboleth.net/view/utilities?rev=620&view=rev
Log:
IDP-410: add option for cert algorithm
Modified:
java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertificateGenerator.java
Modified: java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertificateGenerator.java
URL: http://svn.shibboleth.net/view/utilities/java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertificateGenerator.java?rev=620&r1=619&r2=620&view=diff
==============================================================================
--- java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertificateGenerator.java (original)
+++ java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/security/SelfSignedCertificateGenerator.java Wed Jul 9 23:08:12 2014
@@ -87,7 +87,7 @@
*/
public void setKeyType(@Nonnull @NotEmpty final String type) {
args.keyType = Constraint.isNotNull(StringSupport.trimOrNull(type), "Key type cannot be null or empty");
- }
+ }
/**
* Set the size of the generated key. Defaults to 2048
@@ -111,6 +111,15 @@
args.certificateLifetime = lifetime;
}
+ /**
+ * Set the certificate algorithm that will be used. Defaults to SHA256withRSA.
+ *
+ * @param alg certificate algorithm
+ */
+ public void setCertificateAlg(@Nonnull @NotEmpty final String alg) {
+ args.certAlg = Constraint.isNotNull(StringSupport.trimOrNull(alg), "Algorithm cannot be null or empty");
+ }
+
/**
* Set the hostname that will appear in the certificate's DN.
*
@@ -305,7 +314,7 @@
certifcateGenerator.setSerialNumber(new BigInteger(160, new SecureRandom()));
- certifcateGenerator.setSignatureAlgorithm("SHA256withRSA");
+ certifcateGenerator.setSignatureAlgorithm(args.certAlg);
certifcateGenerator.addExtension(X509Extensions.SubjectAlternativeName, false,
GeneralNames.getInstance(new DERSequence(buildSubjectAltNames())));
@@ -411,6 +420,9 @@
/** Certificate lifetime. */
@Nonnull @NotEmpty public static final String CERT_LIFETIME = "--lifetime";
+ /** Certificate algorithm. */
+ @Nonnull @NotEmpty public static final String CERT_ALG = "--certAlg";
+
/** Hostname for cert subject. */
@Nonnull @NotEmpty public static final String HOSTNAME = "--hostname";
@@ -451,6 +463,10 @@
@Parameter(names = CERT_LIFETIME, description = "Certificate lifetime in years (default: 20)")
@Positive private int certificateLifetime = 20;
+ /** Certificate algorithm. */
+ @Parameter(names = CERT_ALG, description = "Certificate algorithm (default: SHA256withRSA)")
+ @Nonnull @NotEmpty private String certAlg = "SHA256withRSA";
+
/** Hostname. */
@Parameter(names = HOSTNAME, required = true, description = "Hostname for certificate subject")
@Nonnull @NotEmpty private String hostname;
More information about the commits
mailing list