Class SelfSignedCertificateGenerator


  • public class SelfSignedCertificateGenerator
    extends java.lang.Object
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addAuthorityKeyIdentifier​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder, java.security.KeyPair keyPair)  
      protected void addBasicConstraints​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder, org.bouncycastle.asn1.x509.BasicConstraints basicConstraints)  
      protected void addExtendedKeyUsage​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder)  
      protected void addKeyUsage​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder)  
      protected void addSubjectAlternativeNames​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder, java.security.KeyPair keyPair, java.lang.String applicationUri, java.util.List<java.lang.String> dnsNames, java.util.List<java.lang.String> ipAddresses)  
      static java.security.KeyPair generateEcKeyPair​(int length)
      Generate an EC KeyPair of bit length length.
      static java.security.KeyPair generateRsaKeyPair​(int length)
      Generate an RSA KeyPair of bit length length.
      java.security.cert.X509Certificate generateSelfSigned​(java.security.KeyPair keyPair, java.util.Date notBefore, java.util.Date notAfter, java.lang.String commonName, java.lang.String organization, java.lang.String organizationalUnit, java.lang.String localityName, java.lang.String stateName, java.lang.String countryCode, java.lang.String applicationUri, java.util.List<java.lang.String> dnsNames, java.util.List<java.lang.String> ipAddresses, java.lang.String signatureAlgorithm)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SelfSignedCertificateGenerator

        public SelfSignedCertificateGenerator()
    • Method Detail

      • generateEcKeyPair

        public static java.security.KeyPair generateEcKeyPair​(int length)
                                                       throws java.security.NoSuchAlgorithmException
        Generate an EC KeyPair of bit length length.
        Parameters:
        length - the length, in bits, of the key to generate.
        Returns:
        a KeyPair of bit length length.
        Throws:
        java.security.NoSuchAlgorithmException - if no Provider supports EC KeyPair generation.
      • generateRsaKeyPair

        public static java.security.KeyPair generateRsaKeyPair​(int length)
                                                        throws java.security.NoSuchAlgorithmException
        Generate an RSA KeyPair of bit length length.
        Parameters:
        length - the length, in bits, of the key to generate.
        Returns:
        a KeyPair of bit length length.
        Throws:
        java.security.NoSuchAlgorithmException - if no Provider supports RSA KeyPair generation.
      • addAuthorityKeyIdentifier

        protected void addAuthorityKeyIdentifier​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder,
                                                 java.security.KeyPair keyPair)
                                          throws org.bouncycastle.cert.CertIOException,
                                                 java.security.NoSuchAlgorithmException
        Throws:
        org.bouncycastle.cert.CertIOException
        java.security.NoSuchAlgorithmException
      • addBasicConstraints

        protected void addBasicConstraints​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder,
                                           org.bouncycastle.asn1.x509.BasicConstraints basicConstraints)
                                    throws org.bouncycastle.cert.CertIOException
        Throws:
        org.bouncycastle.cert.CertIOException
      • addExtendedKeyUsage

        protected void addExtendedKeyUsage​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder)
                                    throws org.bouncycastle.cert.CertIOException
        Throws:
        org.bouncycastle.cert.CertIOException
      • addKeyUsage

        protected void addKeyUsage​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder)
                            throws org.bouncycastle.cert.CertIOException
        Throws:
        org.bouncycastle.cert.CertIOException
      • addSubjectAlternativeNames

        protected void addSubjectAlternativeNames​(org.bouncycastle.cert.X509v3CertificateBuilder certificateBuilder,
                                                  java.security.KeyPair keyPair,
                                                  @Nullable
                                                  java.lang.String applicationUri,
                                                  java.util.List<java.lang.String> dnsNames,
                                                  java.util.List<java.lang.String> ipAddresses)
                                           throws org.bouncycastle.cert.CertIOException,
                                                  java.security.NoSuchAlgorithmException
        Throws:
        org.bouncycastle.cert.CertIOException
        java.security.NoSuchAlgorithmException
      • generateSelfSigned

        public java.security.cert.X509Certificate generateSelfSigned​(java.security.KeyPair keyPair,
                                                                     java.util.Date notBefore,
                                                                     java.util.Date notAfter,
                                                                     @Nullable
                                                                     java.lang.String commonName,
                                                                     @Nullable
                                                                     java.lang.String organization,
                                                                     @Nullable
                                                                     java.lang.String organizationalUnit,
                                                                     @Nullable
                                                                     java.lang.String localityName,
                                                                     @Nullable
                                                                     java.lang.String stateName,
                                                                     @Nullable
                                                                     java.lang.String countryCode,
                                                                     @Nullable
                                                                     java.lang.String applicationUri,
                                                                     java.util.List<java.lang.String> dnsNames,
                                                                     java.util.List<java.lang.String> ipAddresses,
                                                                     java.lang.String signatureAlgorithm)
                                                              throws java.lang.Exception
        Throws:
        java.lang.Exception