blob: bdb2dec77a338b8376984ec40765eb2fb6c016a8 [file] [log] [blame]
# This is based on the default OpenSSL configuration file which is
# licensed with the following license:
# Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# 3. All advertising materials mentioning features or use of this
# software must display the following acknowledgment:
# "This product includes software developed by the OpenSSL Project
# for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
#
# 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
# endorse or promote products derived from this software without
# prior written permission. For written permission, please contact
# openssl-core@openssl.org.
#
# 5. Products derived from this software may not be called "OpenSSL"
# nor may "OpenSSL" appear in their names without prior written
# permission of the OpenSSL Project.
#
# 6. Redistributions of any form whatsoever must retain the following
# acknowledgment:
# "This product includes software developed by the OpenSSL Project
# for use in the OpenSSL Toolkit (http://www.openssl.org/)"
#
# THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
# EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
# ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
# OF THE POSSIBILITY OF SUCH DAMAGE.
# ====================================================================
#
# This product includes cryptographic software written by Eric Young
# (eay@cryptsoft.com). This product includes software written by Tim
# Hudson (tjh@cryptsoft.com).
#
HOME = .
RANDFILE = $ENV::HOME/.rnd
# Extra OBJECT IDENTIFIER info:
#oid_file = $ENV::HOME/.oid
oid_section = new_oids
# To use this configuration file with the "-extfile" option of the
# "openssl x509" utility, name here the section containing the
# X.509v3 extensions to use:
# extensions =
# (Alternatively, use a configuration file that has only
# X.509v3 extensions in its main [= default] section.)
[ new_oids ]
# We can add new OIDs in here for use by 'ca' and 'req'.
# Add a simple OID like this:
# testoid1=1.2.3.4
# Or use config file substitution like this:
# testoid2=${testoid1}.5.6
####################################################################
[ ca ]
default_ca = CA_default # The default ca section
####################################################################
[ CA_default ]
dir = /tmp/ca # Where everything is kept
certs = $dir/certs # Where the issued certs are kept
crl_dir = $dir/crl # Where the issued crl are kept
database = $dir/index.txt # database index file.
new_certs_dir = $dir/newcerts # default place for new certs.
certificate = $dir/cacert.pem # The CA certificate
serial = $dir/serial # The current serial number
crl = $dir/crl.pem # The current CRL
private_key = $dir/private/cakey.pem# The private key
RANDFILE = $dir/private/.rand # private random number file
x509_extensions = usr_cert # The extentions to add to the cert
# Comment out the following two lines for the "traditional"
# (and highly broken) format.
name_opt = ca_default # Subject Name options
cert_opt = ca_default # Certificate field options
# Extension copying option: use with caution.
# copy_extensions = copy
# Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs
# so this is commented out by default to leave a V1 CRL.
# crl_extensions = crl_ext
default_days = 365 # how long to certify for
default_crl_days= 30 # how long before next CRL
default_md = sha1 # which md to use.
preserve = no # keep passed DN ordering
policy = policy_anything
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ policy_anything ]
countryName = optional
stateOrProvinceName = optional
localityName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
####################################################################
[ req ]
default_bits = 1024
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca # The extentions to add to the self signed cert
string_mask = nombstr
req_extensions = v3_req # The extensions to add to a certificate request
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
countryName_min = 2
countryName_max = 2
stateOrProvinceName = State or Province Name (full name)
stateOrProvinceName_default = California
localityName = Locality Name (eg, city)
localityName_default = San Mateo
0.organizationName = Organization Name (eg, company)
0.organizationName_default = Genius.com Inc
organizationalUnitName = Organizational Unit Name (eg, section)
organizationalUnitName_default = NetOps
commonName = Common Name (eg, your name or your server\'s hostname)
commonName_max = 64
emailAddress = Email Address
emailAddress_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
unstructuredName = An optional company name
[ unsupported_cert ]
# Just a made-up OID
1.2.3.4.99999.1.2.3.4 = critical,ASN1:FORMAT:BITLIST,BITSTRING:0,1,2
[ keyUsage_critical_cert ]
basicConstraints=CA:FALSE
keyUsage = critical, decipherOnly, keyAgreement
[ keyUsage_extraLong_cert ]
keyUsage=ASN1:FORMAT:BITLIST,BITSTRING:0,1,2,3,4,5,6,7,8,9,10
[ keyUsage_cert ]
basicConstraints=CA:FALSE
keyUsage = encipherOnly, keyEncipherment, dataEncipherment, keyCertSign, cRLSign, cRLSign, keyEncipherment, dataEncipherment, keyCertSign, cRLSign
[ extendedKeyUsage_cert ]
extendedKeyUsage=1.2.3.4
[ userWithPathLen_cert ]
basicConstraints=CA:false,pathlen:10
[ ca_cert ]
basicConstraints=CA:true
[ caWithPathLen_cert ]
basicConstraints=CA:true,pathlen:10
[ invalid_ip_cert ]
subjectAltName = ASN1:SEQUENCE:invalid_ip_SEQ
issuerAltName = ASN1:SEQUENCE:invalid_ip_SEQ
[ invalid_ip_SEQ ]
IP.1 = IMPLICIT:7,FORMAT:HEX,OCTETSTRING:0A
[ ipv6_cert ]
subjectAltName = ASN1:SEQUENCE:ipv6_SEQ
issuerAltName = ASN1:SEQUENCE:ipv6_SEQ
[ ipv6_SEQ ]
IP.1 = IMPLICIT:7,FORMAT:HEX,OCTETSTRING:20010DB8000000000000FF0000428329
[ usr_cert ]
basicConstraints=CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer:always
nsComment = "X.509 Unit Test"
subjectAltName = @alt_names
issuerAltName = @alt_names
#subjectAltName = ASN1:SEQUENCE:raw_alt_names
[ alt_none_cert ]
[ alt_names ]
otherName.0 = 1.2.3.4;UTF8:test1
email.0 = x509@example.com
DNS.0 = x509.example.com
dirName.0 = dir_example
URI.0 = http://www.example.com/?q=awesomeness
IP.0 = 192.168.0.1
RID.0 = 1.2.3.4
[ alt_other_cert ]
subjectAltName = otherName:1.2.3.4;UTF8:test1
[ alt_email_cert ]
subjectAltName = email:x509@example.com
[ alt_dns_cert ]
subjectAltName = DNS:x509.example.com
[ alt_dirname_cert ]
subjectAltName = dirName:dir_example
[ alt_uri_cert ]
subjectAltName = URI:http://www.example.com/?q=awesomeness
[ alt_rid_cert ]
subjectAltName = RID:1.2.3.4
[ raw_alt_names ]
ediPartyName = IMPLICIT:5,SEQUENCE:ediPartyName_SEQ
x400 = IMPLICIT:3,SEQUENCE:x400_SEQ
[ x400_SEQ ]
BuiltInStandardAttributes = SEQUENCE:x400_BuiltInStandardAddtributes_SEQ
[ x400_BuiltInStandardAddtributes_SEQ ]
PersonalName=IMPLICIT:5,SET:x400_PersonalName_SET
[ x400_PersonalName_SET ]
Surname=IMPLICIT:0,PRINTABLESTRING:Root
GivenName=IMPLICIT:1,PRINTABLESTRING:Kenny
[ ediPartyName_SEQ ]
partyName = IMPLICIT:1,PRINTABLESTRING:Joe
[ dir_example ]
C=US
O=Awesome Dudes
OUber Frîends
CN=example X.509
CN=∆ƒ
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
issuerAltName = @alt_names
basicConstraints=CA:FALSE
nsComment = "X.509 Unit Test"
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer:always
basicConstraints = CA:true
[ crl_ext ]
authorityKeyIdentifier=keyid:always,issuer:always