Created
February 18, 2020 10:42
-
-
Save jamescun/f095971d1a1eb31f4753599c98e299fd to your computer and use it in GitHub Desktop.
how Go handles multiple x509/ssl certificate common names
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Certificate: | |
Data: | |
Version: 3 (0x2) | |
Serial Number: | |
61:02:d2:d6:00:00:00:00:00:15 | |
Signature Algorithm: sha1WithRSAEncryption | |
Issuer: C=US, ST=Washington, L=Redmond, O=Microsoft Corporation, CN=Microsoft Product Secure Server CA/[email protected] | |
Validity | |
Not Before: Aug 13 21:20:05 2010 GMT | |
Not After : Nov 13 21:20:05 2011 GMT | |
Subject: C=US, ST=WA, L=Redmond, O=Microsoft, OU=MIH, CN=*.validation.sls.microsoft.com, CN=validation.sls.microsoft.com, CN=*.activation.sls.microsoft.com, CN=activation.sls.microsoft.com, CN=sls.microsoft.com | |
Subject Public Key Info: | |
Public Key Algorithm: rsaEncryption | |
Public-Key: (1024 bit) | |
Modulus: | |
00:ac:ec:40:32:db:c7:d7:3c:99:87:7c:2d:9b:3b: | |
53:5a:8c:e4:42:58:e6:a3:b5:87:88:c7:40:4f:57: | |
a6:4e:92:44:01:a3:6d:3c:b7:6e:42:7e:a5:b0:8b: | |
39:90:82:99:08:e4:28:b9:f1:e9:a4:5a:44:b2:48: | |
98:23:fa:63:14:ab:44:84:72:28:75:6a:47:a2:81: | |
a5:4f:ad:66:86:68:5e:43:68:d9:62:40:bd:c6:68: | |
62:ce:ce:09:7b:42:5c:aa:0c:b0:71:82:4f:dc:e4: | |
b3:61:e5:73:1a:b1:18:d8:f9:47:52:d2:c8:a2:a4: | |
68:ac:3a:e9:c5:cf:6f:eb:f3 | |
Exponent: 65537 (0x10001) | |
X509v3 extensions: | |
X509v3 Key Usage: critical | |
Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment | |
X509v3 Extended Key Usage: | |
TLS Web Server Authentication | |
X509v3 Subject Key Identifier: | |
F8:A3:22:F3:E5:C2:AF:5B:39:08:63:02:A5:D6:5C:3C:CF:BF:F3:BD | |
X509v3 Authority Key Identifier: | |
keyid:9E:49:93:71:E6:FA:ED:97:80:08:89:3E:3C:F3:29:CC:71:6D:EF:5C | |
X509v3 CRL Distribution Points: | |
Full Name: | |
URI:http://crl.microsoft.com/pki/crl/products/MicProSecSerCA_2007-12-04.crl | |
URI:http://www.microsoft.com/pki/crl/products/MicProSecSerCA_2007-12-04.crl | |
Authority Information Access: | |
CA Issuers - URI:http://www.microsoft.com/pki/certs/MicProSecSerCA_2007-12-04.crt | |
Signature Algorithm: sha1WithRSAEncryption | |
1a:20:cf:e4:49:04:90:45:da:ac:7d:80:df:68:c7:28:52:d8: | |
3e:3d:e5:c8:30:6f:fd:bf:e5:fa:48:12:42:77:a8:3b:07:16: | |
de:ec:95:f3:bc:2a:f3:4a:e7:f1:16:7a:30:ca:cc:05:23:9f: | |
33:1d:37:b9:69:9c:5f:ec:cf:86:01:84:1e:04:9f:c7:90:bc: | |
c5:21:39:5f:18:4d:77:01:ae:4e:e2:5f:a2:e9:8d:d6:88:d4: | |
72:6b:d8:d6:22:26:41:a6:58:40:b6:7a:23:68:50:29:2e:e4: | |
3a:5c:d2:af:72:01:14:33:5f:16:89:9c:e3:30:1a:f3:13:b0: | |
72:0e:3c:f5:6c:0d:5f:de:eb:65:13:3e:62:2f:77:fa:50:51: | |
d0:38:7e:a9:69:cb:6f:08:1f:95:ec:c4:a0:aa:b6:c2:17:b7: | |
c9:ae:2d:f9:bc:f3:b0:92:53:42:c0:cd:6d:ff:65:67:40:de: | |
de:f5:9e:d3:b6:f6:2a:de:c8:2d:f0:33:f1:e9:b9:e7:d3:2d: | |
a5:9a:4a:35:c7:5a:52:ad:dc:af:b4:fc:c5:bd:75:61:fc:b8: | |
50:20:f6:07:9e:03:22:bb:6e:a1:4c:02:66:f5:b9:cf:30:01: | |
28:b0:c7:c6:78:ea:f0:09:1b:1b:54:0a:28:71:3e:4f:f6:99: | |
2a:20:2e:58 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"crypto/x509" | |
"encoding/asn1" | |
"encoding/pem" | |
"fmt" | |
"io/ioutil" | |
) | |
var cnType = asn1.ObjectIdentifier{2, 5, 4, 3} | |
func main() { | |
pemBytes, _ := ioutil.ReadFile("ms.pem") | |
pem, _ := pem.Decode(pemBytes) | |
cert, err := x509.ParseCertificate(pem.Bytes) | |
if err != nil { | |
fmt.Println("could not parse cert: %s", err) | |
return | |
} | |
fmt.Println("Common Name:", cert.Subject.CommonName) | |
for _, name := range cert.Subject.Names { | |
if name.Type.Equal(cnType) { | |
fmt.Println(" Extra Common Name:", name.Value) | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-----BEGIN CERTIFICATE----- | |
MIIFIjCCBAqgAwIBAgIKYQLS1gAAAAAAFTANBgkqhkiG9w0BAQUFADCBozELMAkG | |
A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx | |
HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UEAxMiTWljcm9z | |
b2Z0IFByb2R1Y3QgU2VjdXJlIFNlcnZlciBDQTEgMB4GCSqGSIb3DQEJARYRcGtp | |
QG1pY3Jvc29mdC5jb20wHhcNMTAwODEzMjEyMDA1WhcNMTExMTEzMjEyMDA1WjCC | |
AQoxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJXQTEQMA4GA1UEBxMHUmVkbW9uZDES | |
MBAGA1UEChMJTWljcm9zb2Z0MQwwCgYDVQQLEwNNSUgxJzAlBgNVBAMMHioudmFs | |
aWRhdGlvbi5zbHMubWljcm9zb2Z0LmNvbTElMCMGA1UEAxMcdmFsaWRhdGlvbi5z | |
bHMubWljcm9zb2Z0LmNvbTEnMCUGA1UEAwweKi5hY3RpdmF0aW9uLnNscy5taWNy | |
b3NvZnQuY29tMSUwIwYDVQQDExxhY3RpdmF0aW9uLnNscy5taWNyb3NvZnQuY29t | |
MRowGAYDVQQDExFzbHMubWljcm9zb2Z0LmNvbTCBnzANBgkqhkiG9w0BAQEFAAOB | |
jQAwgYkCgYEArOxAMtvH1zyZh3wtmztTWozkQljmo7WHiMdAT1emTpJEAaNtPLdu | |
Qn6lsIs5kIKZCOQoufHppFpEskiYI/pjFKtEhHIodWpHooGlT61mhmheQ2jZYkC9 | |
xmhizs4Je0JcqgywcYJP3OSzYeVzGrEY2PlHUtLIoqRorDrpxc9v6/MCAwEAAaOC | |
AXAwggFsMA4GA1UdDwEB/wQEAwIE8DATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNV | |
HQ4EFgQU+KMi8+XCr1s5CGMCpdZcPM+/870wHwYDVR0jBBgwFoAUnkmTceb67ZeA | |
CIk+PPMpzHFt71wwgaYGA1UdHwSBnjCBmzCBmKCBlaCBkoZHaHR0cDovL2NybC5t | |
aWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUHJvU2VjU2VyQ0FfMjAw | |
Ny0xMi0wNC5jcmyGR2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3By | |
b2R1Y3RzL01pY1Byb1NlY1NlckNBXzIwMDctMTItMDQuY3JsMFwGCCsGAQUFBwEB | |
BFAwTjBMBggrBgEFBQcwAoZAaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9j | |
ZXJ0cy9NaWNQcm9TZWNTZXJDQV8yMDA3LTEyLTA0LmNydDANBgkqhkiG9w0BAQUF | |
AAOCAQEAGiDP5EkEkEXarH2A32jHKFLYPj3lyDBv/b/l+kgSQneoOwcW3uyV87wq | |
80rn8RZ6MMrMBSOfMx03uWmcX+zPhgGEHgSfx5C8xSE5XxhNdwGuTuJfoumN1ojU | |
cmvY1iImQaZYQLZ6I2hQKS7kOlzSr3IBFDNfFomc4zAa8xOwcg489WwNX97rZRM+ | |
Yi93+lBR0Dh+qWnLbwgflezEoKq2whe3ya4t+bzzsJJTQsDNbf9lZ0De3vWe07b2 | |
Kt7ILfAz8em559MtpZpKNcdaUq3cr7T8xb11Yfy4UCD2B54DIrtuoUwCZvW5zzAB | |
KLDHxnjq8AkbG1QKKHE+T/aZKiAuWA== | |
-----END CERTIFICATE----- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment