# exported via command: perl examples/x509_cert_details.pl -dump -pem t/data/testcert_extended.crt.pem > t/data/testcert_extended.crt.pem_dump
# hashref dumped via Data::Dump
{
cdp => ["http://serv1.com/crl1", "http://serv1.com/crl2"],
certificate_type => 4145,
digest_sha1 => {
pubkey => pack("H*","a27e9d29dd68e2f1f47c8c14eeaed72245622dff"),
x509 => pack("H*","c682b9055dde00ce08f61be9bc485597a1f54bb3"),
},
extensions => {
count => 17,
entries => [
{
critical => 1,
data => "CA:FALSE",
ln => "X509v3 Basic Constraints",
nid => 87,
oid => "2.5.29.19",
sn => "basicConstraints",
},
{
critical => 0,
data => "A2:7E:9D:29:DD:68:E2:F1:F4:7C:8C:14:EE:AE:D7:22:45:62:2D:FF",
ln => "X509v3 Subject Key Identifier",
nid => 82,
oid => "2.5.29.14",
sn => "subjectKeyIdentifier",
},
{
critical => 0,
data => "keyid:C8:1C:DA:92:0A:A9:48:08:3A:76:76:15:38:04:F1:34:D9:15:D0:20\nDirName:/C=US/O=Demo1/CN=CA1\nserial:12:34:56\n",
ln => "X509v3 Authority Key Identifier",
nid => 90,
oid => "2.5.29.35",
sn => "authorityKeyIdentifier",
},
{
critical => 0,
data => "Digital Signature, Non Repudiation, Key Encipherment, CRL Sign, Decipher Only",
ln => "X509v3 Key Usage",
nid => 83,
oid => "2.5.29.15",
sn => "keyUsage",
},
{
critical => 1,
data => "TLS Web Server Authentication, Code Signing, Microsoft Trust List Signing, IPSec End System, IPSec Tunnel, IPSec User, 1.3.6.1.5.5.7.3.13, 1.3.6.1.5.5.7.3.14",
ln => "X509v3 Extended Key Usage",
nid => 126,
oid => "2.5.29.37",
sn => "extendedKeyUsage",
},
{
critical => 0,
data => "email:alt1\@email.com, Registered ID:1.2.3.4.5, URI:http://name.dom.com/whatever, DNS:dns.name.com, IP Address:10.11.12.13, othername:<unsupported>, IP Address:2A00:1450:4001:C01:0:0:0:93",
ln => "X509v3 Subject Alternative Name",
nid => 85,
oid => "2.5.29.17",
sn => "subjectAltName",
},
{
critical => 0,
data => "email:issuer.altname\@email.com, Registered ID:1.2.0.0, URI:http://issuer.com/xyz, DNS:issuer.alt.name, IP Address:1.2.3.4",
ln => "X509v3 Issuer Alternative Name",
nid => 86,
oid => "2.5.29.18",
sn => "issuerAltName",
},
{
critical => 0,
data => "\nFull Name:\n URI:http://serv1.com/crl1\n\nFull Name:\n URI:http://serv1.com/crl2\n",
ln => "X509v3 CRL Distribution Points",
nid => 103,
oid => "2.5.29.31",
sn => "crlDistributionPoints",
},
{
critical => 0,
data => "OCSP - URI:http://ocsp/whatever\n",
ln => "Authority Information Access",
nid => 177,
oid => "1.3.6.1.5.5.7.1.1",
sn => "authorityInfoAccess",
},
{
critical => 0,
data => "SSL Server, Object Signing, Object Signing CA",
ln => "Netscape Cert Type",
nid => 71,
oid => "2.16.840.1.113730.1.1",
sn => "nsCertType",
},
{
critical => 0,
data => "http://netscape.base.url/xzy",
ln => "Netscape Base Url",
nid => 72,
oid => "2.16.840.1.113730.1.2",
sn => "nsBaseUrl",
},
{
critical => 0,
data => "http://netscape.revocation.url/xzy",
ln => "Netscape Revocation Url",
nid => 73,
oid => "2.16.840.1.113730.1.3",
sn => "nsRevocationUrl",
},
{
critical => 0,
data => "http://netscape.ca.revocation.url/xzy",
ln => "Netscape CA Revocation Url",
nid => 74,
oid => "2.16.840.1.113730.1.4",
sn => "nsCaRevocationUrl",
},
{
critical => 0,
data => "http://netscape.certificate.renewal.url/xzy",
ln => "Netscape Renewal Url",
nid => 75,
oid => "2.16.840.1.113730.1.7",
sn => "nsRenewalUrl",
},
{
critical => 0,
data => "http://netscape.ca.policy.url/xzy",
ln => "Netscape CA Policy Url",
nid => 76,
oid => "2.16.840.1.113730.1.8",
sn => "nsCaPolicyUrl",
},
{
critical => 0,
data => "ssl.server.name",
ln => "Netscape SSL Server Name",
nid => 77,
oid => "2.16.840.1.113730.1.12",
sn => "nsSslServerName",
},
{
critical => 0,
data => "netscape comment field",
ln => "Netscape Comment",
nid => 78,
oid => "2.16.840.1.113730.1.13",
sn => "nsComment",
},
],
},
extkeyusage => {
ln => [
"TLS Web Server Authentication",
"Code Signing",
"Microsoft Trust List Signing",
"IPSec End System",
"IPSec Tunnel",
"IPSec User",
],
nid => [129, 131, 136, 294, 295, 296],
oid => [
"1.3.6.1.5.5.7.3.1",
"1.3.6.1.5.5.7.3.3",
"1.3.6.1.4.1.311.10.3.1",
"1.3.6.1.5.5.7.3.5",
"1.3.6.1.5.5.7.3.6",
"1.3.6.1.5.5.7.3.7",
"1.3.6.1.5.5.7.3.13",
"1.3.6.1.5.5.7.3.14",
],
sn => [
"serverAuth",
"codeSigning",
"msCTLSign",
"ipsecEndSystem",
"ipsecTunnel",
"ipsecUser",
],
},
fingerprint => {
md5 => "D5:72:82:D5:85:06:4D:62:6F:17:1D:D7:77:BF:D6:11",
sha1 => "C6:82:B9:05:5D:DE:00:CE:08:F6:1B:E9:BC:48:55:97:A1:F5:4B:B3",
},
hash => {
issuer => { dec => 2914546923, hex => "ADB874EB" },
issuer_and_serial => { dec => 12265665, hex => "BB28C1" },
subject => { dec => 2258074781, hex => "86977C9D" },
},
issuer => {
count => 3,
entries => [
{
data => "US",
data_utf8_decoded => "US",
ln => "countryName",
nid => 14,
oid => "2.5.4.6",
sn => "C",
},
{
data => "Demo1",
data_utf8_decoded => "Demo1",
ln => "organizationName",
nid => 17,
oid => "2.5.4.10",
sn => "O",
},
{
data => "CA1",
data_utf8_decoded => "CA1",
ln => "commonName",
nid => 13,
oid => "2.5.4.3",
sn => "CN",
},
],
oneline => "/C=US/O=Demo1/CN=CA1",
print_rfc2253 => "CN=CA1,O=Demo1,C=US",
print_rfc2253_utf8 => "CN=CA1,O=Demo1,C=US",
print_rfc2253_utf8_decoded => "CN=CA1,O=Demo1,C=US",
},
keyusage => [
"digitalSignature",
"nonRepudiation",
"keyEncipherment",
"cRLSign",
"decipherOnly",
],
not_after => "2035-03-31T23:59:59Z",
not_before => "2012-02-01T00:00:00Z",
ns_cert_type => ["server", "objsign", "objCA"],
pubkey_alg => "rsaEncryption",
pubkey_bits => 1024,
pubkey_id => 6,
pubkey_size => 128,
serial => { dec => 1193048, hex => 123458, long => 1193048 },
signature_alg => "sha1WithRSAEncryption",
subject => {
altnames => [
1,
"alt1\@email.com",
6,
"http://name.dom.com/whatever",
2,
"dns.name.com",
7,
"\n\13\f\r",
0,
"othername",
7,
"*\0\24P\@\1\f\1\0\0\0\0\0\0\0\x93",
],
count => 20,
entries => [
{
data => "US",
data_utf8_decoded => "US",
ln => "countryName",
nid => 14,
oid => "2.5.4.6",
sn => "C",
},
{
data => "State",
data_utf8_decoded => "State",
ln => "stateOrProvinceName",
nid => 16,
oid => "2.5.4.8",
sn => "ST",
},
{
data => "City",
data_utf8_decoded => "City",
ln => "localityName",
nid => 15,
oid => "2.5.4.7",
sn => "L",
},
{
data => "Company",
data_utf8_decoded => "Company",
ln => "organizationName",
nid => 17,
oid => "2.5.4.10",
sn => "O",
},
{
data => "Unit",
data_utf8_decoded => "Unit",
ln => "organizationalUnitName",
nid => 18,
oid => "2.5.4.11",
sn => "OU",
},
{
data => "extended.server.cert",
data_utf8_decoded => "extended.server.cert",
ln => "commonName",
nid => 13,
oid => "2.5.4.3",
sn => "CN",
},
{
data => "anyemail\@extended.server.cert",
data_utf8_decoded => "anyemail\@extended.server.cert",
ln => "emailAddress",
nid => 48,
oid => "1.2.840.113549.1.9.1",
sn => "emailAddress",
},
{
data => "Another Unit",
data_utf8_decoded => "Another Unit",
ln => "organizationalUnitName",
nid => 18,
oid => "2.5.4.11",
sn => "OU",
},
{
data => "Yet Another Unit",
data_utf8_decoded => "Yet Another Unit",
ln => "organizationalUnitName",
nid => 18,
oid => "2.5.4.11",
sn => "OU",
},
{
data => "Surname text",
data_utf8_decoded => "Surname text",
ln => "surname",
nid => 100,
oid => "2.5.4.4",
sn => "SN",
},
{
data => "Title text",
data_utf8_decoded => "Title text",
ln => "title",
nid => 106,
oid => "2.5.4.12",
sn => "title",
},
{
data => "Description text",
data_utf8_decoded => "Description text",
ln => "description",
nid => 107,
oid => "2.5.4.13",
sn => "description",
},
{
data => "Name text",
data_utf8_decoded => "Name text",
ln => "name",
nid => 173,
oid => "2.5.4.41",
sn => "name",
},
{
data => "GivenName text",
data_utf8_decoded => "GivenName text",
ln => "givenName",
nid => 99,
oid => "2.5.4.42",
sn => "GN",
},
{
data => "Initials text",
data_utf8_decoded => "Initials text",
ln => "initials",
nid => 101,
oid => "2.5.4.43",
sn => "initials",
},
{
data => "dn.qualifier",
data_utf8_decoded => "dn.qualifier",
ln => "dnQualifier",
nid => 174,
oid => "2.5.4.46",
sn => "dnQualifier",
},
{
data => "Role",
data_utf8_decoded => "Role",
ln => "role",
nid => 400,
oid => "2.5.4.72",
sn => "role",
},
{
data => "generation_qualifier",
data_utf8_decoded => "generation_qualifier",
ln => "generationQualifier",
nid => 509,
oid => "2.5.4.44",
sn => "generationQualifier",
},
{
data => "Pseudonym text",
data_utf8_decoded => "Pseudonym text",
ln => "pseudonym",
nid => 510,
oid => "2.5.4.65",
sn => "pseudonym",
},
{
data => "x500_uniq_identifier",
data_utf8_decoded => "x500_uniq_identifier",
ln => "x500UniqueIdentifier",
nid => 503,
oid => "2.5.4.45",
sn => "x500UniqueIdentifier",
},
],
oneline => "/C=US/ST=State/L=City/O=Company/OU=Unit/CN=extended.server.cert/emailAddress=anyemail\@extended.server.cert/OU=Another Unit/OU=Yet Another Unit/SN=Surname text/title=Title text/description=Description text/name=Name text/GN=GivenName text/initials=Initials text/dnQualifier=dn.qualifier/role=Role/generationQualifier=generation_qualifier/pseudonym=Pseudonym text/x500UniqueIdentifier=x500_uniq_identifier",
print_rfc2253 => "x500UniqueIdentifier=x500_uniq_identifier,pseudonym=Pseudonym text,generationQualifier=generation_qualifier,role=Role,dnQualifier=dn.qualifier,initials=Initials text,GN=GivenName text,name=Name text,description=Description text,title=Title text,SN=Surname text,OU=Yet Another Unit,OU=Another Unit,emailAddress=anyemail\@extended.server.cert,CN=extended.server.cert,OU=Unit,O=Company,L=City,ST=State,C=US",
print_rfc2253_utf8 => "x500UniqueIdentifier=x500_uniq_identifier,pseudonym=Pseudonym text,generationQualifier=generation_qualifier,role=Role,dnQualifier=dn.qualifier,initials=Initials text,GN=GivenName text,name=Name text,description=Description text,title=Title text,SN=Surname text,OU=Yet Another Unit,OU=Another Unit,emailAddress=anyemail\@extended.server.cert,CN=extended.server.cert,OU=Unit,O=Company,L=City,ST=State,C=US",
print_rfc2253_utf8_decoded => "x500UniqueIdentifier=x500_uniq_identifier,pseudonym=Pseudonym text,generationQualifier=generation_qualifier,role=Role,dnQualifier=dn.qualifier,initials=Initials text,GN=GivenName text,name=Name text,description=Description text,title=Title text,SN=Surname text,OU=Yet Another Unit,OU=Another Unit,emailAddress=anyemail\@extended.server.cert,CN=extended.server.cert,OU=Unit,O=Company,L=City,ST=State,C=US",
},
version => 2,
}