From 21da9a3651f1547d420374b3d0c06a9f42782c40 Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Thu, 30 Jan 2025 10:57:03 -0800 Subject: [PATCH 1/6] Support for displaying OIDs for unknown algorithms This commit supports displaying the OIDs for unknown signature and public key algorithms. The output also showsthe bytes of the public key. This can be used for example to examine certificates with PQC algorithms. --- certinfo.go | 114 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 107 insertions(+), 7 deletions(-) diff --git a/certinfo.go b/certinfo.go index 40941a6..ad03481 100644 --- a/certinfo.go +++ b/certinfo.go @@ -30,6 +30,7 @@ import ( const ( validityTimeFormat = "Jan 2 15:04:05 2006 MST" sctTimeFormat = "Jan 2 15:04:05.000 2006 MST" + unknown = "Unknown" ) // Extra ASN1 OIDs that we may need to handle @@ -246,6 +247,31 @@ type tbsCertificate struct { Extensions []pkix.Extension `asn1:"optional,explicit,tag:3"` } +// certificate allows unmarshaling a full X.509 certificate. +type certificate struct { + TBSCertificate tbsCertificate + SignatureAlgorithm pkix.AlgorithmIdentifier + SignatureValue asn1.BitString +} + +// tbsCertificateRequest allows unmarshaling the "To-Be-Signed" principle +// portion of the X.509 certificate requests. +type tbsCertificateRequest struct { + Raw asn1.RawContent + Version int + Subject asn1.RawValue + PublicKey publicKeyInfo + RawAttributes []asn1.RawValue `asn1:"tag:0"` +} + +// certificateRequest allows unmarshaling a full X.509 certificate request. +type certificateRequest struct { + Raw asn1.RawContent + TBSCSR tbsCertificateRequest + SignatureAlgorithm pkix.AlgorithmIdentifier + SignatureValue asn1.BitString +} + // certUniqueIDs extracts the subject and issuer unique IDs which are // byte strings. These are not common but may be present in x509v2 certificates // or later under tags 1 and 2 (before x509v3 extensions). @@ -336,7 +362,7 @@ func printVersion(version int, buf *bytes.Buffer) { fmt.Fprintf(buf, "%8sVersion: %d (%#x)\n", "", version, hexVersion) } -func printSubjectInformation(subj *pkix.Name, pkAlgo x509.PublicKeyAlgorithm, pk interface{}, buf *bytes.Buffer) error { +func printSubjectInformation(subj *pkix.Name, pkAlgo x509.PublicKeyAlgorithm, pk, certOrCSR any, buf *bytes.Buffer) error { fmt.Fprintf(buf, "%8sSubject:", "") if len(subj.Names) > 0 { fmt.Fprint(buf, " ") @@ -406,7 +432,7 @@ func printSubjectInformation(subj *pkix.Name, pkAlgo x509.PublicKeyAlgorithm, pk return errors.New("certinfo: Expected ed25519.PublicKey for type x509.ED25519") } default: - return errors.New("certinfo: Unknown public key type") + printUnknownPublicKeyAlgorithm(certOrCSR, buf) } return nil } @@ -575,7 +601,7 @@ func printSubjAltNames(ext pkix.Extension, dnsNames, emailAddresses []string, ip }) } -func printSignature(sigAlgo x509.SignatureAlgorithm, sig []byte, buf *bytes.Buffer) { +func printSignature(sigAlgo string, sig []byte, buf *bytes.Buffer) { fmt.Fprintf(buf, "%4sSignature Algorithm: %s", "", sigAlgo) for i, val := range sig { if (i % 18) == 0 { @@ -589,6 +615,72 @@ func printSignature(sigAlgo x509.SignatureAlgorithm, sig []byte, buf *bytes.Buff fmt.Fprint(buf, "\n") } +func printUnknownSignature(cert *x509.Certificate, buf *bytes.Buffer) { + var crt certificate + if rest, err := asn1.Unmarshal(cert.Raw, &crt); err != nil || len(rest) > 0 { + printSignature(unknown, cert.Signature, buf) + return + } + + printSignature(crt.SignatureAlgorithm.Algorithm.String(), cert.Signature, buf) +} + +func printUnknownSignatureFromRequest(csr *x509.CertificateRequest, buf *bytes.Buffer) { + var cr certificateRequest + if rest, err := asn1.Unmarshal(csr.Raw, &cr); err != nil || len(rest) > 0 { + printSignature(unknown, csr.Signature, buf) + return + } + + printSignature(cr.SignatureAlgorithm.Algorithm.String(), csr.Signature, buf) +} + +func printUnknownPublicKeyAlgorithm(certOrCSR any, buf *bytes.Buffer) { + switch c := certOrCSR.(type) { + case *x509.Certificate: + var crt certificate + if rest, err := asn1.Unmarshal(c.Raw, &crt); err != nil || len(rest) > 0 { + break + } + fmt.Fprintln(buf, crt.TBSCertificate.PublicKey.Algorithm.Algorithm.String()) + fmt.Fprintf(buf, "%16sPublic-Key:\n", "") + fmt.Fprintf(buf, "%16sRaw Bytes:", "") + bs := crt.TBSCertificate.PublicKey.PublicKey.Bytes + for i, val := range bs { + if (i % 15) == 0 { + fmt.Fprintf(buf, "\n%20s", "") + } + fmt.Fprintf(buf, "%02x", val) + if i != len(bs)-1 { + fmt.Fprint(buf, ":") + } + } + fmt.Fprint(buf, "\n") + return + case *x509.CertificateRequest: + var cr certificateRequest + if rest, err := asn1.Unmarshal(c.Raw, &cr); err != nil || len(rest) > 0 { + break + } + fmt.Fprintln(buf, cr.TBSCSR.PublicKey.Algorithm.Algorithm) + fmt.Fprintf(buf, "%16sRaw Bytes:", "") + bs := cr.TBSCSR.PublicKey.PublicKey.Bytes + for i, val := range bs { + if (i % 15) == 0 { + fmt.Fprintf(buf, "\n%20s", "") + } + fmt.Fprintf(buf, "%02x", val) + if i != len(bs)-1 { + fmt.Fprint(buf, ":") + } + } + fmt.Fprint(buf, "\n") + return + } + + fmt.Fprintln(buf, unknown) +} + func toBase64(b []byte) string { return base64.StdEncoding.EncodeToString(b) } @@ -667,7 +759,7 @@ func CertificateText(cert *x509.Certificate) (string, error) { fmt.Fprintf(buf, "%12sNot After : %s\n", "", cert.NotAfter.Format(validityTimeFormat)) // Subject information - err := printSubjectInformation(&cert.Subject, cert.PublicKeyAlgorithm, cert.PublicKey, buf) + err := printSubjectInformation(&cert.Subject, cert.PublicKeyAlgorithm, cert.PublicKey, cert, buf) if err != nil { return "", err } @@ -1199,7 +1291,11 @@ func CertificateText(cert *x509.Certificate) (string, error) { } // Signature - printSignature(cert.SignatureAlgorithm, cert.Signature, buf) + if cert.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { + printSignature(cert.SignatureAlgorithm.String(), cert.Signature, buf) + } else { + printUnknownSignature(cert, buf) + } // Optional: Print the full PEM certificate /* @@ -1296,7 +1392,7 @@ func CertificateRequestText(csr *x509.CertificateRequest) (string, error) { printVersion(csr.Version, buf) // Subject information - err := printSubjectInformation(&csr.Subject, csr.PublicKeyAlgorithm, csr.PublicKey, buf) + err := printSubjectInformation(&csr.Subject, csr.PublicKeyAlgorithm, csr.PublicKey, csr, buf) if err != nil { return "", err } @@ -1525,7 +1621,11 @@ func CertificateRequestText(csr *x509.CertificateRequest) (string, error) { } // Signature - printSignature(csr.SignatureAlgorithm, csr.Signature, buf) + if csr.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { + printSignature(csr.SignatureAlgorithm.String(), csr.Signature, buf) + } else { + printUnknownSignatureFromRequest(csr, buf) + } return buf.String(), nil } From 5cfc828f80fc194863d06d8f76febe97a19760af Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Thu, 30 Jan 2025 11:57:44 -0800 Subject: [PATCH 2/6] Add test certificates --- certinfo_test.go | 16 + test_certs/ML-DSA-44.crt | 86 ++++ test_certs/ML-DSA-44.crt.text | 245 +++++++++++ test_certs/ML-DSA-44.crt.text.short | 5 + test_certs/ML-DSA-44.priv | 4 + test_certs/ML-DSA-44.pub | 30 ++ test_certs/ML-DSA-65.crt | 118 +++++ test_certs/ML-DSA-65.crt.text | 337 +++++++++++++++ test_certs/ML-DSA-65.crt.text.short | 5 + test_certs/ML-DSA-65.priv | 4 + test_certs/ML-DSA-65.pub | 44 ++ test_certs/ML-DSA-87.crt | 158 +++++++ test_certs/ML-DSA-87.crt.text | 453 ++++++++++++++++++++ test_certs/ML-DSA-87.crt.text.short | 5 + test_certs/ML-DSA-87.priv | 4 + test_certs/ML-DSA-87.pub | 57 +++ test_certs/digicert_mldsa-44.csr | 83 ++++ test_certs/digicert_mldsa-44.csr.text | 231 ++++++++++ test_certs/digicert_mldsa-44.csr.text.short | 2 + test_certs/digicert_mldsa-44.key | 56 +++ test_certs/digicert_mldsa-65.csr | 115 +++++ test_certs/digicert_mldsa-65.csr.text | 323 ++++++++++++++ test_certs/digicert_mldsa-65.csr.text.short | 2 + test_certs/digicert_mldsa-65.key | 87 ++++ test_certs/digicert_mldsa-87.csr | 155 +++++++ test_certs/digicert_mldsa-87.csr.text | 439 +++++++++++++++++++ test_certs/digicert_mldsa-87.csr.text.short | 2 + test_certs/digicert_mldsa-87.key | 105 +++++ 28 files changed, 3171 insertions(+) create mode 100644 test_certs/ML-DSA-44.crt create mode 100644 test_certs/ML-DSA-44.crt.text create mode 100644 test_certs/ML-DSA-44.crt.text.short create mode 100644 test_certs/ML-DSA-44.priv create mode 100644 test_certs/ML-DSA-44.pub create mode 100644 test_certs/ML-DSA-65.crt create mode 100644 test_certs/ML-DSA-65.crt.text create mode 100644 test_certs/ML-DSA-65.crt.text.short create mode 100644 test_certs/ML-DSA-65.priv create mode 100644 test_certs/ML-DSA-65.pub create mode 100644 test_certs/ML-DSA-87.crt create mode 100644 test_certs/ML-DSA-87.crt.text create mode 100644 test_certs/ML-DSA-87.crt.text.short create mode 100644 test_certs/ML-DSA-87.priv create mode 100644 test_certs/ML-DSA-87.pub create mode 100644 test_certs/digicert_mldsa-44.csr create mode 100644 test_certs/digicert_mldsa-44.csr.text create mode 100644 test_certs/digicert_mldsa-44.csr.text.short create mode 100644 test_certs/digicert_mldsa-44.key create mode 100644 test_certs/digicert_mldsa-65.csr create mode 100644 test_certs/digicert_mldsa-65.csr.text create mode 100644 test_certs/digicert_mldsa-65.csr.text.short create mode 100644 test_certs/digicert_mldsa-65.key create mode 100644 test_certs/digicert_mldsa-87.csr create mode 100644 test_certs/digicert_mldsa-87.csr.text create mode 100644 test_certs/digicert_mldsa-87.csr.text.short create mode 100644 test_certs/digicert_mldsa-87.key diff --git a/certinfo_test.go b/certinfo_test.go index 7a56810..b876b13 100644 --- a/certinfo_test.go +++ b/certinfo_test.go @@ -169,3 +169,19 @@ func TestSigstoreCertInfo(t *testing.T) { testPair(t, "test_certs/sigstore1.cert.pem", "test_certs/sigstore1.cert.text", tCertificate) testPair(t, "test_certs/sigstore2.cert.pem", "test_certs/sigstore2.cert.text", tCertificate) } + +func TestUnknownCrypto(t *testing.T) { + testPair(t, "test_certs/ML-DSA-44.crt", "test_certs/ML-DSA-44.crt.text", tCertificate) + testPair(t, "test_certs/ML-DSA-65.crt", "test_certs/ML-DSA-65.crt.text", tCertificate) + testPair(t, "test_certs/ML-DSA-87.crt", "test_certs/ML-DSA-87.crt.text", tCertificate) + testPairShort(t, "test_certs/ML-DSA-44.crt", "test_certs/ML-DSA-44.crt.text.short", tCertificate) + testPairShort(t, "test_certs/ML-DSA-65.crt", "test_certs/ML-DSA-65.crt.text.short", tCertificate) + testPairShort(t, "test_certs/ML-DSA-87.crt", "test_certs/ML-DSA-87.crt.text.short", tCertificate) + + testPair(t, "test_certs/digicert_mldsa-44.csr", "test_certs/digicert_mldsa-44.csr.text", tCertificateRequest) + testPair(t, "test_certs/digicert_mldsa-65.csr", "test_certs/digicert_mldsa-65.csr.text", tCertificateRequest) + testPair(t, "test_certs/digicert_mldsa-87.csr", "test_certs/digicert_mldsa-87.csr.text", tCertificateRequest) + testPairShort(t, "test_certs/digicert_mldsa-44.csr", "test_certs/digicert_mldsa-44.csr.text.short", tCertificateRequest) + testPairShort(t, "test_certs/digicert_mldsa-65.csr", "test_certs/digicert_mldsa-65.csr.text.short", tCertificateRequest) + testPairShort(t, "test_certs/digicert_mldsa-87.csr", "test_certs/digicert_mldsa-87.csr.text.short", tCertificateRequest) +} diff --git a/test_certs/ML-DSA-44.crt b/test_certs/ML-DSA-44.crt new file mode 100644 index 0000000..3761fef --- /dev/null +++ b/test_certs/ML-DSA-44.crt @@ -0,0 +1,86 @@ +-----BEGIN CERTIFICATE----- +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 +AAAAABcmOEM= +-----END CERTIFICATE----- diff --git a/test_certs/ML-DSA-44.crt.text b/test_certs/ML-DSA-44.crt.text new file mode 100644 index 0000000..28189a2 --- /dev/null +++ b/test_certs/ML-DSA-44.crt.text @@ -0,0 +1,245 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) + Signature Algorithm: 0 + Issuer: O=IETF,CN=LAMPS WG + Validity + Not Before: Feb 3 04:32:10 2020 UTC + Not After : Jan 29 04:32:10 2040 UTC + Subject: O=IETF,CN=LAMPS WG + Subject Public Key Info: + Public Key Algorithm: 2.16.840.1.101.3.4.3.17 + Public-Key: + Raw Bytes: + d7:b2:b4:72:54:aa:e0:db:45:e7:93:0d:4a:98:d2: + c9:7d:8f:13:97:d1:78:9d:af:a1:70:24:b3:16:e9: + be:c9:4f:c9:94:6d:42:f1:9b:79:a7:41:3b:ba:a3: + 3e:71:49:cb:42:ed:51:15:69:3a:c0:41:fa:cb:98: + 8a:de:b5:fe:0e:1d:86:31:18:49:95:b5:92:c3:97: + d2:29:4e:2e:14:f9:0a:a4:14:ba:38:26:89:9a:c4: + 3f:4c:cc:ac:bc:26:e9:a8:32:b9:51:18:d5:cb:43: + 3c:be:f9:66:0b:00:13:8e:08:17:f6:1e:76:2c:a2: + 74:c3:6a:d5:54:eb:22:aa:c1:16:2e:4a:b0:1a:cb: + a1:e3:8c:4e:fd:8f:80:b6:5b:33:3d:0f:72:e5:5d: + fe:71:ce:9c:1e:bb:98:89:e7:c5:61:06:c0:fd:73: + 80:3a:2a:ec:fe:af:de:d7:aa:3c:b2:ce:da:54:d1: + 2b:d8:cd:36:a7:8c:f9:75:94:3b:47:ab:d2:5e:88: + 0a:c4:52:e5:74:2e:d1:e8:d1:a8:2a:fa:86:e5:90: + c7:58:c1:5a:e4:d2:84:0d:92:bc:a1:a5:09:0f:40: + 49:65:97:fc:a7:d8:b9:51:3f:1a:1b:da:6e:95:0a: + aa:98:de:46:75:07:d4:a4:f5:a4:f0:59:92:16:58: + 2c:35:72:f6:2e:da:89:05:ab:35:81:67:0c:4a:02: + 77:7a:33:e0:ca:72:95:fd:8f:4f:f6:d1:a0:a3:a7: + 68:3d:65:f5:f5:f7:fc:60:da:02:3e:82:6c:5f:92: + 14:4c:02:f7:d1:ba:10:75:98:75:53:ea:93:67:fc: + d7:6d:99:0b:7f:a9:9c:d4:5a:fd:b8:83:6d:43:e4: + 59:f5:18:7d:f0:58:47:97:09:a0:1e:a6:83:59:35: + fa:70:46:09:90:cd:3d:c1:ba:40:1b:a9:4b:ab:1d: + de:41:ac:67:ab:33:19:dc:ac:a0:60:48:d4:c4:ee: + f2:7e:e1:3a:9c:17:d0:53:8f:43:0f:2d:64:2d:c2: + 41:56:60:de:78:87:7d:8d:8a:bc:72:52:39:78:c0: + 42:e4:28:5f:43:19:84:6c:44:12:62:42:97:68:44: + c1:0e:55:6b:a2:15:b5:a7:19:e5:9d:0c:6b:2a:96: + d3:98:59:07:1f:dc:c2:cd:e7:52:4a:7b:ed:ae:54: + e8:5b:31:8e:85:4e:8f:e2:b2:f3:ed:fa:c9:71:91: + 28:27:0a:af:d1:e5:04:4c:3a:4f:da:fd:9f:f3:1f: + 90:78:4b:8e:8e:45:96:14:4a:0d:af:58:65:11:d3: + d9:96:2b:9e:a9:5a:f1:97:b4:e5:fc:60:f2:b1:ed: + 15:de:3a:5b:ef:5f:89:bd:c7:9d:91:05:1d:9b:28: + 16:e7:4f:a5:45:31:ef:dc:1c:be:74:d4:48:85:7f: + 47:6b:cd:58:f2:1c:0b:65:3b:3b:76:a4:e0:76:a6: + 55:9a:30:27:18:55:5c:c6:3f:74:85:9a:ab:ab:92: + 5f:02:38:61:ca:8c:d0:f7:ba:db:28:71:f6:7d:55: + 32:6d:74:51:13:5a:d4:5f:4a:1b:a6:91:18:fb:b2: + c8:a3:0e:ec:93:92:ef:3f:97:70:66:c9:ad:d5:c7: + 10:cc:64:7b:15:14:d2:17:d9:58:c7:01:7c:3e:90: + fd:20:c0:4e:67:4b:90:48:6e:93:70:a3:1a:00:1d: + 32:f4:73:97:9e:49:06:74:9e:7e:47:7f:a0:b7:45: + 08:f8:a5:f2:37:83:12:b8:3c:25:bd:38:8c:a0:b0: + ff:f7:47:8b:af:42:b7:16:67:ed:aa:c9:7c:46:b1: + 29:64:3e:58:6e:5b:05:5a:0c:21:19:46:d4:f3:6e: + 67:5b:ed:58:60:fa:04:2a:31:5d:98:26:16:4d:6a: + 92:37:c3:5a:5f:bf:49:54:90:a5:bd:4d:f2:48:b9: + 5c:4a:ae:77:84:b6:05:67:31:66:ac:42:45:b5:b4: + b0:82:a0:9e:93:23:e6:2f:20:78:c5:b7:67:83:44: + 6d:ef:d7:36:ad:3a:37:02:d4:9b:08:98:44:90:0a: + 61:83:33:97:bc:44:19:b3:0d:7a:97:a0:b3:87:c1: + 91:14:74:c4:d4:1b:53:e3:2a:97:7a:cb:6f:0e:a7: + 5d:b6:5b:b3:9e:59:e7:01:e7:69:57:de:f6:f2:d4: + 45:59:c3:1a:77:12:2b:52:04:e3:b5:c2:19:f1:68: + 8b:14:ed:0b:c0:b8:01:b3:e6:e8:2d:cd:43:e9:c0: + e9:f4:17:44:cd:98:15:bd:1b:c8:82:0d:8b:b1:23: + f0:4f:ac:d1:b1:b6:85:dd:5a:2b:1b:8d:bb:f3:ed: + 93:36:70:f0:95:a1:80:b4:f1:92:d0:8b:10:b8:fa: + bb:df:cc:2b:24:51:8e:32:ee:a0:a5:e0:c9:04:ca: + 84:47:80:08:3f:3b:0c:d2:d0:b8:b6:af:67:bc:35: + 5b:94:94:02:5d:c7:b0:a7:8f:a8:0e:3a:2d:bf:eb: + 51:32:88:51:d6:07:81:98:e9:49:36:51:ae:78:7e: + c0:25:1f:92:2b:a3:0e:9f:51:df:62:a6:d7:27:84: + cf:3d:d2:05:39:31:76:df:a3:24:a5:12:bd:94:97: + 0a:36:dd:34:a5:14:a8:67:91:f0:eb:36:f0:14:5b: + 09:ab:64:65:1b:4a:03:13:b2:99:61:1a:2a:1c:48: + 89:16:27:59:87:68:a3:11:40:60:ba:44:43:48:6d: + f5:15:22:a1:ce:88:b3:09:85:c2:16:f8:e6:ed:17: + 8d:d5:67:b3:04:a0:d4:ca:fb:a8:82:a2:83:42:f1: + 7a:9a:a2:6a:e5:8d:b6:30:08:3d:2c:35:8f:df:56: + 6c:3f:5d:62:a4:28:56:7b:c9:ea:8c:e9:5c:aa:0f: + 35:47:4b:0b:fa:8f:33:9a:25:0a:b4:df:cf:20:83: + be:8e:ef:bc:10:55:e1:8f:e1:53:70:ee:cb:26:05: + 66:d8:3f:f0:6b:21:1a:ae:c4:3c:a2:9b:54:cc:d0: + 0f:88:15:a2:46:5e:f0:b4:65:15:cc:7e:41:f3:12: + 4f:09:ef:ff:73:93:09:ab:58:b2:9a:14:59:a0:0b: + ce:50:38:e9:38:c9:67:8f:72:eb:0e:4e:e5:fd:aa: + e6:6d:9f:85:73:fc:97:fc:42:b4:95:9f:4b:f8:b6: + 1d:78:43:3e:86:b0:33:5d:6e:91:91:c4:d8:bf:48: + 7b:39:05:c1:08:cf:d6:ac:24:b0:ce:b7:dc:b7:cf: + 51:f8:4d:0e:d6:87:b9:5e:ae:b1:c5:33:c0:6f:0d: + 97:02:3d:92:a7:08:25:83:7b:59:ba:6c:b7:d4:e5: + 6b:0a:87:c2:03:86:2a:e8:f3:15:ba:59:25:e8:ed: + ef:a6:79:36:9a:22:02:76:61:51:f1:6a:96:5f:9f: + 81:ec:e7:6c:c0:70:b5:58:69:e4:db:97:84:cf:05: + c8:30:b3:24:2c:83:12 + X509v3 extensions: + X509v3 Key Usage: critical + Digital Signature, Certificate Sign, CRL Sign + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Subject Key Identifier: + 32:9A:07:B1:FA:BB:48:F5:2A:30:9F:11:A1:89:8F:84:8E:23:22:FF + Signature Algorithm: 2.16.840.1.101.3.4.3.17 + 67:a8:95:1f:c3:08:e1:2f:68:67:61:1f:dc:25:4b:f4:bc:b5: + 14:f7:f5:f2:fd:eb:72:fa:8e:1a:03:00:61:67:7b:84:cd:27: + 55:97:d8:31:54:19:59:66:b1:41:67:0c:b0:e8:81:13:46:0d: + 97:8a:1a:7a:38:95:c1:1c:a4:19:95:77:5c:09:d6:4d:de:b4: + 7b:c8:7c:4e:8b:f1:c9:32:7f:c4:af:d5:c3:78:65:53:e1:7d: + 62:9b:0f:27:14:27:65:48:14:32:b5:e7:cc:d0:ba:61:e5:1c: + ad:3d:d8:f9:59:38:c2:35:eb:ec:ee:af:8b:16:ae:33:66:f3: + 00:c5:35:8e:c7:be:9e:b2:3a:1e:a1:a3:da:58:68:67:04:f0: + 48:3f:96:8a:6e:4b:1f:89:67:0a:01:34:b3:6a:18:d6:c7:27: + dc:9b:02:7b:12:79:47:93:a4:8c:7a:b6:6e:df:57:ac:18:11: + 39:14:c0:0d:0a:11:b6:5a:65:2f:47:77:13:37:bf:74:36:66: + fc:a9:5b:cb:d3:91:21:ae:07:50:be:c5:5a:d5:a8:cb:ce:98: + e5:38:ae:52:39:47:d6:92:99:76:33:0f:ca:3f:c9:5c:01:d1: + 40:3b:49:e5:cb:a8:18:12:f4:36:50:dd:01:31:09:34:27:9e: + cd:07:cc:ab:34:c2:ca:30:a7:d3:dd:50:92:e1:63:0e:14:23: + cc:9f:ac:43:a1:b4:db:0e:3d:97:0f:0a:a6:6d:40:4a:e8:7b: + 04:b4:cf:72:ec:fb:67:ea:cb:a4:d8:cd:8e:65:ba:ee:b4:7a: + fa:11:cc:2b:8e:f8:99:22:88:66:7b:8e:de:f5:4a:9e:27:67: + b6:32:e1:49:87:35:b2:8c:6f:60:f0:8b:59:69:e5:e2:6d:d7: + ca:39:6b:9e:5c:c3:e1:2a:1e:73:62:36:02:32:8d:64:a0:8e: + f4:a2:9a:f3:57:11:cc:87:0d:26:37:3b:b1:b9:eb:2e:ff:e1: + 29:73:54:4c:44:a7:e2:cd:f2:03:24:4f:53:b3:7a:6d:52:32: + 37:d8:9f:06:f6:f5:53:4e:d6:31:13:c8:f0:0e:ff:7f:dc:d5: + 09:a2:d8:c7:ce:f2:9b:d3:fb:18:6a:4c:8c:36:2b:3d:44:29: + 39:a2:90:76:ee:32:71:6b:8f:ae:51:00:d8:1a:07:21:5c:db: + 1c:79:bd:df:bd:c1:4f:52:e3:73:18:d1:e5:26:db:84:d1:60: + fb:8d:a1:c0:6d:bc:e1:59:55:cd:c2:d6:fd:78:a2:a5:a5:8d: + f2:39:ce:36:6c:6d:90:b3:2e:8b:d4:7f:c1:fd:13:09:e8:62: + 94:c0:c3:b5:1c:e7:7e:6d:fb:6f:67:22:e6:8f:4c:3f:f2:eb: + 4c:34:69:31:50:6e:74:3b:b0:21:99:8b:80:f4:3f:6e:3d:3c: + 9f:e5:47:77:c0:f6:58:00:e9:47:f9:04:32:90:e1:4b:01:b6: + 3f:8e:26:c3:01:38:09:42:86:6c:74:b4:a9:02:ce:49:1c:0c: + 95:05:44:cf:0c:69:38:ea:cb:32:eb:30:26:6c:e8:2c:4d:0a: + 36:c5:11:ea:8f:f7:c4:09:54:9a:3a:82:64:ca:98:3d:8c:6d: + 5e:03:5f:24:42:43:a7:75:75:8a:ac:99:2b:58:84:4b:71:10: + d3:f8:7c:9b:ba:19:dd:8a:8d:2a:b1:29:4e:05:55:ec:49:95: + a5:48:dc:56:cc:e3:5a:05:dc:48:ac:a7:55:5b:16:41:dd:e3: + d1:97:fc:df:35:d1:2f:09:aa:f3:e6:a7:27:75:cd:18:24:9a: + 21:e7:0e:da:c6:71:0d:b6:a2:1e:1c:05:61:19:2d:d0:11:91: + 33:64:0c:ff:f2:0f:31:87:97:85:16:bf:d6:cb:e6:6c:e1:07: + 1b:12:46:f4:ba:93:7d:f9:01:b3:ed:35:06:9e:eb:df:ff:65: + 45:9f:b9:b7:77:ae:92:98:a7:a4:9a:c2:4f:40:20:79:5d:e5: + de:e8:db:cf:20:a2:41:b6:e8:14:36:8f:4b:8f:a4:2a:f8:be: + 89:2d:9e:1e:38:ae:4b:f5:a4:7c:fd:46:a3:98:e4:b3:18:64: + 71:e2:45:34:fb:13:98:60:b2:5c:63:f2:db:f8:5a:53:d8:64: + 88:c8:3d:ff:09:ae:20:a9:bf:83:14:5f:20:18:7f:0e:82:2b: + d4:75:99:8d:3b:96:70:11:96:4e:ed:8d:b9:77:80:54:ef:cc: + 6c:cb:69:07:4b:ba:99:66:24:b4:74:1c:57:10:36:2d:e9:d4: + f8:de:4b:10:f6:db:1e:9f:80:98:f4:02:45:93:ea:07:38:93: + cb:1f:e7:b9:59:c5:0f:ef:c4:01:b3:ca:cd:ea:8c:2a:17:13: + 5b:a9:df:90:ab:7f:31:de:33:9a:2d:6f:85:6c:71:ed:cf:b0: + 0e:5a:3d:73:20:1f:be:c4:b4:a7:9b:97:28:ad:70:cd:a0:b8: + 98:12:15:74:f6:0d:95:9b:40:8c:10:8a:f1:ab:0a:a4:7d:ff: + 37:26:09:f3:18:6c:06:3c:57:2c:b8:90:89:f2:a2:18:ea:40: + 2c:b0:72:fc:bc:89:5a:6a:38:47:8c:e4:02:d5:08:2c:3e:05: + 72:c2:32:2c:c2:09:96:ca:96:8d:a3:5d:7b:2e:db:c0:62:3b: + e6:16:50:90:12:05:f1:02:71:15:5b:53:9f:81:d0:06:db:8d: + 7b:67:a4:ed:ee:f6:77:e6:da:c9:c7:89:be:55:00:15:74:ee: + ea:87:97:f7:f5:2e:4b:b0:21:b9:8e:20:88:dc:c8:d6:93:4e: + 80:dc:16:5d:1c:71:44:49:b0:bc:fa:f3:25:ab:59:67:b7:30: + 7e:c2:93:7b:34:92:42:5b:f6:3b:8a:bb:d3:ed:97:da:1d:15: + b5:48:3f:a6:4c:f7:1a:49:c4:d3:b4:b7:82:00:d1:f5:09:20: + 6f:2c:10:4b:fe:36:96:e3:c8:00:36:db:00:a5:e1:1d:a0:5a: + 5f:f4:da:0f:fb:99:56:7f:81:39:9e:6c:a9:69:b1:11:b6:c7: + b6:fc:e5:49:e6:b4:d8:9d:45:93:81:ea:91:66:e9:bb:30:72: + 08:9d:b9:4a:e0:d1:af:e5:f2:9f:ce:19:0e:77:ad:ba:64:34: + 94:19:1c:da:ba:3e:ad:92:97:c3:c6:06:33:2b:74:69:7f:19: + c0:9c:4b:e2:a3:41:fd:61:45:12:9a:e8:56:c3:ab:bb:c1:bb: + 8b:05:e0:b7:84:0f:f1:64:41:4a:9d:a4:4e:54:14:6c:d4:c5: + de:0c:4e:4e:cb:25:91:41:2b:4e:7b:dc:45:0d:06:a4:ad:3a: + 0d:14:06:f3:06:e3:81:ec:29:1f:2c:3b:3b:c4:9f:8b:7e:04: + 8c:0c:e2:73:48:30:b4:8a:79:d3:5f:cc:5a:62:a9:45:48:00: + a3:0f:4b:3e:b7:a2:68:ba:b6:4c:12:10:0d:71:21:51:bf:5f: + 12:16:3b:ed:02:9e:8a:bf:1c:a6:e7:b7:b1:28:6a:73:3f:53: + 2d:ae:51:10:91:aa:b0:ff:fc:fd:44:64:ee:56:63:88:8f:98: + 59:b4:4b:a7:65:36:0f:ff:f4:34:f1:2a:f1:fc:6b:cc:db:5a: + 71:94:71:49:dc:76:89:df:f2:4d:6b:a6:b6:3e:6c:c2:31:40: + e3:29:34:b6:e9:da:76:5b:43:32:01:18:b8:a8:11:f8:9c:3d: + 1b:7f:f2:15:30:e7:7a:91:ca:e3:55:7a:c7:c7:84:ff:82:63: + 50:0b:c8:25:60:03:0d:6c:6e:74:ee:e8:17:fc:2c:63:40:27: + 52:e5:9e:f4:39:16:d3:d8:3c:21:68:64:36:e9:03:4d:da:6c: + 97:4f:21:08:b1:74:ea:a1:f7:31:21:c9:ad:d5:00:ce:cd:86: + 18:b3:02:be:da:d7:2b:62:f7:93:bd:0f:70:ba:8c:5e:16:cf: + 4a:be:dd:d5:11:96:81:6d:01:95:17:d1:e2:5f:b6:2c:9f:79: + d9:23:2f:df:1c:ee:c6:04:f8:dd:a5:f7:14:55:41:c5:79:3b: + 9c:5a:e1:58:95:88:a4:9a:6e:61:74:61:4e:a0:12:93:3a:19: + 2b:3b:08:47:25:b4:65:bb:1a:22:cc:b4:b6:0c:f3:ca:14:2f: + 76:83:a8:26:7f:b6:b0:a8:dc:0b:3a:5f:63:ab:60:44:3f:6c: + 7e:e7:0e:9b:5b:06:7a:df:dc:33:96:0f:88:96:1e:8b:6a:8a: + 31:e6:1c:bc:00:96:88:8f:06:34:66:37:ec:ec:e1:96:29:1b: + 95:e3:b8:c5:79:df:27:01:0e:63:1e:ba:36:34:c7:66:a9:33: + d7:f4:e2:08:11:94:6b:b8:7e:97:f7:e7:ba:de:95:7e:4c:52: + d7:26:76:af:91:ac:77:1e:c3:51:f3:64:11:e2:b2:cc:83:27: + 61:10:37:cf:0d:f4:e3:b9:47:a8:7e:f5:e2:b5:79:55:b1:37: + c9:81:10:5a:f7:6d:62:51:cc:14:cd:b3:f4:30:ed:6b:9f:51: + 44:04:ce:7a:69:bb:00:0d:5f:62:c7:e8:76:b5:7f:40:f2:62: + e6:a3:e6:be:91:ed:0a:f7:c8:b5:b7:4b:16:0f:3c:66:1d:73: + 57:99:d5:fb:47:68:51:35:c5:55:1f:69:a0:94:44:f5:f0:12: + 95:f5:39:a8:22:7d:27:1e:48:49:fb:c8:90:6c:f5:7e:67:ea: + 5e:15:0d:f5:f1:3b:0b:41:2f:97:b2:18:40:b8:2e:4d:71:73: + 9d:1b:ec:5e:f9:e5:8b:04:7d:52:df:e0:f3:92:6d:5d:48:a4: + bb:81:76:4e:10:81:30:70:43:6e:8b:fa:a7:5d:bc:90:ff:b6: + ec:b0:60:4a:13:38:20:6f:34:72:5c:68:9f:cb:16:87:ac:b4: + 44:b5:33:d4:c4:da:98:46:19:28:25:c0:3d:9c:c9:a1:68:5b: + cd:d3:67:b3:f4:13:b2:33:4f:f3:09:6e:bc:14:6d:76:46:fa: + c3:85:6b:9b:a1:8e:d8:15:d8:ea:94:14:04:f7:28:0e:ec:a6: + 02:17:c0:17:d4:f1:46:7f:3a:d0:e4:1e:31:c4:ff:35:1b:14: + f5:9f:fc:9d:19:f3:dc:a6:c0:b8:c4:d8:b1:0e:aa:6e:3b:8b: + 4c:3c:1f:17:d0:78:6f:86:14:0d:04:76:db:3f:30:97:30:8d: + 2f:38:30:16:51:92:23:5d:b1:85:fd:de:8d:19:70:8c:66:49: + 27:fd:75:52:9e:29:11:e8:11:4b:f7:3e:2e:2d:8e:52:f4:2b: + f4:9c:62:f1:71:88:74:42:59:63:54:fc:a1:5a:73:0c:97:f7: + 0b:6f:60:a4:04:56:48:30:17:ac:59:f4:96:06:47:9e:a1:72: + 79:b7:82:d6:e0:d6:f2:bf:f0:1a:d6:26:23:61:02:e7:7f:85: + 94:e1:79:00:57:07:fb:72:f3:39:b6:73:7a:ba:b0:ae:8a:f8: + 50:c3:80:f8:1e:5c:40:c5:39:bc:3b:f5:2c:57:16:2f:3b:c9: + 1c:c5:c9:7c:21:cb:e6:75:52:ba:45:c2:31:ac:2b:f8:36:de: + 2a:3a:e4:b1:e1:b4:51:7d:20:a5:46:d0:cb:4b:c7:20:7d:4a: + da:07:83:db:1c:a5:dd:32:7c:8c:26:8a:3b:16:ff:1e:ef:8a: + 7e:4b:ed:38:2b:21:d3:b4:c0:f9:c9:d3:57:55:87:47:be:ec: + bd:47:0c:12:bc:c7:5d:63:85:9b:cf:94:a2:62:17:00:b3:b5: + 12:20:db:a6:ed:fc:80:44:51:2e:40:bc:e1:e3:21:44:14:23: + 29:c7:66:95:c0:45:b2:68:a5:b7:77:1f:22:87:f2:a6:e8:4c: + 46:22:05:8c:89:1e:d3:4c:b6:18:47:50:56:c6:46:03:f2:d7: + d4:72:0b:a8:3e:1d:10:50:c3:40:8d:8b:3e:f0:86:e6:a7:b6: + f0:74:df:5a:ca:73:b2:a2:bd:e0:84:44:4b:39:be:56:67:69: + 22:33:73:91:3c:ab:3c:8d:3a:c8:cb:f1:68:71:9a:8f:05:2d: + 2d:60:91:78:93:86:fe:e5:e1:b3:06:d7:ec:4b:e2:55:8c:aa: + 09:1e:2f:cc:32:c3:55:70:2e:97:1a:3f:3a:c1:da:42:13:17: + f3:16:0e:2d:7a:27:b7:1e:d2:34:20:65:bb:f1:04:07:0c:39: + 42:49:4a:52:57:60:77:98:a0:af:b6:c3:c6:cb:d9:ea:f1:f2: + ff:07:0d:23:36:37:45:47:62:76:7b:83:92:94:a6:d6:12:28: + 2f:3e:3f:49:6d:93:9b:a0:b6:bb:d2:da:e5:eb:ee:ef:10:1f: + 23:2d:6e:97:c2:c4:df:f3:f4:00:00:00:00:00:00:00:00:00: + 00:00:00:00:17:26:38:43 diff --git a/test_certs/ML-DSA-44.crt.text.short b/test_certs/ML-DSA-44.crt.text.short new file mode 100644 index 0000000..62e563d --- /dev/null +++ b/test_certs/ML-DSA-44.crt.text.short @@ -0,0 +1,5 @@ +X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] + Subject: LAMPS WG + Issuer: LAMPS WG + Valid from: 2020-02-03T04:32:10Z + to: 2040-01-29T04:32:10Z diff --git a/test_certs/ML-DSA-44.priv b/test_certs/ML-DSA-44.priv new file mode 100644 index 0000000..1d1e878 --- /dev/null +++ b/test_certs/ML-DSA-44.priv @@ -0,0 +1,4 @@ +-----BEGIN PRIVATE KEY----- +MDICAQAwCwYJYIZIAWUDBAMRBCAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRob +HB0eHw== +-----END PRIVATE KEY----- diff --git a/test_certs/ML-DSA-44.pub b/test_certs/ML-DSA-44.pub new file mode 100644 index 0000000..106f158 --- /dev/null +++ b/test_certs/ML-DSA-44.pub @@ -0,0 +1,30 @@ +-----BEGIN PUBLIC KEY----- +MIIFMjALBglghkgBZQMEAxEDggUhANeytHJUquDbReeTDUqY0sl9jxOX0Xidr6Fw +JLMW6b7JT8mUbULxm3mnQTu6oz5xSctC7VEVaTrAQfrLmIretf4OHYYxGEmVtZLD +l9IpTi4U+QqkFLo4JomaxD9MzKy8JumoMrlRGNXLQzy++WYLABOOCBf2HnYsonTD +atVU6yKqwRYuSrAay6HjjE79j4C2WzM9D3LlXf5xzpweu5iJ58VhBsD9c4A6Kuz+ +r97XqjyyztpU0SvYzTanjPl1lDtHq9JeiArEUuV0LtHo0agq+oblkMdYwVrk0oQN +kryhpQkPQElll/yn2LlRPxob2m6VCqqY3kZ1B9Sk9aTwWZIWWCw1cvYu2okFqzWB +ZwxKAnd6M+DKcpX9j0/20aCjp2g9ZfX19/xg2gI+gmxfkhRMAvfRuhB1mHVT6pNn +/NdtmQt/qZzUWv24g21D5Fn1GH3wWEeXCaAepoNZNfpwRgmQzT3BukAbqUurHd5B +rGerMxncrKBgSNTE7vJ+4TqcF9BTj0MPLWQtwkFWYN54h32NirxyUjl4wELkKF9D +GYRsRBJiQpdoRMEOVWuiFbWnGeWdDGsqltOYWQcf3MLN51JKe+2uVOhbMY6FTo/i +svPt+slxkSgnCq/R5QRMOk/a/Z/zH5B4S46ORZYUSg2vWGUR09mWK56pWvGXtOX8 +YPKx7RXeOlvvX4m9x52RBR2bKBbnT6VFMe/cHL501EiFf0drzVjyHAtlOzt2pOB2 +plWaMCcYVVzGP3SFmqurkl8COGHKjND3utsocfZ9VTJtdFETWtRfShumkRj7ssij +DuyTku8/l3Bmya3VxxDMZHsVFNIX2VjHAXw+kP0gwE5nS5BIbpNwoxoAHTL0c5ee +SQZ0nn5Hf6C3RQj4pfI3gxK4PCW9OIygsP/3R4uvQrcWZ+2qyXxGsSlkPlhuWwVa +DCEZRtTzbmdb7Vhg+gQqMV2YJhZNapI3w1pfv0lUkKW9TfJIuVxKrneEtgVnMWas +QkW1tLCCoJ6TI+YvIHjFt2eDRG3v1zatOjcC1JsImESQCmGDM5e8RBmzDXqXoLOH +wZEUdMTUG1PjKpd6y28Op122W7OeWecB52lX3vby1EVZwxp3EitSBOO1whnxaIsU +7QvAuAGz5ugtzUPpwOn0F0TNmBW9G8iCDYuxI/BPrNGxtoXdWisbjbvz7ZM2cPCV +oYC08ZLQixC4+rvfzCskUY4y7qCl4MkEyoRHgAg/OwzS0Li2r2e8NVuUlAJdx7Cn +j6gOOi2/61EyiFHWB4GY6Uk2Ua54fsAlH5Irow6fUd9iptcnhM890gU5MXbfoySl +Er2Ulwo23TSlFKhnkfDrNvAUWwmrZGUbSgMTsplhGiocSIkWJ1mHaKMRQGC6RENI +bfUVIqHOiLMJhcIW+ObtF43VZ7MEoNTK+6iCooNC8XqaomrljbYwCD0sNY/fVmw/ +XWKkKFZ7yeqM6VyqDzVHSwv6jzOaJQq0388gg76O77wQVeGP4VNw7ssmBWbYP/Br +IRquxDyim1TM0A+IFaJGXvC0ZRXMfkHzEk8J7/9zkwmrWLKaFFmgC85QOOk4yWeP +cusOTuX9quZtn4Vz/Jf8QrSVn0v4th14Qz6GsDNdbpGRxNi/SHs5BcEIz9asJLDO +t9y3z1H4TQ7Wh7lerrHFM8BvDZcCPZKnCCWDe1m6bLfU5WsKh8IDhiro8xW6WSXo +7e+meTaaIgJ2YVHxapZfn4Hs52zAcLVYaeTbl4TPBcgwsyQsgxI= +-----END PUBLIC KEY----- diff --git a/test_certs/ML-DSA-65.crt b/test_certs/ML-DSA-65.crt new file mode 100644 index 0000000..3d893a2 --- /dev/null +++ b/test_certs/ML-DSA-65.crt @@ -0,0 +1,118 @@ +-----BEGIN CERTIFICATE----- +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 +IA== +-----END CERTIFICATE----- diff --git a/test_certs/ML-DSA-65.crt.text b/test_certs/ML-DSA-65.crt.text new file mode 100644 index 0000000..79b3a52 --- /dev/null +++ b/test_certs/ML-DSA-65.crt.text @@ -0,0 +1,337 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) + Signature Algorithm: 0 + Issuer: O=IETF,CN=LAMPS WG + Validity + Not Before: Feb 3 04:32:10 2020 UTC + Not After : Jan 29 04:32:10 2040 UTC + Subject: O=IETF,CN=LAMPS WG + Subject Public Key Info: + Public Key Algorithm: 2.16.840.1.101.3.4.3.18 + Public-Key: + Raw Bytes: + 48:68:3d:91:97:8e:31:eb:3d:dd:b8:b0:47:34:82: + d2:b8:8a:5f:62:59:49:fd:8f:58:a5:61:e6:96:bd: + 4c:27:d0:5b:38:db:b2:ed:f0:1e:66:4e:fd:81:be: + 1e:a8:93:68:8c:e6:8a:a2:d5:1c:59:58:f8:bb:c6: + eb:4e:89:ee:67:d2:c0:32:09:54:d5:72:12:ca:c7: + 22:9f:f1:d6:ea:f0:39:28:bd:51:51:1f:8d:88:d8: + 47:73:6c:7d:e2:73:0d:59:78:e5:41:07:13:16:09: + 78:86:77:11:bf:55:39:a0:bf:c4:c3:50:c2:be:57: + 2b:af:0e:e2:e2:fb:16:cc:fe:a0:80:28:d9:9a:c4: + 9a:eb:b7:59:37:dd:ce:11:1c:da:b6:2f:ff:3c:ea: + 8b:a2:23:3d:1e:56:fb:c5:c5:a1:e7:26:de:63:fa: + dd:2a:f0:16:b1:19:17:7f:a3:d9:71:a2:d9:27:71: + 73:fc:e5:5b:67:74:5a:f0:b7:c2:1d:59:7d:be:b9: + 3e:6a:32:f3:41:c4:9a:5a:8b:e9:e8:25:08:8d:1f: + 2a:a4:51:55:d6:c8:ae:15:36:7e:4e:b0:03:b8:fd: + f7:85:10:71:94:97:39:f9:ff:f0:90:23:ea:f4:51: + 04:d2:a8:4a:45:90:6e:ed:46:71:a4:4d:c2:8d:27: + 98:7b:b5:5d:f6:9e:9e:85:61:f6:1a:80:a7:26:99: + 50:38:65:fe:d9:b7:ee:72:a8:e1:7a:19:c4:08:14: + 4f:4b:29:af:ef:70:31:c3:a6:d8:57:16:10:b4:2c: + 9f:42:12:45:a8:8f:19:7e:16:81:2b:03:11:59:b6: + 5b:96:87:e5:b3:e9:34:c5:22:5a:e9:8a:79:ba:73: + d2:b3:99:d7:35:10:ef:fa:d1:9e:53:b8:45:0f:0b: + a8:fc:e1:01:2f:d9:8d:26:0a:74:aa:aa:13:fa:e2: + 49:a0:06:b1:c3:4f:5b:a0:b8:82:f2:63:78:22:2f: + b3:6f:22:83:c2:43:f0:ff:eb:5f:1b:b4:14:a0:a7: + 0d:55:e3:d4:0a:56:b6:cb:c8:8a:e1:f0:3b:7b:28: + 82:d9:8d:ee:a2:8e:14:5c:9d:ed:fd:8e:af:1c:ef: + 2e:d9:4a:8b:05:0f:89:64:f4:6d:1e:a0:d0:c2:a4: + 3e:0d:da:61:82:ad:bf:4f:6e:d1:75:b6:74:22:57: + 85:9b:f2:2f:3a:41:7e:cf:1f:9d:89:31:7b:5e:53: + 9d:58:7a:f1:6b:9e:13:13:e0:45:14:ff:a6:4b:a8: + b3:ff:2b:83:21:f8:81:1c:b3:fb:02:2c:8f:64:4e: + 70:a4:b8:0a:2f:bf:ee:60:4a:bb:73:79:09:1e:a8: + e6:c5:c7:4d:fc:02:83:66:6b:40:c0:79:38:70:02: + 82:04:a1:36:bf:5d:a9:56:8e:b7:98:d3:49:03:8b: + db:0c:11:e0:34:45:e7:84:7c:b5:06:9c:75:cf:28: + ac:60:1c:77:99:d9:58:21:0d:db:cb:22:6e:51:af: + ef:9f:1d:e4:7b:07:38:73:d6:d3:f9:74:56:be:de: + 08:50:82:e7:4a:29:8b:2c:d4:8f:4b:30:93:15:5f: + 36:6c:8f:a6:01:c6:af:85:8d:fa:32:c0:84:91:b2: + a2:98:87:f9:03:35:94:9a:5d:6e:da:a6:79:88:2a: + 3a:95:d6:bf:6d:97:0a:22:1f:4b:9d:3d:8c:bf:38: + 4a:f8:1a:ac:95:e2:b3:29:4e:04:78:9a:c8:37:27: + a5:dc:04:55:9f:96:af:41:d8:a0:53:51:6f:ee:ee: + bc:52:74:6e:b6:ab:28:19:e0:91:08:71:0d:83:5f: + 01:1f:a6:30:65:87:2a:d3:34:d5:cd:ff:b2:b2:31: + 05:07:e9:2f:c9:93:ae:31:7d:a9:7f:4f:30:9c:da: + f0:f6:7e:d9:9d:90:21:55:76:08:38:49:f9:53:b2: + 46:d7:fe:db:3f:db:67:67:98:50:a5:ad:40:4e:64: + 14:7f:b7:cf:4f:6a:ed:dd:05:af:b4:b8:34:96:8d: + 1f:e8:80:14:96:0d:ce:5d:94:22:36:52:6e:12:a4: + 78:d6:9e:5f:be:69:70:31:0b:30:8c:06:84:50:18: + cf:c7:b2:ab:43:0a:13:a6:b1:ac:7b:b0:2c:cc:bb: + 3d:91:1a:c2:f1:10:68:61:3f:be:02:9b:fd:ce:02: + cf:5c:d3:89:50:ed:72:c8:39:44:ed:fb:c7:56:15: + af:87:f8:64:c0:51:f3:c5:54:56:c5:41:28:63:a4: + 0c:06:d1:da:b5:62:bd:ff:05:71:b8:d3:c3:91:7b: + bd:30:08:80:bb:a5:e9:98:23:9b:95:fa:91:b7:d6: + 41:6d:4f:39:8b:3a:db:cd:30:98:3e:d3:59:2b:4d: + 9e:f7:d4:23:6f:d0:0f:50:d9:8a:a5:3a:23:5a:c4: + 17:27:20:f7:7d:96:17:26:72:98:0c:fe:8f:f7:a5: + a7:02:78:3e:dc:2b:a3:1b:22:59:01:5a:11:2f:c7: + f4:68:a9:c2:f9:46:40:39:00:2d:30:ef:67:8b:4c: + b7:98:bc:11:62:16:bf:7a:9a:7c:18:ba:03:b7:b5: + 8f:d0:75:15:d3:11:50:49:d3:61:4b:e7:a0:7e:74: + 43:00:75:0d:f1:d2:c5:87:53:38:90:59:ea:fc:3d: + 78:5c:cd:d3:1c:07:64:8b:ed:c0:3a:5c:3b:8a:d4: + 6d:06:4d:59:c1:3d:57:37:47:29:fc:4e:29:53:62: + e2:a5:19:12:04:53:04:28:bc:15:22:af:a2:8f:f5: + fe:16:55:e3:04:ca:5b:c8:c2:7a:d0:e0:c6:a3:9d: + d4:df:28:95:6c:14:b3:8c:c9:36:82:ce:fe:40:2b: + bd:5e:82:d2:9c:46:4e:44:eb:5d:37:b4:8f:c5:68: + df:e0:cc:6e:8e:16:ba:ea:05:e5:13:55:90:f1:92: + 94:e7:3e:83:67:b0:21:6d:bb:81:50:30:b9:de:55: + 91:3f:08:03:9c:42:35:1c:59:e5:51:5d:d5:af:8e: + 08:9a:15:e6:25:e8:f6:de:e6:39:38:6c:46:49:7d: + 7a:26:32:88:77:4d:e5:81:a7:de:96:29:b4:1b:44: + 24:14:1f:97:8f:b8:33:12:08:ef:de:c3:c6:e0:de: + 39:bc:57:06:3f:3d:cd:6c:47:03:73:c0:88:91:ea: + 29:cb:c7:cc:6d:64:83:b8:88:90:83:ac:e8:6a:a7: + b5:1b:1c:2c:fe:6e:2a:d1:8d:97:ce:36:fb:c5:6e: + a4:2f:ae:97:e6:a7:ac:11:48:64:47:8c:36:6d:f1: + eb:b1:e7:b1:1a:90:98:50:4f:d5:97:5b:df:1f:49: + dc:70:00:2b:63:c1:73:9a:9d:26:3f:ba:d4:07:3f: + 6a:9f:6c:2b:8a:f4:b4:c3:32:a1:03:a0:cf:fa:5d: + ee:b2:d0:62:ca:3c:21:5f:d3:60:02:6b:e7:c5:16: + 4f:4a:44:24:ef:74:94:88:04:d6:6f:46:48:77:32: + c8:20:2c:79:54:78:64:7b:4e:a7:1d:62:7c:08:60: + 24:cc:a3:54:a4:1f:08:77:b3:8f:19:b3:77:4a:d2: + 09:5c:8d:a5:3b:06:9e:21:c7:6a:e2:d2:00:7e:16: + 71:9e:d4:00:80:d3:34:f7:da:52:e9:f5:a5:99:04: + 39:ca:f0:83:a9:5b:83:3f:02:ad:10:a0:8c:1a:6d: + 0f:26:0c:00:72:85:bd:4a:2f:47:70:3a:5a:ef:46: + 52:87:d2:53:b1:8a:c2:25:14:31:62:10:ff:56:68: + 14:b1:0f:87:a2:93:d6:f1:99:d3:c3:95:99:90:d0: + c1:26:8b:4f:50:d5:f9:fc:ef:bb:f2:37:bd:0c:28: + b8:01:82:d6:65:97:41:f1:4f:10:bf:bb:21:bb:a1: + 2a:b6:20:aa:23:96:f5:6c:06:86:b4:ea:90:17:99: + 02:24:21:6b:2f:e8:ad:76:c4:a9:14:8e:ef:9a:86: + a3:63:5a:6a:a7:7b:c1:dc:fb:6f:ba:59:a7:7d:fd: + a9:b7:53:0d:c0:ca:86:48:c8:d9:73:73:8e:01:ba: + b8:f0:8b:49:05:e8:4a:a4:64:1b:d6:02:41:0c:d9: + 75:20:26:5f:2f:23:1f:2b:35:e1:5e:b2:fa:04:d2: + bd:94:d5:a7:7a:ba:f1:e0:e1:61:01:0a:99:00:87: + f5:b4:6e:a9:88:b2:bc:05:12:fd:a0:fa:92:3d:ad: + d6:c4:5c:53:01:d0:94:83:67:32:65:b5:ab:2e:10: + f4:ba:52:0f:6b:ba:d5:64:a5:c3:d5:e2:7b:db:08: + 0f:7d:20:e1:32:96:a3:18:19:54:c3:9c:64:9c:94: + 3e:be:17:df:5c:1f:7a:ae:0a:8f:e1:26:c4:77:58: + 5a:5d:4d:64:8a:0d:00:8b:6a:f5:e8:cd:31:be:69: + a9:29:6d:4f:3f:d2:5e:d8:6f:22:1e:4b:93:f6:5f: + 59:29:96:75:33:62:4b:92:35:75:0c:30:70:75:50: + b5:85:36:d1:09:a7:13:1c:5a:5b:be:4a:57:15:56: + 7c:12:53:4a:ec:76:60:76:1e:eb:b9:fa:e2:89:1c: + 77:45:89:b8:0e:56:6a:d5:57:dd:ef:73:67:19:6b: + 72:27:ea:98:70:ef:09:dd:fe:c7:9d:6b:93:19:a6: + 87:9b:52:05:d7:6b:f7:ab:a5:ac:f3:3a:fb:59:d1: + 7f:c5:4e:68:38:3d:6b:e5:a0:8e:9b:66:da:53:dc: + de:00:8b:b2:94:b8:58:2b:d1:32:cd:cc:49:95:9f: + db:c2:1e:52:72:18:80:c8:ad:03:52:c7:9f:03:a4: + 3b:bd:84:c4:cd:fd:c6:c5:29:00:5e:1e:7c:d9:a3: + 49:a7:16:8a:35:56:9b:a5:de:a8:18:96:8d:5a:91: + 46:6b:d6:e6:4e:20:bf:62:41:71:98:af:c4:e8:1c: + 28:dd:77:ed:40:28:23:23:98:b5:2f:bd:e8:6b:c8: + 4f:47:5b:90:16:71:0c:e2:aa:bc:11:a0:6b:4d:ba: + c9:01:ec:16:cf:36:5c:a3:f2:d5:38:13:94:8a:69: + 3a:0f:93:e7:9c:46:ca:5d:5a:6d:ca:3d:28:ca:50: + ad:18:bd:13:fc:a5:50:59:dd:9b:18:5f:79:f9:c4: + 71:96:a4:e8:1b:21:04:bc:46:0a:05:1e:02:f2:e8: + 44:4f + X509v3 extensions: + X509v3 Key Usage: critical + Digital Signature, Certificate Sign, CRL Sign + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Subject Key Identifier: + 1B:05:63:E3:CD:33:46:14:9C:8C:9E:BC:F2:3B:0A:4E:5A:90:0E:EA + Signature Algorithm: 2.16.840.1.101.3.4.3.18 + 11:81:68:68:a9:0c:66:93:4b:db:b1:d1:9c:53:a6:a5:dc:30: + 53:5f:f6:dc:c8:66:9b:24:28:4a:e9:31:0e:9a:57:c7:91:87: + 02:b5:fa:49:c6:33:be:47:5d:54:92:d9:d7:ee:a3:91:42:68: + 19:a9:26:9a:b5:94:f4:34:94:2b:4d:fc:bb:a5:a8:3d:cc:d3: + 53:be:7a:f6:ef:dd:66:09:72:1e:8e:e7:39:14:00:b4:47:e5: + 78:3d:34:aa:6c:dd:f1:8d:ad:ff:b0:ca:e0:a3:c8:99:fe:0f: + f6:3b:e6:05:a9:33:6e:52:ee:35:eb:b2:ee:2f:bb:64:cd:aa: + 5c:e4:cb:36:1e:84:9c:7a:ce:ed:c1:ef:44:09:d2:f7:c1:08: + bb:61:8d:d0:5e:a6:34:37:dd:a0:39:6c:08:09:a0:83:03:77: + 75:14:27:0b:43:75:e6:0f:f9:63:9f:ea:a4:6a:dc:26:98:12: + 28:2a:fe:17:c1:6f:9b:18:9b:a3:12:ea:56:3c:20:20:e3:1e: + f7:b4:e5:bd:a2:82:e1:02:12:47:99:19:77:f1:48:5d:30:fe: + d2:20:ca:13:e8:47:1e:8f:bc:8b:b2:b9:52:35:e1:ae:37:b6: + d4:8f:cc:04:ea:00:ba:a8:03:a9:d4:89:f7:20:af:e4:69:58: + c7:8d:40:13:13:26:57:3a:12:73:17:c4:1f:87:d3:0a:bf:65: + f5:66:c7:b8:b1:81:38:0e:9b:c9:08:cd:c1:ef:ac:ee:b2:42: + 46:f2:ac:3e:21:39:7b:18:37:b7:9a:6c:9b:ee:64:8a:45:4c: + fc:b1:7c:6f:24:c0:15:25:ff:c5:6b:a7:98:65:f3:3f:45:d5: + f2:54:dc:9f:1b:39:48:5a:5e:64:eb:1d:4f:a0:33:ca:0d:56: + b9:d4:1d:8b:9f:70:ba:49:92:18:ae:7d:55:af:b9:7b:47:b2: + 6c:af:66:6f:4d:ea:79:0e:08:30:a4:27:05:28:a7:dd:5d:d0: + f7:5e:d9:d0:47:38:a7:1b:d8:bd:65:59:f2:b2:e0:de:37:9e: + df:67:b6:57:6b:e2:cd:0b:89:e2:1b:d5:70:c5:33:e7:89:98: + ca:6f:eb:f9:9b:d6:7a:3b:5b:d9:28:5d:ff:a3:cc:8a:db:79: + 8f:67:30:6b:d0:5b:ea:29:57:65:c0:f0:71:18:c8:9d:a2:68: + 5a:c0:9f:d6:dc:c8:ef:c2:14:2b:32:3d:17:21:27:bb:0e:e8: + 57:d2:14:84:84:c3:a6:a4:0f:78:53:08:ca:92:68:f6:24:e1: + 31:de:a4:a0:62:ef:7f:cf:74:a7:32:55:71:19:2d:71:53:4f: + 5c:0f:bf:e3:da:71:11:38:ae:03:e5:7e:95:9e:fb:a9:4e:b6: + c6:56:f0:01:be:16:ac:cb:13:50:20:f3:b1:e3:e5:6d:71:99: + 33:c2:d1:1f:f8:ee:59:ec:43:e1:d5:58:47:cc:1a:db:75:90: + 2b:96:a9:f0:3d:3a:44:0d:c8:ae:68:80:b9:0a:7f:52:81:60: + 5e:88:7b:90:32:da:fc:3a:70:a6:4e:94:74:a6:03:29:f0:b2: + 48:2a:ce:e3:ce:18:0a:84:51:d6:e8:9a:74:9b:ba:52:c7:fd: + 7b:ad:f1:87:d1:d2:03:47:e6:ad:af:cc:0e:a5:af:b1:f0:e8: + da:42:32:21:f7:48:9d:fe:f5:24:f5:c0:34:b5:29:2f:47:37: + a8:0f:87:ca:b6:56:9b:3a:ec:4c:e0:f0:19:c4:b0:9d:b0:d9: + 0b:75:59:f1:52:5e:53:6d:c0:66:52:2c:b6:55:71:96:e4:e8: + 84:6c:be:0e:44:d7:d7:a0:33:b5:28:ce:67:3a:db:5a:dd:64: + 43:94:e7:a9:f6:e1:7c:96:0c:fd:e8:54:9a:c2:cb:df:e6:ee: + 63:0f:7a:c2:28:e7:e4:9a:d2:86:72:1b:d4:18:7f:c9:a3:a9: + c9:14:6d:2f:3e:cf:5c:45:5f:8b:3e:68:90:77:6e:4f:80:09: + b2:41:4b:61:27:25:48:cc:3e:2d:af:bd:0e:b4:9d:4f:9e:b8: + e2:f1:44:10:62:cc:c9:12:86:25:94:a0:0b:0c:ff:51:a4:ec: + e3:36:59:4d:26:74:d3:ec:ad:65:4d:8a:1e:05:d0:b2:ec:c6: + 10:65:0c:16:bf:ef:e2:a4:f5:7f:57:aa:f3:1a:4c:ff:91:25: + 4d:99:ea:bd:17:87:3f:f4:40:e0:d2:1f:56:9e:7e:6d:80:60: + 28:26:bf:f7:d4:22:3f:12:42:c3:05:c6:7a:db:a1:c6:ab:09: + 57:34:05:b2:4b:30:fa:d0:9b:bd:52:3e:c5:73:64:2a:87:c0: + c1:3e:68:b0:cc:95:31:3a:32:a8:f8:b9:1f:1f:7a:29:53:80: + af:26:72:57:14:80:b4:0b:0a:c8:c0:33:fc:53:d8:1d:d1:19: + 55:12:c7:85:b6:d6:ad:05:60:fc:b8:2f:d3:42:c8:a3:1f:14: + e8:3c:fb:70:a1:98:28:39:bb:a5:d8:2a:77:12:1e:5b:72:a0: + 41:3c:5d:50:e0:10:a8:31:38:dc:b9:86:e0:98:3e:90:e8:d3: + ce:ca:7b:50:06:83:a0:6b:e9:64:e6:0c:6c:27:5c:e2:33:c9: + 03:4c:10:99:5a:39:96:82:08:a5:2a:8a:d7:ee:77:e0:ef:00: + 3d:fe:6f:39:3a:59:3c:2c:8f:b3:8c:50:47:aa:a3:93:41:53: + 13:11:fd:e5:93:25:10:66:55:3f:7b:7f:ee:92:9c:69:5d:f9: + 40:65:89:58:ba:57:f4:b1:39:e4:d6:40:c3:bd:96:32:9d:f6: + 53:1a:af:cb:93:fd:6c:b2:bc:1c:94:09:eb:c7:cc:40:1e:e5: + 88:8b:31:ec:cf:4b:c8:70:ee:5b:b8:5d:18:5e:fb:7b:83:e4: + 9b:17:f3:9e:33:54:a3:ab:ad:a3:a1:d6:dd:2c:64:79:71:74: + d3:be:eb:9e:a1:b4:aa:38:74:ee:4e:6c:66:ea:a7:5b:56:9a: + f5:b0:e5:51:1c:5f:6d:f7:ca:a4:a7:37:4b:e3:fb:fd:25:f6: + 55:1f:4b:b6:0e:62:b0:90:1e:d6:dd:b3:e8:0b:94:bf:19:86: + 90:61:75:c6:5d:fc:72:f0:7e:e4:a1:05:db:e3:c1:14:66:36: + 09:46:e6:52:85:f4:6d:71:a8:0c:4b:af:d6:48:ba:8a:0f:28: + 31:bd:21:60:f7:45:10:d2:b9:77:01:08:97:0f:87:51:50:e0: + 95:59:0e:0c:5c:da:f9:eb:68:2f:62:91:2e:e2:05:d9:eb:70: + 56:cc:01:28:d3:be:81:cd:ba:8e:63:e3:66:aa:71:af:1d:4a: + dc:57:5b:85:97:f6:03:5d:d4:b7:7e:22:d2:c0:d8:66:81:8b: + 51:0a:fa:67:fe:7f:ed:fb:c4:2e:3a:c5:9f:c1:83:f9:16:c5: + 3f:47:60:71:79:4b:0c:59:ef:3b:33:65:92:d2:2b:29:09:77: + 4c:e2:50:87:5e:60:c8:19:e1:8a:3a:bf:4f:12:53:9d:7f:d9: + 94:b3:03:14:16:e1:36:7a:8f:cf:18:24:1b:2e:5f:c6:ab:8a: + a8:82:28:e4:c5:fa:51:da:bd:22:bb:46:3b:1a:37:e3:1c:bc: + 9d:0a:47:a4:59:c3:d8:81:78:ef:67:6a:37:af:95:84:f5:1f: + 16:4f:29:fb:d5:41:55:9f:ca:19:9e:bc:ea:32:a3:76:61:40: + fd:3b:cc:e4:6e:a1:7a:97:3a:27:72:a5:05:a9:63:64:52:fa: + 0e:d6:53:e1:da:17:27:85:cd:90:1b:60:51:0b:33:91:22:6e: + 1d:7a:6a:91:2d:3c:e5:e0:94:32:96:4e:22:cd:75:4e:b0:b3: + 44:f9:ca:61:cd:82:b0:19:2e:da:b7:d3:c4:61:42:44:c2:15: + 1e:ff:c9:89:e5:6d:c3:21:f4:c0:29:7b:46:7c:fd:a3:45:11: + 4d:e3:6e:64:c5:05:16:46:61:7e:ed:7e:a2:4c:1e:06:00:69: + 55:ba:23:6b:b6:ec:8c:7f:6d:cb:0b:0c:df:8a:d6:1c:0a:d5: + 09:87:23:3a:71:68:00:1e:4a:1e:9f:3a:ae:c3:0d:c9:b5:6a: + 11:2e:c4:c6:57:fe:65:7b:48:0f:1a:f0:b4:2f:60:c9:34:29: + 37:ae:7b:11:f0:e8:1f:a1:4a:2a:4b:51:17:8a:6c:c2:18:4b: + 06:12:da:a3:09:2e:42:3e:4c:53:fb:9d:8e:0a:bc:f1:9a:2a: + 22:08:6c:50:c7:31:34:4a:1f:d8:d2:d8:1f:ab:52:25:5a:0e: + a0:8c:65:6e:eb:67:c0:de:10:68:c6:61:36:f4:76:7a:d3:d0: + 8b:66:55:1c:a9:43:28:b7:e8:fc:94:c9:b0:2b:df:d4:72:ed: + 70:dd:40:e2:70:75:73:a1:ab:fa:ab:2f:c2:0c:40:e8:57:80: + 60:15:58:3d:d5:19:57:09:01:a4:07:1e:01:0c:f2:75:44:37: + 1b:6e:0e:5e:b6:4b:bd:73:9f:4d:c4:2a:8f:36:c7:71:7b:30: + 69:d8:7c:36:87:15:28:5b:d5:40:91:c4:80:b6:48:fa:c0:02: + 7f:22:1f:7d:6c:99:39:77:08:3f:b9:1d:d1:01:bf:7c:73:79: + 8f:9d:fd:32:8b:db:3d:77:f7:94:8e:31:03:4d:13:05:a7:27: + 6b:72:63:09:2e:79:17:5c:e0:ed:44:a2:62:29:f6:f9:b6:82: + 36:62:57:a9:c0:9e:a6:9a:73:ce:ef:77:33:a3:1b:1d:ae:d2: + 12:d6:7d:1f:bb:ee:d7:cb:d8:ff:6a:f4:10:1d:db:cc:82:4c: + 08:9e:8b:e3:9c:82:30:46:d2:8a:22:b0:8f:6a:c4:05:d1:14: + c9:20:34:9b:44:b2:87:b4:16:4d:fb:6b:3d:cc:04:f3:a8:f6: + 35:a2:3e:52:9f:18:a9:ff:9f:cf:d8:70:01:e4:7f:9c:f7:d0: + 88:b0:2b:f0:5e:9d:82:c9:3c:57:d6:09:d5:d6:dc:ec:57:38: + 40:a6:3f:32:a6:b7:ef:a2:38:78:e9:01:e3:62:18:95:3c:38: + 1b:e3:84:79:fc:a0:60:71:38:d6:fe:5e:6b:e0:36:ec:ce:91: + 2e:97:b5:c3:e3:b7:96:f3:6d:00:45:15:79:f1:8a:a6:d6:e4: + 5f:6a:3d:f8:20:db:c2:37:f7:b7:10:0c:8e:32:b0:6c:38:eb: + 4f:9e:85:fe:e5:4a:a7:c2:15:48:4a:10:d9:24:a4:f7:14:17: + 67:92:07:29:e2:dd:52:cb:99:dc:39:5a:c7:14:93:71:32:e2: + 49:a2:a2:eb:cb:93:9a:29:55:d7:c9:ae:ec:91:95:bb:99:31: + 3a:93:85:74:59:32:a7:71:89:cc:04:a2:76:59:68:6c:d6:04: + 59:b8:30:51:51:9b:7a:17:27:d3:5a:a7:ed:50:80:83:3a:ba: + a1:d5:48:1c:11:db:ba:cf:ee:98:79:88:ff:77:13:d2:f8:96: + be:fc:c5:45:cf:95:b1:2a:f2:c0:76:bb:fe:65:ba:f4:be:8c: + 8b:b4:d5:18:e4:d5:4f:a1:20:12:cc:2f:ab:8e:98:d4:c7:5f: + c4:54:02:3c:90:6a:cf:9b:39:0d:eb:86:f8:a4:d9:b3:da:c9: + b2:f3:58:48:58:b8:3a:41:6a:23:b2:9f:b6:96:b5:91:dd:e6: + 14:66:66:ba:1b:a3:75:9c:54:19:e7:5a:ff:a9:6e:39:f7:6c: + a9:6e:32:11:2d:9d:72:38:3a:d3:8f:e5:35:40:19:42:8f:d2: + 4d:9e:69:be:4f:46:11:d1:bd:dc:e0:ed:99:f8:0d:97:2d:03: + 7e:f0:fa:9c:70:af:f4:c2:85:70:1a:d9:ec:94:9f:18:6b:c6: + ff:07:bb:d1:6b:17:ca:26:09:1c:b2:5b:cb:38:1e:67:3e:59: + 58:35:e9:55:d0:97:56:c4:d1:62:8a:d4:2b:51:50:a4:1a:88: + d0:81:1d:ae:94:61:17:33:44:41:88:15:8c:24:63:54:4c:02: + 84:30:c1:2b:aa:78:91:b7:c9:a3:d3:ed:ec:d8:48:3a:84:64: + 10:15:af:a8:f7:47:38:0d:b1:fd:0c:32:4f:ea:54:33:ce:03: + a8:3f:0f:df:43:20:1e:83:f6:08:54:15:28:1a:8b:fd:51:be: + 8e:5e:69:5b:3b:07:d5:fb:73:4f:aa:2b:c1:f4:ce:eb:18:18: + 31:5d:e5:fa:fd:6f:ee:d6:f6:3d:19:a3:9e:1b:1a:ee:2e:01: + 6f:bb:be:1e:e9:ab:c8:ea:38:6f:8b:dd:b3:24:b6:1f:1b:ff: + b6:6c:2d:f9:24:60:2b:65:a8:fd:95:7c:e2:fc:ab:05:86:cc: + e1:4b:5f:a9:3d:6a:73:45:81:de:48:a7:9d:9e:e4:ab:d1:78: + d0:87:48:ab:87:a7:bc:eb:ce:4f:d6:c9:5c:d4:f3:56:4b:25: + 81:c2:bf:83:f7:44:7c:52:b5:01:cc:75:aa:a7:ab:1b:4f:11: + 78:17:f4:e4:56:17:66:b0:f2:67:fd:5d:b5:da:ac:7a:e4:1c: + e9:32:87:08:be:b4:5e:dd:2f:15:43:3c:c4:44:24:a9:b5:cb: + f8:ea:7d:26:89:3f:56:8f:d1:eb:38:41:27:45:e4:21:01:85: + ae:e8:8b:1c:b4:d1:e8:ea:1b:1e:73:dc:7a:06:ea:66:88:00: + e1:94:4d:bf:da:4d:0a:4f:47:c3:a6:0b:37:1c:3f:aa:ea:11: + 1c:12:e9:29:7e:4f:39:ca:8b:a9:db:6e:b8:d1:73:20:ce:ff: + d4:e7:33:c1:b5:02:3d:d3:d1:f8:94:f6:1d:a1:5c:94:27:0f: + 7b:ee:47:02:39:1f:c4:e4:44:32:b8:f3:4e:02:32:6c:ca:1f: + fa:67:01:69:7d:52:63:a5:ff:4e:ba:3f:3e:20:d1:71:17:fe: + 38:3c:c0:f2:87:be:73:32:77:a4:1b:4a:e7:79:63:5b:30:3a: + a7:27:a5:ea:e1:86:45:4d:fa:62:6a:4e:44:ae:8e:31:6b:ec: + 43:1d:91:4b:06:d5:22:b4:05:e4:d5:4b:d9:52:6f:a8:ae:ed: + b2:da:da:b3:a1:6b:d9:7f:cc:f2:35:16:9e:d6:88:7a:80:36: + 73:96:c6:07:25:dd:02:47:56:4b:f1:aa:28:c3:22:b4:a1:62: + 54:b6:6d:c9:fc:c5:82:fa:7b:53:cd:c5:f2:42:ab:11:1f:0c: + 91:e6:91:0c:18:0e:2a:91:66:99:2e:30:9d:99:e7:eb:98:3c: + 2b:57:eb:ee:9b:a4:8a:e6:2c:14:19:17:14:7f:62:01:4b:94: + 5e:6d:e6:bb:47:69:d2:f7:0c:28:ce:5b:2b:d3:d2:d3:a1:bd: + 07:da:a1:e3:a8:8e:04:9a:ad:8a:e6:e4:6c:ef:0a:51:34:48: + 5d:4f:3e:c9:ff:aa:c1:58:d2:cf:1f:a6:3a:55:3b:0b:94:f8: + 4d:ea:8b:9f:55:e8:b5:59:07:83:44:62:7f:31:f2:a4:ec:77: + 27:99:f9:9f:9d:ec:b6:e7:b0:f8:ab:bd:21:54:fa:bf:d9:50: + 24:cf:f1:1c:dd:d9:e8:c7:f1:a9:06:a1:47:a9:79:78:2a:51: + 71:dd:aa:2f:3a:8e:f8:28:4d:db:3c:bc:75:20:ec:4d:ce:1a: + 30:47:e2:6c:bd:e1:56:8d:c7:a3:bc:1c:81:21:b5:8e:b3:ab: + 65:f5:f0:89:11:bf:05:21:3b:d7:4b:21:46:6a:60:d0:20:0b: + 99:ff:f0:d4:2b:c5:1a:a2:89:8d:11:c4:9f:54:39:bb:5e:7f: + 96:25:36:c3:4d:a1:79:8b:e2:d5:ef:27:d7:ac:30:d4:cc:15: + 1e:5b:1c:b9:45:5b:97:69:7c:77:76:4c:2c:c0:64:ac:51:3d: + e1:ab:b8:a4:35:e0:a1:66:5d:fb:dc:9b:0d:7c:b5:5e:d8:5c: + d4:e2:b4:fb:41:6f:ee:68:b2:22:48:5f:c1:81:1b:dd:5e:8a: + 9c:4d:ca:dc:4a:fe:aa:15:aa:fb:df:8f:2b:52:7f:80:62:d1: + 70:bf:23:51:38:c5:0e:3a:53:04:ef:19:02:8b:4e:d4:47:c9: + e8:37:bc:6f:a0:5f:9a:da:44:ad:8d:cb:a2:17:0c:98:f4:b1: + c6:04:ef:da:bc:dd:30:1c:b9:65:c7:ea:62:74:0f:4e:04:75: + bf:ee:b7:ed:a7:e7:12:f9:54:37:5e:fe:b5:e5:ce:7b:5b:09: + 84:f0:c5:ae:01:6c:99:98:8f:04:02:88:a5:73:0d:e9:27:5d: + d3:23:c6:c5:74:12:ec:37:3a:49:b7:08:84:29:ed:b8:8f:a3: + bd:74:f3:2e:64:78:99:65:e8:71:29:c7:bb:16:4f:7e:e6:34: + ea:23:e0:01:5d:9b:bf:70:cc:42:50:86:5e:a9:28:ea:38:06: + 97:e3:d5:eb:53:15:00:1c:53:a1:37:c1:ec:95:0f:d4:4e:8b: + b5:ad:48:11:f8:10:58:45:39:f8:1f:81:ad:42:1c:3f:03:1d: + bc:03:76:c6:be:76:12:23:f6:63:91:0a:9e:dd:11:43:e3:b7: + 94:22:e6:68:a6:96:a4:30:60:57:c2:1c:8f:9a:a7:a5:58:b2: + b8:69:cd:6a:f7:80:f8:bc:10:43:51:b1:b4:d4:11:65:9e:cc: + cf:e7:f8:11:f8:52:79:85:99:06:3b:48:66:72:78:7b:83:bc: + 53:73:74:d2:00:00:00:00:00:00:00:00:00:00:00:00:00:00: + 00:00:00:00:00:00:00:00:00:06:0d:0f:13:1c:20 diff --git a/test_certs/ML-DSA-65.crt.text.short b/test_certs/ML-DSA-65.crt.text.short new file mode 100644 index 0000000..62e563d --- /dev/null +++ b/test_certs/ML-DSA-65.crt.text.short @@ -0,0 +1,5 @@ +X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] + Subject: LAMPS WG + Issuer: LAMPS WG + Valid from: 2020-02-03T04:32:10Z + to: 2040-01-29T04:32:10Z diff --git a/test_certs/ML-DSA-65.priv b/test_certs/ML-DSA-65.priv new file mode 100644 index 0000000..a9f7c41 --- /dev/null +++ b/test_certs/ML-DSA-65.priv @@ -0,0 +1,4 @@ +-----BEGIN PRIVATE KEY----- +MDICAQAwCwYJYIZIAWUDBAMSBCAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRob +HB0eHw== +-----END PRIVATE KEY----- diff --git a/test_certs/ML-DSA-65.pub b/test_certs/ML-DSA-65.pub new file mode 100644 index 0000000..3f2512b --- /dev/null +++ b/test_certs/ML-DSA-65.pub @@ -0,0 +1,44 @@ +-----BEGIN PUBLIC KEY----- +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 +HgLy6ERP +-----END PUBLIC KEY----- diff --git a/test_certs/ML-DSA-87.crt b/test_certs/ML-DSA-87.crt new file mode 100644 index 0000000..2add9be --- /dev/null +++ b/test_certs/ML-DSA-87.crt @@ -0,0 +1,158 @@ +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- diff --git a/test_certs/ML-DSA-87.crt.text b/test_certs/ML-DSA-87.crt.text new file mode 100644 index 0000000..bbebd13 --- /dev/null +++ b/test_certs/ML-DSA-87.crt.text @@ -0,0 +1,453 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) + Signature Algorithm: 0 + Issuer: O=IETF,CN=LAMPS WG + Validity + Not Before: Feb 3 04:32:10 2020 UTC + Not After : Jan 29 04:32:10 2040 UTC + Subject: O=IETF,CN=LAMPS WG + Subject Public Key Info: + Public Key Algorithm: 2.16.840.1.101.3.4.3.19 + Public-Key: + Raw Bytes: + 97:92:bc:ec:2f:24:30:68:6a:82:fc:cf:3c:2f:5f: + f6:65:e7:71:d7:ab:41:b9:02:58:cf:a7:e9:0e:c9: + 71:24:a7:3b:32:3b:9b:a2:1a:b6:4d:76:7c:43:3f: + 5a:52:1e:ff:e1:8f:86:e4:6a:18:89:52:c4:46:7e: + 04:8b:72:9e:7f:c4:d1:15:e7:e4:8d:a1:89:6d:5f: + e1:19:b1:0d:cd:de:f6:2c:b3:07:95:40:74:b4:23: + 36:e5:28:36:de:61:da:94:1f:8d:37:ea:68:ac:81: + 06:fa:be:19:07:06:79:af:60:08:53:71:20:f7:07: + 93:b8:ea:9c:c0:e6:e7:b7:b4:c9:a5:c7:42:1c:60: + f2:44:51:ba:1e:93:3d:b1:a2:ee:16:c7:95:59:f2: + 1b:3d:1b:83:05:85:0a:a4:2a:fb:b1:3f:1f:4d:5b: + 9f:48:35:f9:d8:7d:fc:eb:16:2d:0e:f4:a7:fd:c4: + cb:a1:74:3c:d1:c8:7b:b4:96:7d:a1:6c:c8:76:4b: + 65:69:df:8e:e5:bd:cb:ff:e9:a4:e0:57:48:e6:fd: + f2:25:af:9e:4e:eb:77:73:b6:2e:8f:85:f9:b5:6b: + 54:89:45:55:18:44:fb:d8:98:06:a4:ac:36:9b:ed: + 2d:25:61:00:f6:88:a6:ad:5e:0a:70:98:26:dc:44: + 49:e9:1e:23:c5:50:6e:64:23:61:ef:5a:31:37:12: + f7:9b:c4:b3:18:68:61:ca:85:a4:ba:b1:7e:7f:94: + 3d:1b:8a:33:3a:a3:ae:7c:e1:6b:44:0d:60:18:f9: + e0:4d:af:57:25:c7:f1:a9:3f:ad:1a:5a:27:b6:78: + 95:bd:24:9a:a9:16:85:de:20:af:32:c8:b7:e2:68: + c7:f9:68:77:d0:c8:50:01:13:5a:4f:0a:8f:1b:82: + 64:fa:6e:be:5a:34:9d:8a:ec:ad:1a:16:29:9c:cf: + 2f:d9:c7:b8:5b:ac:e2:ce:d3:aa:12:76:ba:61:ee: + 78:ed:7e:5c:a5:b6:7c:dd:45:8a:93:54:03:0e:6a: + bb:ba:bf:56:a0:a2:31:6f:ec:9d:ba:83:b5:1d:42: + fd:31:67:f1:e0:f9:08:55:d5:c6:65:09:b2:10:26: + 5d:c1:e5:4e:c4:4b:43:ba:7c:f9:ae:f1:18:b4:4d: + 80:91:2c:e7:51:66:a6:65:1e:11:6c:eb:e4:92:29: + a7:06:2c:09:93:1f:71:ab:d2:29:3f:76:f7:ef:c3: + 21:5b:a9:78:00:03:7e:58:e4:70:bd:bb:b4:3c:1b: + 04:39:ea:f7:9c:54:d9:3b:44:aa:c9:ef:e9:fb:e1: + 51:87:4c:fb:2a:64:cb:ee:28:cc:4c:0f:e7:77:5e: + 5d:87:0f:1c:02:e5:b2:e3:c5:00:4c:99:5f:24:c9: + b7:79:cb:75:3a:27:7d:0e:71:fd:42:5e:b6:bc:2c: + a5:6c:e1:29:db:51:f7:07:40:f3:1e:63:97:6b:50: + c7:31:2e:97:97:d7:8c:5b:1a:c2:4a:5f:a3:47:cc: + 91:6e:0a:83:f5:c3:b6:75:cd:30:b8:1e:3f:a1:0b: + 93:44:4e:07:39:75:71:cc:e9:8b:28:da:51:db:90: + 56:bc:72:8c:5b:0b:11:81:e2:fb:d3:87:b4:c7:9a: + b1:a5:fe:fe:ce:37:16:7a:f7:72:dd:ad:14:eb:4c: + 39:82:da:5a:59:d0:e9:eb:17:3e:c6:31:50:91:17: + 00:27:a3:ab:5e:f6:aa:12:9c:b8:58:57:27:b9:35: + 8a:28:50:1d:71:3a:72:f3:f1:db:31:71:42:86:f9: + b6:40:80:13:af:06:04:5d:75:59:2f:c0:b7:dd:47: + c7:3e:d9:c7:5b:11:e9:d7:c6:9f:7c:ad:fc:32:80: + a9:06:2c:52:73:c4:3b:e1:c3:4f:87:44:88:64:ce: + a7:b5:c9:7d:6d:32:f5:9b:d5:f2:53:84:65:3b:b5: + c4:fa:a4:5b:ea:8b:89:40:28:43:e6:45:b6:b9:26: + 9e:2b:d9:88:dd:ac:b0:33:32:8f:fb:06:04:50:f7: + df:08:00:53:e6:96:9b:25:1e:87:5e:ce:c3:2c:fc: + 59:28:40:d6:9a:b6:9a:75:e0:6b:37:9c:53:5d:95: + 26:6b:08:2f:4f:09:c9:31:62:b3:3b:0d:9f:73:07: + a4:ea:aa:52:10:44:37:fe:d6:6f:8e:e3:ea:bb:d4: + 5d:67:b2:5a:81:33:f4:96:46:8b:52:ba:ff:db:fa: + d9:3e:ef:1a:98:18:b5:e4:2e:c7:22:78:8a:3d:8d: + 35:29:fc:77:7d:2b:a5:70:80:1d:fa:e0:1e:c8:83: + 02:83:7c:1f:b9:e0:35:57:27:64:5e:e1:04:6c:3f: + 91:5f:6a:e8:2d:ad:4f:b6:b0:35:6a:46:51:8f:fc: + 83:41:55:c3:b4:fe:6d:af:a6:cc:8a:5c:cf:53:c7: + 3a:08:49:d8:d4:4f:7d:cf:72:75:4e:70:e1:b7:df: + b4:47:bb:4e:f4:9d:1a:71:8f:61:71:bb:ce:20:09: + 50:e0:ce:92:61:06:b1:51:a3:e8:71:d5:ce:49:73: + 1b:d6:65:0a:9b:0c:a9:72:da:1c:5f:13:6d:44:82: + 0e:a6:38:3c:08:f3:b3:84:cf:23:38:e7:89:c5:13: + f6:18:cc:56:94:a6:f0:ce:e1:04:51:1e:1e:d7:c5: + f2:3a:1e:bf:d8:a0:db:84:24:55:32:40:15:6d:bf: + 62:28:31:b0:c6:43:d1:c5:51:b6:f3:f7:a9:8d:29: + b8:5c:2d:e0:5a:65:fa:61:5e:ee:16:49:5b:d9:07: + 37:67:21:15:b5:3e:91:c5:d9:00:28:cf:3f:1a:93: + 95:3a:15:3d:e5:3b:44:08:4e:9c:cf:f6:b7:36:69: + 39:26:da:ef:eb:b2:d7:7a:a5:ad:68:9b:92:f3:16: + 86:66:9d:f1:6d:17:15:cc:58:f7:a2:cf:b7:2d:d1: + a5:1e:92:f8:25:99:3a:74:02:2b:e7:e9:eb:60:54: + 65:44:57:09:4d:14:92:8f:20:21:5e:7b:22:2a:c5: + 6b:51:ad:be:c8:d8:bd:b6:98:39:79:a7:e3:a2:1b: + 44:b5:d1:51:8c:a9:7d:0b:51:95:f5:1e:d6:a2:43: + 50:c8:97:47:e1:ed:ea:51:b4:48:e3:e9:14:70:54: + ce:92:78:73:c9:0d:b3:94:d8:68:88:e0:7d:ff:17: + 75:93:d6:f7:9e:15:23:02:20:4a:eb:03:be:23:86: + af:3e:24:07:8b:d0:28:b1:68:9f:5e:14:7c:9f:45: + 2c:8c:eb:02:ec:59:cc:9d:b6:3a:03:57:6c:ee:af: + e9:82:39:02:38:97:da:02:36:63:0a:53:c0:de:7f: + 43:5a:19:86:97:92:fa:b3:6e:7b:9e:63:57:60:f0: + 90:69:e6:43:2e:70:00:35:ac:2a:02:87:9f:ff:0a: + 1e:1b:ec:52:20:47:19:3d:94:eb:5d:f1:ef:d5:3e: + ea:11:44:ca:78:94:08:52:f5:ec:97:27:90:4b:36: + 6e:de:4f:5e:2d:33:1f:ad:5f:c2:82:ea:2c:47:e9: + 23:14:27:71:c3:dd:75:a8:73:57:48:7d:ef:99:e5: + f1:8e:9d:9e:d6:23:c1:75:d0:28:88:c5:1f:82:c0: + 7a:80:d5:47:16:b3:c3:c2:bd:be:2e:9f:0a:9b:ba: + ae:be:b4:d5:29:36:87:64:06:f5:c0:0e:8e:4b:bd: + 0a:5e:c0:57:97:e6:20:7c:5a:b6:c8:8f:1a:68:84: + 21:bd:05:a1:14:f4:d7:de:2a:c2:41:fa:0e:8b:ed: + ff:47:f7:62:dd:cb:ea:a9:10:04:f8:d3:1e:85:09: + 5c:81:05:49:94:ad:38:26:e3:44:ba:96:04:08:10: + fc:0b:2a:d1:de:48:cf:ad:e0:02:c6:2e:5a:49:a0: + 73:1a:b3:83:44:bc:16:36:df:16:bf:60:7d:56:85: + 5e:56:d6:84:00:3c:71:8e:4b:ad:9e:5a:09:99:79: + fc:dd:ee:b1:c4:a7:77:6c:d3:7a:34:17:cb:0e:18: + 4e:29:ef:9b:c0:e8:74:75:ba:66:3b:e0:9e:00:ab: + 56:2e:b7:c0:f7:16:5f:96:9a:9b:42:41:41:98:cc: + f1:bf:f2:a2:c8:d6:89:a4:14:ec:e7:66:29:27:66: + 56:89:e9:4d:b9:61:eb:ae:c5:61:5c:bc:1a:78:95: + c6:85:1a:c9:61:43:2f:f1:11:8d:46:07:d3:2e:f9: + dc:73:2d:51:33:3b:e4:b4:d0:e3:0d:de:a7:84:ec: + a8:be:47:e7:41:be:9c:19:63:1d:c4:70:a5:2e:f4: + dc:13:a4:f3:63:3f:d4:34:d7:87:c1:70:97:7b:41: + 7d:f5:98:e1:d0:dd:e5:06:bb:71:d6:f0:bc:17:ec: + 70:e3:b0:3c:dc:19:65:cb:36:99:3f:63:3b:04:72: + e5:0d:09:23:ac:6c:66:fd:f1:d3:e6:45:9c:c1:21: + f0:f5:f9:4d:09:e9:db:cf:5d:69:0e:23:23:38:38: + a0:ba:cb:7c:63:8d:1b:26:50:a4:30:8c:d1:71:b6: + 85:51:26:d1:da:67:2a:6e:d8:5a:8d:78:c2:86:fb: + 56:f4:ab:3d:21:49:75:28:04:5c:63:26:2c:8a:42: + af:2f:98:02:c5:3b:7b:b8:be:28:e7:8f:e0:b5:ce: + 45:fb:b7:a1:af:1a:3b:28:a8:d9:4b:78:90:e3:c8: + 82:e3:9b:c9:8e:9f:0a:d7:60:25:bf:0d:d2:f0:02: + 98:e7:14:1a:22:6b:3d:7c:ee:41:4f:60:4d:1e:0b: + a5:4d:11:d5:fe:58:bc:ce:a6:ad:77:ad:2e:8c:1c: + aa:cf:32:45:90:14:b7:b9:10:01:b1:ef:a8:ad:17: + 2a:52:3f:b8:e3:65:b5:77:12:1b:f9:fd:88:a2:c6: + 0c:21:e8:21:d7:b6:ac:b4:7a:5a:99:5e:40:ca:ce: + d5:c2:23:b8:fe:6d:e5:e1:8e:9d:2e:58:93:ae:fe: + bb:7a:ae:7f:f1:a1:46:26:0e:2f:11:0e:93:95:28: + 21:3a:00:25:a3:8e:c7:9a:ab:c8:61:b2:5e:bc:50: + 9a:46:74:c1:32:aa:ac:b7:e0:14:6f:14:ef:d1:1c: + fc:af:4c:aa:4f:77:5a:71:6c:e3:25:e0:a4:35:a4: + d3:49:d7:20:bc:f1:37:45:0a:fc:45:04:6f:c1:a1: + f8:3a:9d:32:97:77:a7:08:4e:4a:ad:ae:71:22:ce: + 97:00:59:30:52:8e:b3:c7:f7:f1:12:9b:37:28:87: + a3:71:15:5a:3b:a2:01:a2:5c:bf:1d:cb:64:e7:cd: + ee:09:2c:31:41:fb:55:50:fe:3d:0d:d8:2e:87:0e: + 57:8b:2b:46:50:08:18:11:3b:8f:65:69:77:3c:67: + 73:85:b6:9a:42:b7:7d:cb:a7:ac:ff:d9:5f:d4:45: + 2e:23:aa:a1:d3:7e:1d:a2:15:1e:a6:58:d4:0a:35: + 96:b2:7a:c9:f8:12:9d:c6:cf:06:43:77:26:24:b5: + 9f:4f:46:12:30:df:47:1c:a2:60:87:c3:94:2d:5c: + 66:87:df:60:82:83:59:35:a3:f8:7c:b7:62:b0:c3: + b1:d0:dd:a4:a6:53:39:65:be:f1:b7:b8:29:2e:25: + 4c:01:4d:09:0f:ed:85:7c:44:c1:83:9c:69:4c:0a: + 64:e3:fa:d9:0a:11:f5:34:72:2b:6e:e1:57:4f:2e: + 14:9d:55:d7:44:de:48:87:02:4e:08:51:14:31:c0: + 62:75:0e:16:c7:4a:b9:f3:24:2f:2d:b3:ff:b1:2a: + 8d:61:07:fa:a2:29:d6:f6:37:3b:07:f3:6d:39:32: + b3:bd:b0:4c:19:dd:64:ea:dd:7f:93:c3:c5:64:c3: + 58:a1:c8:1d:cf:1c:9c:31:e5:b0:65:68:f9:75:44: + c1:7d:c1:56:98:c5:cb:38:98:3a:9a:fc:42:78:3f: + aa:77:3a:52:c9:d8:26:06:90:be:9e:31:56:aa:5b: + c1:50:9d:ea:3f:69:58:76:95:cd:6f:f1:72:ba:83: + e6:a6:d8:a7:d6:bb:eb:bb:cd:a3:67:27:31:98:3f: + 89:bc:58:31:dc:37:c3:f3:c5:c5:6f:ac:c6:97:f3: + cb:20:bd:5d:ba:db:d7:02:e5:48:44:ac:2f:62:69: + 01:fe:15:9d:b9:3d:fd:47:73:d8:fe:73:56:2b:84: + 6c:1f:c8:56:d1:80:27:62:84:0e:bc:72:d7:98:8b: + de:75:cb:ca:70:d3:19:d3:2c:e0:cc:02:53:bb:2a: + d4:55:72:3e:e0:c7:f4:73:6c:e6:e6:66:5c:5a:ca: + 32:a4:81:c5:38:39:bc:25:91:67:b0:13:d0:42:33: + 95:ee:b9:aa:ae:e3:20:61:49:a7:d5:50:d6:7f:c5: + fd:fe:4a:8a:5c:35:d2:51:0b:66:43:79:ab:8f:72: + 85:5a:2a:f4:7a:bc:e2:a6:32:04:8e:af:89:e5:cb: + 4a:88:de:bc:53:a5:95:10:3a:cc:e4:f1:cf:f1:8a: + cf:f0:7a:fe:1e:b5:71:6a:a1:e4:0b:63:13:4c:3a: + 3a:e9:57:9f:a8:7f:51:5b:e0:93:c2:d2:9d:b6:d6: + b6:5c:93:66:1e:00:63:6b:59:27:04:d0:93:cc:67: + 16:c2:34:2e:b1:85:3d:48:c8:5c:63:ac:8a:28:54: + 46:2c:7b:77:e7:e3:bd:1e:ac:5b:ca:28:ff:aa:00: + b5:d3:49:f8:a5:47:ad:87:5b:96:a8:c2:b2:91:0c: + 93:01:30:9a:3f:91:38:a5:69:31:11:f5:5b:3c:00: + 9c:a9:47:c3:9d:fc:82:d9:8e:b1:ca:a4:a9:cb:e8: + 85:f7:86:fa:86:e5:5b:e0:62:22:2f:8b:a9:0a:97: + 40:73:32:6b:31:21:2a:ec:e0:a3:4a:60 + X509v3 extensions: + X509v3 Key Usage: critical + Digital Signature, Certificate Sign, CRL Sign + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Subject Key Identifier: + 89:88:67:50:B5:7C:24:DB:3F:C0:12:E6:1E:DE:59:75:33:37:37:4F + Signature Algorithm: 2.16.840.1.101.3.4.3.19 + 08:78:3d:56:5e:fc:7b:97:44:0f:8b:d9:81:8b:46:6b:e5:38: + db:cc:ed:b1:36:44:7d:27:a7:78:dc:9f:7c:7c:f3:2d:14:75: + 5b:30:f1:30:84:98:d9:8b:3a:ce:3e:67:9d:7f:13:58:8f:15: + f8:3d:86:3d:4e:bb:97:bb:81:c3:c9:ab:58:be:db:91:f3:b3: + d2:00:75:6d:93:15:ec:f5:3e:b0:0d:18:1e:04:90:ec:07:0e: + 65:b3:10:c0:a3:a5:be:17:a7:6f:da:4c:66:c7:68:6c:e2:29: + 34:24:5f:77:c1:27:b2:81:78:34:b9:48:12:17:c4:80:c3:a0: + 7b:84:4f:d9:bc:f5:2d:78:db:7a:ef:83:1c:db:3a:8e:c8:e0: + 18:58:ce:9d:5a:30:c9:32:d2:a6:7d:d2:e4:da:f0:35:a6:1d: + 01:b9:b4:47:23:d3:07:1b:38:a5:a9:48:fb:4a:40:37:d6:37: + 4c:5f:66:bf:01:17:b9:6f:f7:db:5a:21:6d:8c:88:e4:fc:01: + 84:aa:72:6a:64:b4:76:dc:30:6a:0e:89:60:d2:f4:bb:e6:56: + 14:18:1a:51:ff:7d:db:c1:4e:47:08:7a:f7:84:83:bb:2f:05: + 61:24:ec:f1:92:2f:b6:84:13:80:a6:c4:7a:d6:58:7f:f3:55: + 0f:9c:61:4d:22:8a:6f:56:d3:5a:ee:7f:19:6b:aa:e2:bc:81: + c4:55:c7:f8:f0:2b:12:25:23:78:99:d5:4f:91:1c:77:09:bb: + 6f:3c:2d:81:5d:48:6e:f3:74:c4:da:20:70:99:dc:1f:cf:f3: + f5:59:e7:c5:2f:5a:c6:0a:44:30:13:41:98:2a:0a:7e:62:80: + 90:8a:94:c8:49:d1:6b:36:f0:98:50:a8:16:6d:38:7a:69:3d: + 5d:a4:58:b6:8f:dd:e2:3e:12:2b:f3:9e:e3:76:b5:eb:05:0d: + d1:fc:af:a2:2a:2b:23:33:75:3d:60:a8:99:2a:bb:62:02:20: + 92:ae:e5:89:f9:b0:78:1c:0a:e2:9f:32:13:99:fa:b0:36:95: + f8:4f:38:29:c2:81:79:07:79:f1:7d:1c:d5:a2:77:9e:6d:05: + 4d:a7:16:64:fc:92:d6:19:0c:30:c9:b7:1f:64:7b:13:45:be: + 9a:c2:d3:fb:c6:f5:ad:1a:ed:1a:b8:21:b4:7f:40:c1:21:6e: + 96:3f:3b:d0:f5:3c:8e:de:ea:f8:23:2b:cb:bf:3d:23:fc:bf: + 02:8c:84:6f:68:4a:bc:33:eb:39:44:e2:06:12:ce:b2:60:78: + a4:bf:76:11:e6:00:40:b7:ad:f2:e3:ea:e6:2f:ef:db:e0:ce: + 0a:30:42:d4:e2:c1:6d:21:cc:21:43:c9:d5:c4:35:fd:52:36: + 5a:06:be:66:a9:7e:00:0b:80:0f:e3:6d:c5:00:ed:78:45:05: + 54:75:64:ba:aa:f1:d4:31:1b:c8:ff:d6:9f:42:d6:a4:42:9e: + d9:e2:3f:3a:02:40:d6:3c:e6:c3:89:2b:00:6b:da:c9:8c:b9: + 5c:e6:40:57:9a:28:ed:1c:b1:ef:30:af:16:1b:3d:ad:97:c4: + bd:a5:88:5b:a9:48:d2:ee:63:0d:c8:90:54:ab:53:44:ad:3e: + a9:0c:48:16:15:f8:7c:14:35:31:99:9e:92:c3:6b:23:4a:df: + 60:88:e6:8f:7c:03:ce:4c:8e:ea:80:a0:13:0b:24:3d:0e:3d: + f5:fd:56:d3:e6:f4:da:b1:23:c9:2d:e6:9f:d2:22:b9:f7:59: + 3f:01:19:1c:fd:84:6f:fb:0d:b9:03:98:11:e8:ca:42:d8:df: + 20:32:69:c3:14:d7:f4:c7:b9:d7:c0:2e:28:d2:9a:91:8c:33: + 6e:26:54:c6:9d:52:f3:cf:d9:0e:12:16:6c:f5:53:6b:06:7f: + 9f:d6:94:12:e9:f2:e6:e1:81:f5:48:7d:c7:7b:e3:48:16:1b: + 3f:1f:dc:1d:20:0c:2d:13:a8:91:c4:3a:db:e4:9e:45:1f:92: + 1a:47:ab:16:52:fd:a2:7c:a5:2c:8c:52:48:e3:38:a2:7d:ec: + de:60:94:09:96:07:0d:06:73:23:50:7d:6f:1f:4b:28:59:11: + 99:7a:b0:2a:65:6c:1f:9f:3b:7c:9f:b0:43:f8:11:88:3f:ef: + 3c:05:fb:5a:17:03:ce:56:77:6e:e6:f2:9b:63:d4:7e:79:f3: + cc:c2:83:7d:54:52:92:c4:2b:42:02:4f:d8:e1:e8:8c:ed:0c: + 0d:21:03:0c:09:bc:1f:a3:bf:78:0c:cc:18:58:6c:5a:b7:d2: + 6a:97:c2:73:48:c1:58:1f:9a:ee:b0:d7:6d:aa:ce:b7:7e:49: + b9:9b:c4:9c:ce:62:aa:df:1b:96:0f:e1:9d:ee:29:49:03:af: + 71:25:4b:5e:d8:43:21:88:4b:72:d9:9d:57:05:51:3d:e3:87: + 17:79:95:b0:3e:bc:0c:ba:ea:24:69:ae:d8:39:9c:3f:0e:a3: + 9b:55:f7:14:86:74:ca:8f:97:12:de:90:11:14:d9:c9:53:d3: + 6b:ee:52:6b:b5:38:60:4f:ab:44:4c:66:90:10:00:98:9b:e4: + 16:2b:4c:f4:07:7b:09:8a:cc:9f:5f:0c:fb:ea:af:59:69:7f: + 99:fd:ae:a2:f0:05:06:04:0e:86:4f:2f:0a:d5:a0:9f:6b:03: + 6e:e5:77:67:f2:25:7f:a9:51:e1:80:d3:f9:5d:7e:86:dd:fe: + b5:44:3a:fc:cd:46:3d:f9:76:b7:38:20:d1:b1:49:f0:df:38: + 6e:9e:36:bd:1f:95:22:15:04:50:6b:6b:73:cf:b4:fb:59:6d: + 81:97:54:7e:99:0a:c8:dd:9b:03:ac:d1:42:87:d6:b1:c0:27: + b6:81:ee:07:89:0c:7d:0f:ab:9f:ea:57:6a:98:41:d9:60:c9: + b7:65:d5:18:61:16:76:4e:c0:41:8d:88:73:53:6c:bb:d0:c3: + b5:08:09:0c:5c:83:f1:25:46:88:6c:4d:25:ae:dd:1d:ab:09: + 9f:46:bd:ab:e1:9b:83:5b:e9:41:d2:9b:57:c1:e0:eb:1d:74: + 1d:25:fe:d2:1e:b8:be:9f:dc:4a:d4:f1:f5:91:e7:a6:b6:8b: + 69:bf:b7:2d:07:31:41:ea:d5:9e:30:e2:48:37:bb:62:55:a5: + f7:57:86:19:12:f7:d1:d7:d2:f5:bd:24:64:14:aa:15:11:80: + ee:d0:13:9a:80:96:00:75:7e:ab:4b:e8:6b:95:68:28:23:dd: + bf:c9:9e:17:75:df:25:45:30:06:88:2e:27:73:f0:3e:4c:76: + 13:d8:17:11:61:20:95:20:a2:63:ae:d7:50:77:5c:e2:8e:af: + e3:f7:71:ec:f0:65:96:cb:1e:f4:bf:1e:b9:71:fa:54:e8:1b: + 17:89:a9:33:ad:0f:0f:66:90:d5:06:af:dd:e0:d7:7a:ae:c9: + 66:de:82:eb:d7:b4:bc:3e:5b:10:20:df:df:d6:b2:8d:24:68: + 4f:fb:4f:2c:73:80:5f:b3:c3:da:66:2a:a7:20:2b:84:66:cc: + 46:ad:f8:1b:bd:c2:70:3b:c8:d3:4d:b9:5f:50:e4:63:d1:4e: + d5:43:2b:c3:af:d6:de:8f:2e:13:a5:fa:01:de:0f:89:1b:cb: + 38:77:c1:90:0c:50:52:bb:1a:ad:e3:61:37:09:83:2a:3d:da: + 73:99:4c:85:e3:ce:6e:d5:4c:cf:31:83:c1:fb:e8:61:62:7e: + 33:47:5e:00:cd:ff:bc:45:6a:9a:39:84:2e:f0:bd:fe:6a:e6: + 56:9f:d4:b3:95:a5:9d:d7:d5:99:18:f5:67:8e:40:ff:da:91: + c5:e4:6e:8f:7e:ed:11:53:7c:76:07:0f:8d:6c:21:73:13:3c: + 3a:98:39:fd:59:98:9a:83:c9:80:f7:48:14:db:7e:bf:56:fe: + 8f:29:1a:97:a9:e8:1c:cc:1f:ca:04:9c:1c:dc:46:ec:fe:05: + 09:7e:fe:32:29:49:5c:c5:ca:ae:2a:06:31:7c:81:62:62:00: + a0:ab:35:68:35:8a:7b:f6:92:88:34:2d:e5:e8:67:f8:01:11: + a7:8e:c8:f1:28:70:29:29:ee:d1:a8:66:9f:66:53:d0:8d:eb: + cb:63:7a:b4:29:3f:36:c7:f9:7b:dd:8a:70:f3:c4:55:8e:24: + df:a2:af:c3:ab:6c:7e:c9:76:37:d0:b6:17:63:51:f4:5f:b0: + 6c:a3:7d:ad:e1:3e:eb:27:15:ec:8f:94:5c:6b:fd:97:76:25: + 86:c3:b1:ac:ba:79:2a:f9:55:e5:93:48:b7:1b:2b:59:4a:60: + 8c:67:b9:f8:92:28:f2:c4:6a:cc:b8:d0:ce:df:e0:90:b9:08: + 77:6f:22:ed:c1:0d:fd:36:64:7b:01:77:6c:9a:50:89:f5:00: + 3f:ad:be:d2:80:ea:dc:4c:b6:dc:a5:81:3f:ff:11:53:b0:c8: + 70:3b:15:88:0d:8a:7b:38:f0:58:cc:1f:c5:bf:5c:45:0e:7d: + e8:b7:21:c7:ad:63:2a:db:eb:b0:2c:58:64:bb:a9:f3:a6:85: + 84:2c:20:68:79:bb:cb:84:d0:0d:cb:7f:e9:bb:f2:06:97:92: + d3:8d:12:ff:71:80:c0:13:40:6d:38:1d:7c:51:fd:06:c9:be: + 30:8c:50:b4:72:bc:49:05:9d:11:6a:92:be:06:90:ef:14:ab: + 43:d1:c2:0c:76:de:df:76:ff:e7:9e:3a:34:6d:89:b8:f3:84: + 3a:87:d8:78:7c:09:d5:9c:59:f4:cd:df:45:c7:ab:19:42:fc: + 73:8c:0f:e9:ce:d0:fc:5b:55:97:e3:28:15:72:88:d3:05:ee: + 13:a0:54:55:8e:91:18:4c:c6:88:22:6e:3a:ba:1d:47:45:92: + 11:fc:6d:de:a1:a2:82:3d:11:fe:21:cf:97:00:3e:b2:61:f1: + 15:f2:7f:d8:63:d7:c1:9b:81:a6:f1:20:b8:46:0b:ee:9a:f2: + 17:6c:5e:ec:af:77:5b:85:58:e6:e0:3a:96:d4:d5:9c:54:b7: + 9a:be:fe:72:23:4b:f2:0c:28:aa:16:c5:54:53:3b:df:04:d8: + 91:38:cc:2d:b4:3f:34:e1:ef:f3:65:28:e3:d3:0f:ac:b2:82: + 3f:be:23:e7:1a:08:35:7f:c7:b0:1d:d1:aa:35:ab:d7:e5:33: + 35:57:e3:3d:03:32:9c:bc:3a:c7:01:2e:0c:69:9d:b2:55:05: + c3:ca:19:8a:4b:27:0d:1b:9e:61:c7:78:2d:4a:ef:ad:06:bf: + fb:dd:30:bc:03:16:3b:ec:99:b4:39:84:02:89:b2:e2:6e:c1: + 06:da:b4:9f:c8:05:4a:f7:4b:8e:11:60:ba:4a:2f:5b:99:2d: + e2:0a:c9:15:3d:65:b0:fd:6d:f5:b8:c5:df:a5:e6:2c:5d:c1: + 74:a9:7d:c9:4e:be:ae:4f:27:f1:01:c2:51:5f:1b:10:02:1f: + ee:c1:82:d5:45:02:19:8e:6c:6c:02:65:49:88:3d:e8:53:14: + e0:1f:2c:67:19:72:4f:d8:7d:ba:13:cb:68:20:c5:46:45:b2: + b8:ad:8c:e2:d1:4e:cf:38:38:53:80:fd:77:ed:1c:f9:87:af: + 0a:b3:9b:0a:b4:80:6d:55:89:0c:c9:9d:9e:15:28:35:1a:33: + ed:d1:a4:38:11:3d:2a:f1:c6:a4:ae:0c:19:a8:7d:2c:d3:81: + 36:cf:32:df:26:8b:4e:2e:71:da:89:7f:e2:fe:1c:3b:cd:be: + 87:b4:d4:d2:cf:91:22:ae:c6:de:a0:1b:6c:6e:ce:4a:45:e5: + d6:3f:a0:e5:be:b9:61:2d:32:89:ed:1d:55:15:ef:f8:3f:51: + 21:66:2a:4e:1e:a6:9c:57:7a:58:f9:a2:d4:d8:6f:4b:d5:ac: + a6:db:61:c4:b2:9f:2f:52:78:e0:db:04:b4:11:0f:26:62:b5: + 36:8f:21:aa:95:7c:82:2f:0a:03:03:ec:9f:56:fe:90:30:f3: + 02:d1:6b:2c:4b:f6:21:ed:91:ab:39:36:45:b8:f9:c7:90:7c: + 40:ec:e5:41:c8:a0:ff:34:ce:fc:b8:13:bf:18:7b:27:0a:f0: + fe:43:46:69:4b:e4:b1:a4:6b:f8:06:df:74:4f:aa:48:8d:9d: + 71:12:e9:c5:41:e2:73:16:b9:bb:e7:ef:0d:15:af:e0:6f:e8: + 21:e4:b5:f1:40:12:4e:e2:15:da:5c:e9:a1:1d:86:5b:f8:30: + 17:cd:fa:b6:b4:01:4e:31:f9:da:29:30:78:dd:f7:c5:12:54: + e2:da:95:f1:9a:50:8d:01:dc:8f:84:6b:16:52:d4:de:57:a7: + 25:1e:63:93:24:0e:d1:43:03:e3:95:fb:18:80:79:34:5e:0f: + b8:53:f8:76:cc:1e:db:42:90:e2:68:4c:c3:53:11:e8:60:2c: + 71:a5:7b:d3:a6:c9:a8:04:59:17:27:be:34:f6:fa:b7:23:f4: + 8a:19:6f:eb:c6:f0:f9:b3:4f:34:4f:d9:70:67:90:a3:e6:3d: + 1a:98:9c:bc:fd:f3:0f:8e:b7:1f:cb:02:46:35:ad:ec:56:8f: + e9:d3:9a:19:4c:8c:d2:fb:bf:6a:13:13:90:dc:31:1e:9c:53: + 81:b5:54:24:66:b3:c6:0a:8e:eb:62:1e:6e:65:3b:8b:52:fd: + 5d:d3:f8:d0:f3:fe:3f:0e:a9:48:b0:c7:86:2d:e2:5e:06:4c: + 29:47:35:9f:a2:5b:d5:8a:35:e5:ce:33:67:76:46:d0:87:41: + 50:b7:25:22:ec:62:41:d1:9d:06:db:03:80:cd:0e:a8:be:77: + 6e:7c:f7:ca:0d:1b:d5:9c:55:84:fe:ce:0d:b8:4d:1a:76:7a: + 16:20:29:d6:82:e4:06:37:d7:c3:78:c8:47:ae:18:5e:2d:6d: + ff:e4:e1:5d:55:ba:fd:0d:35:fc:8d:7f:f5:6f:e5:fa:7c:bc: + 2e:e1:83:37:18:4d:c6:2f:5e:50:de:c5:cd:a9:06:29:d6:c8: + 1a:9f:ed:ab:25:79:01:9c:d4:9d:d7:6b:f9:97:f5:43:bc:23: + 59:41:a7:01:07:92:5f:f0:95:15:3e:c6:10:77:2c:5f:d5:24: + c8:0c:22:8d:80:e7:81:e8:64:e2:95:d2:0c:68:96:f5:02:88: + 7b:18:ed:23:07:e8:ee:ae:a5:6e:26:49:63:93:49:65:2f:50: + 95:28:e4:b8:0e:a4:77:d7:a6:a4:53:80:7b:26:36:1b:1e:ca: + 6f:ce:c4:e0:6c:50:41:66:74:2c:12:f8:a4:4a:35:9f:ef:27: + 27:d3:4f:47:20:1f:75:a7:05:56:29:b2:83:97:e5:75:e4:cc: + 9d:e3:9a:dc:08:f4:24:10:b5:23:2f:8f:2e:7b:86:fd:f3:e1: + eb:be:73:4b:7a:cb:a4:9d:30:8a:61:51:c1:35:2d:e2:e2:0b: + 1f:ed:06:0d:5e:6f:b5:8d:6f:23:b2:84:7d:c5:3b:67:51:9b: + 92:db:a6:04:e4:48:f3:99:05:70:f0:9b:d6:5f:68:55:45:a0: + 24:62:cd:24:c7:2f:2f:79:89:cb:e8:7b:0c:52:da:52:ee:a1: + 77:0a:ae:cf:7d:56:8d:0b:1b:f1:ae:d3:ca:8f:58:f3:32:29: + 9e:39:1b:44:13:b6:c6:fe:ba:11:d4:32:62:17:7a:2a:44:6c: + e5:af:c5:9c:48:28:87:81:cf:91:67:fe:5a:1b:f4:26:29:c6: + d0:94:c6:53:7a:bd:ea:5a:f4:b4:a3:a7:f1:e8:a3:e8:cf:f1: + 02:6d:de:fc:29:ba:e3:9e:75:24:93:64:a9:53:ec:52:23:1b: + b5:81:3a:80:b3:af:25:ef:ca:43:80:0a:74:c4:66:46:32:f6: + dc:18:9c:c2:cd:95:47:8b:59:4f:c5:78:ea:3a:15:84:0e:92: + 82:2b:71:66:c8:61:1d:46:4a:f2:e8:d1:ba:a5:bc:af:1c:16: + 49:58:9a:7e:b1:6b:88:9b:54:e0:b7:ce:d0:ba:25:a5:1e:34: + f4:d0:f1:52:fb:e6:9e:1f:43:68:2d:81:a5:de:05:f8:96:28: + b1:b5:ef:10:03:27:e4:b4:fb:3a:02:38:57:62:b4:ab:1e:72: + 1d:a7:ff:61:73:3c:41:d7:07:1e:81:9e:c4:4c:03:31:14:74: + 33:0e:97:a6:c0:24:8d:1d:d9:94:19:fe:b8:39:80:f2:42:2a: + 9e:7c:90:65:46:9c:41:03:d7:6b:db:7b:85:24:c4:e2:19:14: + 09:5f:e2:5e:ea:17:1d:88:dc:e2:7d:96:f7:64:9a:71:7d:94: + 15:ba:05:13:8b:6a:26:a6:85:fb:76:8f:75:56:48:84:fa:38: + cc:9b:ad:e1:6b:94:db:62:d1:f9:da:3c:e2:94:f3:e9:17:30: + 18:55:67:6a:7e:e7:b3:f7:7b:d0:7c:fb:8b:53:de:30:08:2b: + ba:cd:f3:4f:19:e1:db:5a:af:f7:a3:18:8e:f4:08:c6:a9:c9: + 06:b4:2b:41:19:30:03:d2:73:a5:a6:9b:0c:a5:84:4b:bb:cb: + 8c:78:12:33:0a:a3:f9:3e:15:5b:86:81:f9:ed:fb:a2:dd:bb: + 01:1c:ae:93:3e:72:b3:4d:11:17:d2:6d:66:5b:19:53:22:dc: + a6:34:29:bd:e4:18:3c:02:25:5c:cf:0c:59:58:73:d2:5c:4c: + 73:db:30:7d:31:65:e2:c0:be:0a:60:16:c8:78:5a:4e:83:d5: + 81:ec:3e:b0:f5:9e:d7:a3:83:23:d9:77:2f:df:36:81:8a:ed: + 3b:48:5c:38:20:3f:b1:b0:19:fb:e0:ad:a9:09:95:43:29:1f: + 10:6f:6d:2d:05:78:c5:37:34:d1:01:93:89:45:28:4c:e6:89: + a3:5b:3f:f9:3f:e2:d4:0e:07:e3:13:10:e5:5d:21:c0:9c:bd: + 0d:b4:4a:64:ea:3f:16:ed:2d:dc:24:3e:f5:d6:e5:ce:b4:b0: + a8:1d:c0:56:4a:b2:1e:9d:81:cb:c1:6c:56:83:ba:dd:91:12: + 5d:8b:4d:55:1f:30:91:be:21:15:ea:12:1b:21:43:80:33:78: + 6c:5b:76:bf:c8:c0:e0:72:1d:0f:bd:70:90:54:1d:3b:db:8e: + 99:cb:02:9a:13:5e:2e:d1:f6:c4:90:57:2e:62:5e:bc:e8:3c: + 7f:a0:2d:f2:1d:16:b0:fb:93:db:80:3c:f6:5e:bf:b1:38:0b: + 1b:a5:84:71:7b:6c:b6:5f:e6:23:6a:db:36:13:d4:a2:b0:44: + 32:54:de:c8:3c:96:79:ad:84:e2:60:9c:d4:75:f2:d9:cb:98: + a0:6f:df:dc:c7:3a:88:be:0f:ac:78:c6:a4:2e:35:1b:69:8b: + dc:31:17:25:68:de:ae:c2:09:64:d5:bc:52:96:12:d5:80:ba: + 0a:7b:bc:b4:25:bf:fe:1b:f3:ef:1a:40:eb:75:04:d0:46:ba: + 21:3e:00:a0:71:4d:11:95:0e:94:b0:e2:49:e3:ee:6e:0b:6c: + db:4e:a3:2b:40:24:01:1a:68:e5:11:60:a1:33:b2:5f:99:03: + 42:73:25:59:16:a9:2e:a3:a9:4f:b2:bc:fa:fc:c0:a2:e9:e9: + dc:2f:8c:31:95:dd:0e:e7:c7:04:b8:bc:d5:d8:96:0f:2b:d2: + 16:0f:7f:d3:04:c1:07:d2:7b:3b:09:84:f5:0d:eb:81:3a:46: + 7b:07:3e:63:47:14:9a:1c:f4:b5:33:22:89:d6:35:d5:d2:3c: + 27:30:b3:03:68:a5:ce:3c:ce:ba:61:55:34:7f:0d:f2:1f:61: + 10:44:50:5b:ce:38:06:bd:8e:db:a8:63:24:63:7c:6a:92:10: + 83:0b:63:66:02:a8:35:27:b4:1e:ee:60:f2:d2:df:4c:7c:6a: + 57:1e:e8:51:48:48:a4:7b:eb:0a:72:03:f8:e4:b9:1e:4f:a6: + 7e:a3:02:2f:e9:d9:f9:41:48:84:01:6e:66:fe:48:53:61:67: + e1:2f:0d:c5:50:e8:01:00:4c:11:a8:6c:5b:79:8e:26:ca:9b: + 1f:25:84:16:24:ad:23:27:13:79:08:dd:23:ba:5f:65:ee:b1: + 07:b8:bf:1e:4f:45:21:8e:44:f1:5e:75:da:e8:df:9e:78:be: + df:5e:65:cb:12:27:8f:15:24:d4:59:7c:03:7d:40:aa:12:22: + ad:51:40:46:39:3d:5f:7e:29:75:9e:61:08:7b:f1:f1:d3:90: + 7d:2d:2b:6f:21:bb:8a:1a:70:98:c5:33:a8:97:cb:cb:88:91: + b5:6a:1b:c6:5a:b8:62:5b:ab:66:f3:6e:2a:fc:6e:b0:84:cd: + b2:15:9b:e5:43:7e:5c:43:7a:73:8e:f8:0a:da:9e:b1:d0:8b: + 17:3d:22:a3:a6:e4:ea:e6:b2:9b:32:9a:93:c2:dc:6b:47:99: + 36:06:e7:ec:ff:40:43:18:31:e8:3a:a7:c6:4a:09:e7:eb:29: + 1b:1a:9f:67:1c:14:ff:85:17:25:1b:04:19:b5:17:09:5b:97: + fd:70:10:ac:59:06:3b:e3:65:2d:27:41:42:62:ec:dc:2f:9b: + 91:a8:a4:6f:a5:83:bb:45:88:36:5c:49:42:dd:82:43:26:8f: + c9:f5:fa:33:43:cb:e1:7f:c3:53:9d:24:34:1d:58:2e:0a:46: + 35:39:41:2e:79:35:07:e4:be:48:7e:bf:9c:c7:e2:64:76:bf: + 5e:68:ee:c9:9e:62:80:fe:ea:ec:f0:57:f2:d3:60:00:89:0d: + ab:50:bb:7f:85:9b:20:98:57:d6:78:30:e0:6a:66:b5:35:ca: + 76:3b:ac:97:9b:9e:ed:31:e2:b9:b3:09:5a:b6:4a:b9:61:c5: + 7f:6a:66:60:cb:17:2a:ed:eb:3d:85:bc:9b:f3:b9:fa:8f:c4: + 67:3d:e2:81:3d:13:8e:f8:5e:0d:45:6e:50:1e:59:db:ad:e7: + 5a:dd:36:ac:f1:97:ba:f4:72:f6:35:1f:23:e7:80:21:4d:bc: + 69:47:aa:bb:67:3e:03:3d:61:aa:61:f9:a8:72:85:f8:af:bc: + 5b:f8:79:c9:1b:ea:96:92:fa:93:3f:70:10:11:6f:02:8b:32: + de:39:71:00:35:0f:58:08:e1:76:1a:61:f0:83:61:a2:dc:8c: + 3c:f0:fa:af:11:1c:f4:4f:df:d1:08:8e:42:88:66:be:3a:58: + b5:f6:38:c5:c7:62:fb:27:90:ad:e9:14:be:0c:f6:12:b6:b3: + bd:ec:6b:88:ac:cf:6d:1b:3d:78:c4:10:c0:5a:e5:11:7c:a1: + 02:5d:32:cc:03:a0:16:f3:30:23:60:18:d6:57:9c:d0:b9:93: + 0b:31:7a:2e:ca:a2:b4:14:91:b8:26:a7:d2:59:22:6f:f8:3b: + c3:bc:67:66:0a:4c:5c:06:20:f3:3b:ac:03:19:6a:45:17:ae: + 45:f3:3e:f0:1c:a5:3b:54:cc:c9:6b:72:d6:8e:57:ce:94:89: + fb:7d:ea:6f:b8:dc:88:f8:f2:bd:53:2b:d7:d1:a9:bb:47:6f: + 5b:c4:dc:82:4c:d2:47:42:e5:49:bf:dd:d6:ae:89:09:5f:b2: + 07:39:a6:57:c9:8e:d3:e1:b3:23:cb:0d:32:32:c5:8e:6a:7c: + c3:ca:1d:32:ec:e1:a1:0e:05:e2:25:2e:36:cb:65:d4:d1:41: + ff:24:61:84:65:b6:65:12:97:cd:34:d3:8f:61:c6:2f:31:fb: + 8e:97:0c:30:65:32:25:ee:d4:ad:93:a9:34:02:d6:7b:ee:d1: + e6:c3:68:ae:e7:bd:f4:ca:85:e5:4e:b2:b1:7b:bd:a5:01:d0: + d0:96:f5:cb:4e:47:57:5f:0f:a8:c6:0f:8e:d3:bf:27:66:de: + 63:74:34:20:14:c5:d8:c7:2a:9a:9d:98:1c:e6:c7:06:9f:75: + f8:43:fb:97:81:9d:10:4a:58:4f:12:b1:a3:b4:80:b9:fd:77: + 40:52:b6:98:25:93:68:ea:5b:b7:af:67:58:09:42:1f:a3:ac: + 6e:9f:ee:be:42:7a:13:ec:e5:e9:6f:e8:5c:d3:82:b2:e1:06: + 07:ab:91:18:77:ad:07:e7:4a:20:06:21:d3:cc:2d:90:2d:ca: + 83:6e:92:b8:ae:75:4b:48:3a:8a:91:b8:0a:0b:0c:11:3c:48: + b0:f1:25:3c:59:9b:b9:cf:01:bd:ca:05:11:2c:63:78:a1:b2: + de:49:05:3c:50:7c:82:b5:e1:1b:6e:91:ab:b2:d5:e9:00:00: + 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00: + 00:00:00:00:00:00:00:00:00:00:00:04:0c:12:15:1d:1e:25: + 2c diff --git a/test_certs/ML-DSA-87.crt.text.short b/test_certs/ML-DSA-87.crt.text.short new file mode 100644 index 0000000..62e563d --- /dev/null +++ b/test_certs/ML-DSA-87.crt.text.short @@ -0,0 +1,5 @@ +X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] + Subject: LAMPS WG + Issuer: LAMPS WG + Valid from: 2020-02-03T04:32:10Z + to: 2040-01-29T04:32:10Z diff --git a/test_certs/ML-DSA-87.priv b/test_certs/ML-DSA-87.priv new file mode 100644 index 0000000..6a54733 --- /dev/null +++ b/test_certs/ML-DSA-87.priv @@ -0,0 +1,4 @@ +-----BEGIN PRIVATE KEY----- +MDICAQAwCwYJYIZIAWUDBAMTBCAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRob +HB0eHw== +-----END PRIVATE KEY----- diff --git a/test_certs/ML-DSA-87.pub b/test_certs/ML-DSA-87.pub new file mode 100644 index 0000000..b627e0d --- /dev/null +++ b/test_certs/ML-DSA-87.pub @@ -0,0 +1,57 @@ +-----BEGIN PUBLIC KEY----- +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 +5VvgYiIvi6kKl0BzMmsxISrs4KNKYA== +-----END PUBLIC KEY----- diff --git a/test_certs/digicert_mldsa-44.csr b/test_certs/digicert_mldsa-44.csr new file mode 100644 index 0000000..db5a136 --- /dev/null +++ b/test_certs/digicert_mldsa-44.csr @@ -0,0 +1,83 @@ +-----BEGIN CERTIFICATE REQUEST----- +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 +AAAAAAAAAAAAAAAKGjND +-----END CERTIFICATE REQUEST----- diff --git a/test_certs/digicert_mldsa-44.csr.text b/test_certs/digicert_mldsa-44.csr.text new file mode 100644 index 0000000..0cdc2fe --- /dev/null +++ b/test_certs/digicert_mldsa-44.csr.text @@ -0,0 +1,231 @@ +Certificate Request: + Data: + Version: 0 (0x0) + Subject: CN=MLDSA44 Example,O=DigiCert, Inc.,C=US + Subject Public Key Info: + Public Key Algorithm: 1.3.6.1.4.1.2.267.12.4.4 + Raw Bytes: + bb:09:ef:3c:b5:83:35:ab:af:15:42:ce:0b:0e:98: + cf:1e:a6:04:6f:8d:2a:be:b2:2f:8f:b0:e0:47:f4: + fd:bf:3a:87:b8:96:08:47:57:74:73:d5:19:d8:f9: + f9:b3:89:d4:65:41:07:a9:13:bc:b3:8f:55:1a:b6: + 1a:15:4e:0c:cc:c1:31:39:d4:a1:5c:91:06:5b:26: + 99:6d:08:06:1c:76:74:f2:68:30:9e:06:98:c4:c0: + 52:b1:56:6a:d6:66:19:83:5f:36:74:cd:33:e2:c0: + 46:73:2b:22:aa:1d:b0:91:b6:22:34:87:39:c9:eb: + 2f:37:44:e8:9d:9e:6c:9c:b8:9c:50:02:b6:61:c7: + 22:c2:de:8e:0a:75:99:b6:78:04:61:7d:91:9c:d0: + 46:12:34:d1:a9:c4:5e:35:62:ac:98:66:af:27:24: + bb:79:1f:64:61:46:f9:42:d9:e5:d8:9d:72:ab:13: + f0:64:ce:ab:5c:66:12:5e:da:7a:9c:e9:53:6f:2f: + 4a:fb:35:2a:d0:23:30:dd:c2:02:83:bf:48:47:fe: + a3:eb:5d:a3:a1:5b:9d:f5:1a:e1:25:76:f5:26:ec: + 21:df:5c:7c:2c:4e:65:79:b9:54:9d:20:8a:4e:4c: + b1:76:c6:63:e4:5a:87:c3:0d:9d:72:cf:32:a9:fd: + 9b:00:1a:c9:99:ce:31:08:09:df:fe:73:a2:25:6e: + 53:93:b8:23:31:93:3d:c7:60:12:0a:77:f3:28:a0: + d5:62:15:30:b2:ca:9e:33:9e:a8:4f:60:52:b1:08: + bc:a9:46:1a:87:1e:60:52:56:c9:ab:8d:33:8e:ba: + 00:80:20:61:ff:44:e3:9f:10:4e:57:7d:38:fa:34: + cf:ca:fe:00:a0:58:b9:98:79:40:23:4e:11:de:72: + ad:09:e1:48:f0:64:21:da:e7:88:91:2b:a5:28:5d: + 38:4f:23:3e:1e:e1:d1:12:d3:7d:b8:e4:69:95:f3: + 50:00:d3:80:10:70:ae:49:0c:87:21:be:61:19:67: + bd:80:ee:0b:47:06:97:ec:d1:af:09:63:91:e9:9c: + e2:24:38:db:2f:a7:a2:b1:b1:55:af:85:93:a1:32: + e6:11:86:a8:9a:18:39:cd:8f:c8:66:b6:a0:23:5c: + da:0e:b5:c9:bd:3e:61:54:d2:0e:ca:f1:06:5a:ab: + 9b:39:29:97:88:fe:dc:fb:4b:16:bc:2e:9a:8d:6c: + 55:8e:d1:c9:bd:f7:38:36:ee:01:61:3e:a4:0f:a6: + 7a:d1:ab:72:c0:70:99:a3:e3:e7:b4:02:e2:cb:7b: + 92:69:20:89:9a:58:0b:c5:1c:74:55:5f:fd:ca:4c: + c6:c4:fb:12:de:d7:12:ef:93:b6:c7:f4:32:68:20: + b4:3b:b0:82:dc:c1:a4:4d:2b:92:ac:86:d8:60:06: + a0:87:5e:e2:63:1c:b2:8d:00:34:b3:ed:a0:b1:9a: + d1:4b:b2:5f:59:ab:aa:54:14:92:d3:f0:d5:0a:a0: + 49:23:94:a6:d1:f0:ae:02:f5:cf:07:1a:c7:87:ab: + ee:c5:bb:a1:fe:c2:2a:54:79:85:6f:0a:42:d4:ee: + c4:c1:1a:6d:ba:23:ab:7d:ba:21:c4:d6:e8:54:10: + 05:a4:99:5a:7a:6d:e4:0d:cd:e7:cd:d8:09:6c:9c: + 8b:8a:16:06:c3:e0:06:d3:4d:75:31:a3:63:26:98: + 17:2e:fa:26:fd:ab:ae:01:b8:0c:67:38:08:05:5d: + 74:e8:e9:a5:20:1c:66:8a:86:2b:41:58:58:dc:5c: + d8:ae:3f:4b:b3:7e:e3:39:64:5e:20:61:0a:65:2b: + 69:96:5f:b1:55:e1:e9:61:2f:b6:b7:88:46:7e:ab: + ad:b4:91:f7:7d:34:ef:89:17:53:f7:94:2f:67:b3: + 4a:b1:24:9a:3e:5a:ff:5d:86:77:d0:9c:d5:d8:e3: + d7:50:1b:b2:2f:e5:e6:e2:92:cd:c0:2d:38:fc:a3: + 29:bd:b8:e5:30:9f:46:81:34:b6:00:56:e2:6e:71: + 53:20:e6:e8:0f:ed:ad:08:6a:81:57:5e:e0:11:c2: + 5e:f2:25:b5:31:b3:5d:80:60:98:92:b6:08:d6:5b: + 47:2a:33:4e:a9:55:fc:b3:01:27:fc:29:5c:0e:00: + 05:d9:7c:3e:ee:9b:f6:aa:1a:92:37:6e:f2:bf:3d: + 7a:bb:95:d4:f8:ac:53:04:b6:15:76:fc:6e:41:7b: + 88:5e:07:03:8e:89:34:c9:85:82:ed:ce:48:41:96: + dc:65:55:9b:c8:0a:cf:b8:3b:2e:8c:8d:fc:03:ea: + f7:4e:1b:76:b0:ab:fd:c4:50:4e:98:4c:4a:51:ab: + ab:57:0a:05:14:91:87:0d:f0:1f:61:9f:26:7f:1a: + 22:c4:b2:f4:b9:cb:a9:e2:9d:ac:6b:4a:80:4b:bc: + 4d:41:68:e7:0a:81:34:73:78:61:de:d7:a9:56:48: + 64:fd:cd:d9:77:e1:6d:d0:4e:ec:c4:6b:e0:9a:7b: + e3:d4:68:b9:c5:b7:c8:88:f2:cb:b8:90:27:bc:da: + b4:c3:fd:7f:18:39:46:9f:47:18:11:c2:4d:c6:74: + cb:fa:5f:ff:7f:2f:e1:04:97:4e:16:87:49:83:98: + 29:5e:f7:b1:0e:9d:da:ff:f9:bc:8f:1c:18:c6:40: + b8:ed:78:85:65:26:34:c7:aa:f5:3f:ee:55:ef:ca: + 9a:3c:e8:f3:0b:2e:0d:fe:15:22:9a:2a:02:a2:3b: + 86:73:ee:d0:3f:6a:df:61:87:0a:a2:92:4e:fd:20: + fc:dc:d3:b4:98:34:d8:21:93:99:a2:78:3e:9c:a4: + 47:26:c7:1d:45:ac:8d:10:cb:49:a9:59:3a:12:d0: + 33:fe:66:1b:63:7c:da:0b:6e:30:5a:9a:1c:72:fc: + 58:bf:9b:6c:ae:f5:cb:44:70:f9:2f:bf:78:6c:c7: + 9b:d8:e5:57:60:73:73:57:38:e3:da:00:2a:0f:6b: + 25:bb:32:df:41:fa:3a:29:6c:b2:1f:6e:6c:23:d2: + 30:05:4d:66:f1:27:a0:8c:d4:2a:c7:18:c3:25:f9: + 39:56:db:d1:15:97:53:ce:8c:0c:87:1c:fe:26:7a: + 40:af:dd:a2:3f:10:a0:db:06:20:72:0f:50:28:26: + 88:37:6c:60:57:da:1f:ee:8e:3b:51:5b:be:cc:9e: + 6b:58:a4:4d:eb:8a:45:c5:9a:54:be:0b:ab:ac:d4: + 3b:00:e4:be:f6:f0:c3:e5:5c:e0:f1:6d:65:2b:d6: + 7d:d7:7d:a6:ca:0c:78:3d:cf:65:33:6f:93:e7:8f: + ab:4e:eb:71:83:50:b3:c2:3f:cf:30:ee:8d:6e:2b: + 28:9b:fb:06:e4:5e:9f:09:9b:59:da:42:62:3f:d4: + 7b:6e:fd:41:c6:bf:24:40:ef:6d:1e:1a:a5:10:15: + 3b:a3:ee:c3:3c:c4:c7:f4:96:e8:3e:bb:e4:3f:8b: + 54:e5:f9:56:55:87:7a + Signature Algorithm: 1.3.6.1.4.1.2.267.12.4.4 + 61:0b:67:57:c9:c1:db:e4:47:89:c8:32:d6:c2:de:14:97:a6: + f9:f2:57:8f:e2:e1:66:a1:bc:74:ad:27:e8:b1:ee:18:b4:dd: + 73:dd:d1:f8:77:48:68:af:1a:61:15:a7:c1:86:98:d3:6b:d2: + d3:ef:8c:36:c2:74:c9:ee:03:75:81:c4:d6:47:30:10:4b:e8: + 16:bf:09:57:3a:35:5d:d8:ae:92:6b:36:3d:c9:17:8b:82:87: + 05:0f:1f:97:e5:88:4f:53:33:df:bd:e2:a1:26:3d:fa:4b:bd: + c2:cd:71:0d:af:95:04:69:8d:a2:ed:b7:83:ce:78:04:aa:58: + a7:8f:23:46:7b:0a:eb:89:7c:62:45:7d:b4:7f:95:07:b4:ab: + 30:03:a6:c7:42:d1:b9:cd:db:0c:b6:2c:91:d3:e9:c3:d8:5b: + a8:f0:3c:40:d5:1a:f8:89:58:a0:50:1a:d9:10:ba:59:1e:83: + dd:80:64:ef:8e:1b:85:5c:1c:e8:53:a9:ce:79:e7:a8:f9:e0: + af:5f:38:17:83:fd:1f:95:8b:c6:62:53:2a:67:4c:67:66:72: + a8:0e:27:c3:84:30:72:37:e4:63:ea:fd:40:df:b7:87:e5:75: + b7:27:41:bd:9e:e1:35:b4:7f:e8:43:0c:03:4e:b2:a0:2a:97: + 34:84:a3:60:96:f3:eb:db:da:be:c2:85:ab:de:56:50:02:99: + 7a:bf:ac:08:88:ea:c2:05:63:8d:fb:67:1a:80:4e:92:12:c6: + 4d:69:fc:c9:1e:62:6a:a8:b7:e0:46:4c:53:9e:aa:40:9b:63: + 6d:cb:c4:e7:25:f6:c0:8d:2e:d6:b0:7d:6c:00:82:8f:68:98: + 71:a5:ce:6f:99:48:7f:8f:99:bf:39:94:1a:85:6a:29:b2:ae: + c5:09:25:e3:b1:7e:e1:c8:70:52:fe:94:cd:79:b6:2a:f9:38: + ce:80:59:42:2c:f1:c8:53:e9:8e:d5:f9:f3:81:59:d7:a4:d7: + 18:12:7c:cb:dd:3d:7c:c1:79:53:b5:8d:47:8a:5a:a8:76:aa: + 17:f0:16:0b:10:7d:b5:e9:4c:41:85:b6:af:e1:70:70:a5:05: + cd:51:5e:80:f4:36:db:33:3a:79:85:3f:cc:c6:40:da:74:16: + d5:ef:f2:e0:a4:79:b6:bf:c1:66:af:27:ec:3c:3f:84:4e:ad: + ce:7f:f8:75:ea:08:24:e2:6a:38:54:82:94:1e:b4:9c:7e:9c: + 60:50:06:23:0f:c7:26:e1:13:6e:5d:34:cd:7e:01:a4:4e:d7: + a2:b5:c8:9e:f9:34:b8:7b:a0:ef:ca:c7:ef:00:36:35:7f:bc: + 8d:cd:16:1b:da:04:12:a6:b7:ea:e6:b9:66:ea:41:16:5d:8e: + a6:79:e6:d9:5e:39:d7:96:9b:c6:f6:f1:57:51:c9:0e:3b:35: + 7c:d0:40:93:88:63:f2:05:fa:88:cb:dd:df:29:71:74:b2:8f: + 50:a6:ee:bc:f7:8c:1b:21:ef:81:3b:ac:86:0a:fb:fd:31:81: + 32:a8:46:4a:42:17:26:b1:ef:80:37:62:64:3a:08:eb:00:b7: + 1b:d1:33:ff:f3:16:c8:50:04:fd:b7:9e:f3:af:4a:b1:5b:62: + af:16:cc:13:ad:aa:c5:d1:4e:7e:66:46:4f:ac:8a:b7:66:a4: + be:63:f6:de:f6:83:20:93:28:5e:3e:a0:26:d5:ba:d9:3b:d9: + b4:c5:98:38:36:7d:c9:da:52:83:9d:12:54:7e:c0:63:73:48: + 68:b6:51:8f:6a:9c:13:5b:21:8c:60:ec:dd:83:cf:6d:88:4a: + a9:5a:15:dd:00:5e:b4:d2:6e:18:2b:eb:e4:7f:a4:0d:b3:96: + a2:d7:3d:97:68:16:5e:ec:c6:ad:26:7f:35:45:e3:8e:a1:b2: + f5:e4:d8:d1:11:f7:66:5f:c8:0d:fc:c7:6d:c9:a7:97:75:a6: + 40:34:35:61:1f:18:47:4c:8b:d1:a4:7b:44:72:15:06:9f:f1: + 4b:ff:af:d2:c6:d3:5b:60:56:d5:d2:8a:f6:af:ea:b4:64:4e: + 47:9a:cc:cd:1d:c0:a5:37:79:f5:45:fa:12:94:96:d9:0d:4d: + 88:cb:9e:17:a9:25:6d:d3:dc:85:0b:c3:bb:d1:85:d0:d5:62: + af:bc:7d:e5:03:a3:bf:d7:8e:78:7e:77:e5:d6:81:6f:f1:23: + 3b:f0:65:a1:6f:be:88:9b:10:0c:51:fb:ad:39:4b:9b:92:04: + 10:e0:3f:1b:77:1f:57:b4:75:ec:c8:31:cc:4e:08:cd:7b:21: + a1:15:92:b7:a7:1a:7f:32:67:07:1a:d5:12:dd:31:12:e6:ac: + ff:d0:2f:22:39:fe:5c:9b:93:04:f9:fd:ca:c9:9c:46:34:a9: + ed:1f:8e:9e:de:7b:1b:c8:ed:18:e0:37:a3:af:3e:4e:8a:ed: + 75:10:98:8e:d9:ba:b2:5b:1d:d6:3a:d1:8e:11:a4:77:49:b3: + 4b:69:2b:f8:28:94:6c:b4:eb:2d:b2:ec:3b:89:9c:cc:60:9f: + 3b:53:6d:1c:03:1e:f2:e0:c7:4b:ce:13:e5:b5:48:09:a8:57: + 46:ec:ff:1d:9e:e0:8a:b3:a3:ce:45:37:29:e1:1d:81:7d:c3: + ed:b0:1d:5e:c0:fe:bf:bf:a4:89:42:a8:b1:fa:f3:07:08:bb: + 5b:ca:2c:eb:01:2e:77:48:78:2b:85:4c:d6:b6:2f:7f:87:37: + 37:6d:a4:2c:19:bb:23:2a:ba:3c:a2:1d:71:c2:e8:3d:fe:9c: + 94:7a:32:cd:ae:a2:8a:e3:33:fe:2a:ee:86:1d:e3:d2:38:7c: + 72:cf:4b:12:08:2f:90:48:b5:1f:eb:79:e5:c8:70:7a:d5:b5: + 7a:aa:3c:3a:a2:b3:64:4d:ef:d8:5c:b1:29:f7:8f:b3:9e:ad: + 19:41:bb:87:04:4f:63:80:14:8a:92:cb:f5:6b:55:2c:5d:58: + 47:af:57:d5:a6:1f:18:6f:43:ca:07:62:d6:7d:24:1f:55:0f: + 7a:89:c2:38:53:83:49:e1:65:27:47:95:f1:81:0e:2a:88:3e: + 8a:53:f2:c4:83:6f:b9:62:d1:94:18:cf:b8:bf:8c:a9:08:55: + 96:ba:53:3b:59:0c:ed:03:d2:81:49:57:20:ce:56:ba:44:b3: + bf:85:b2:f4:5f:1e:3e:e1:6d:b3:f8:1f:27:21:bb:ca:86:1e: + 6c:fe:7b:97:ef:71:cf:8f:dd:4d:73:45:15:23:60:6c:a2:7b: + 0e:49:a9:ee:0f:d4:10:ca:3e:7b:a0:dc:41:98:4d:3d:86:85: + 84:50:c2:08:df:f9:2a:85:e2:0f:7b:89:7e:81:92:36:85:87: + 7b:ea:fd:13:da:78:cf:19:99:51:fe:90:ce:ee:16:e5:d9:11: + 98:ad:94:76:ab:3b:ff:60:43:af:45:7f:3b:09:82:fc:71:80: + e3:c6:41:ac:8b:43:6c:d0:9f:4f:8e:76:c9:6a:f5:1f:b3:7e: + f0:f8:75:9a:09:bb:cc:54:da:ef:09:64:90:1b:ff:3d:4c:53: + 71:e7:6f:98:79:3d:01:b8:6b:76:80:75:a2:a9:3c:c4:b4:6b: + f5:f6:88:ba:70:f9:92:b2:5e:d0:ef:4a:df:1b:72:c3:a6:05: + d0:c7:a8:a4:b2:1a:2c:32:bf:bc:b5:90:0c:a7:6c:d9:9f:48: + 23:85:e3:33:4c:20:25:2b:c7:28:0e:4c:9b:42:1d:03:3d:bb: + 18:cd:e4:a9:23:d7:10:af:ae:78:79:c8:0f:5b:21:09:48:3b: + f3:15:8b:a3:59:9d:55:c7:09:b2:41:2a:21:70:7d:cb:c7:62: + c4:86:cc:ce:45:c0:47:b2:5d:28:76:61:43:f6:cc:9e:72:e2: + ad:3f:bb:11:51:eb:60:30:38:29:ee:30:88:1e:7e:c7:9c:c1: + ee:67:0c:e4:33:f0:5b:fa:1e:72:e5:1e:bc:a5:64:7f:0a:8d: + cd:c5:a4:20:18:85:e8:38:08:9f:7e:dc:60:45:84:34:62:c7: + 69:98:60:39:9a:e1:33:d1:10:01:f2:5c:e7:aa:27:a4:bb:2f: + f2:c9:e0:c3:1b:b4:a8:c5:8e:43:d2:9b:e7:d3:e6:c0:c8:88: + 62:8c:1c:6a:f0:a5:ef:92:b1:1c:8b:ae:c0:db:96:03:c4:99: + 16:61:c6:ef:4f:67:7c:da:4e:c9:dc:23:fc:91:c8:48:62:7c: + a3:9a:dd:4b:a0:77:ce:55:2e:e1:6e:44:98:ee:4f:42:d4:2c: + 03:6f:0c:df:72:c3:25:34:cd:39:86:8d:c4:bc:8e:62:51:2f: + 06:84:b0:49:52:b7:b4:35:11:53:2e:7d:25:d1:e4:d1:53:81: + fa:26:61:f5:b0:f4:45:83:f9:c7:2f:3e:28:4b:33:d5:a0:4e: + 78:d7:68:ee:fe:d4:ed:cb:1f:ad:5b:6f:86:c0:26:f2:14:14: + 14:78:2c:bf:70:c3:2d:1d:9a:3e:0d:db:f5:48:50:89:90:65: + d5:71:17:51:7c:ab:0b:09:51:b1:7d:97:c8:ab:5b:8e:9e:56: + 8f:e9:a5:1e:7a:89:13:93:2f:11:31:37:ab:4f:76:05:cd:b5: + c8:14:ae:da:17:20:ec:73:59:dd:8d:29:dc:45:08:7a:76:61: + 49:d5:00:2b:83:90:5a:bb:fe:40:63:38:91:a5:14:d7:7e:72: + 1e:a3:fe:a6:43:de:12:53:b4:ff:58:91:8e:08:6c:3b:6c:80: + f8:76:5f:50:cd:e5:27:43:ba:ab:4b:4d:6a:b4:37:e8:62:8a: + 3c:14:64:02:98:04:ca:0c:b7:57:a5:b0:41:03:9f:71:e3:2b: + e3:7a:07:c0:60:4a:54:10:b0:4d:45:5b:09:4c:27:68:93:19: + 34:91:3d:f0:65:72:6b:61:24:fe:c0:5d:8a:6f:08:55:71:b2: + 63:aa:20:d3:37:49:c1:75:23:68:86:86:2a:05:e6:9b:70:21: + ef:0b:3e:8d:b8:8f:a3:1c:4e:90:74:1a:d8:cd:ed:81:25:0a: + 6c:b0:e1:2c:08:6c:40:96:15:2f:65:33:97:4a:6b:e8:1f:bc: + f3:e8:4a:e3:f0:66:24:84:b0:00:d6:f9:c6:71:a9:51:3e:3c: + 41:e7:0a:e2:14:e3:4c:01:df:0a:f4:22:b9:4e:29:e6:16:76: + 3e:53:f9:86:19:af:1a:cb:b2:55:86:2a:23:2c:29:8f:42:3a: + fa:8c:7b:c7:e5:c7:38:1c:93:0e:bc:84:96:9d:a1:cf:b5:27: + 7c:2e:b1:18:14:5e:5b:fa:1e:a2:30:bc:f1:09:60:1c:9c:6a: + 01:8b:80:3c:fd:c0:27:be:44:7e:03:b3:40:86:68:1f:38:be: + 04:bc:a2:97:f0:af:b0:9b:00:bb:5e:fb:0c:c7:0d:12:cc:f5: + c0:90:97:df:5d:b6:03:70:36:fd:49:5f:e3:ad:b2:5e:94:59: + ea:de:4e:a4:9b:05:32:49:11:74:6a:1e:c1:54:45:2f:5c:20: + 2d:9c:0d:a5:92:a9:30:73:e8:1a:a0:72:f7:1a:e9:63:88:48: + d5:c9:3f:ea:a8:62:c4:c8:69:53:a0:25:17:12:6c:5a:c1:75: + 66:c7:37:f2:c5:2b:a7:c2:6e:d9:85:00:f9:ec:09:89:e1:d3: + 17:3a:de:a1:7e:c0:e4:6e:2b:2f:ba:9d:0f:0f:a8:3a:35:31: + a8:45:7b:35:7d:cd:71:b2:9b:95:55:98:a7:8b:a2:ad:7e:dd: + d0:7e:9a:a4:90:81:99:7b:a0:28:30:d3:4d:3c:39:64:e3:25: + 8b:f7:cd:17:3a:ed:31:ed:86:b3:d9:db:d1:52:9b:73:41:b0: + fe:1c:1b:ce:d5:2c:0f:c4:88:78:9f:ad:f2:2e:2c:67:3f:24: + 33:25:97:3c:7c:39:62:43:63:54:22:0b:e8:cd:06:57:14:0e: + a1:fb:57:fb:41:47:f6:89:03:1a:4e:3b:9d:1b:fa:90:e7:4c: + 31:63:3a:6b:80:b8:4d:0f:03:94:68:59:5a:12:f0:6b:d7:1c: + f0:0b:fe:9b:99:21:71:01:25:46:4f:87:de:c8:84:00:cc:de: + 52:88:52:2e:cd:13:b8:9e:c8:d1:80:bb:db:db:6e:57:50:b0: + 08:14:9e:35:a8:61:ed:1c:a4:6d:a9:d8:b1:a8:da:45:f8:5f: + b8:e2:4b:87:f6:cb:bc:e8:8b:66:dd:14:dd:84:1f:43:5f:67: + 73:74:ac:b4:c8:f6:0a:1d:37:48:57:59:69:6f:7d:7f:a5:cb: + d2:e3:f5:ff:04:0b:0d:10:16:1a:27:2b:3a:63:69:6d:7a:7e: + 84:a3:a5:a8:cb:d2:d3:e0:e8:ef:fc:21:3e:4c:52:55:56:7c: + 85:8a:8d:9b:a2:a6:c8:d8:e3:00:00:00:00:00:00:00:00:00: + 00:00:00:00:0a:1a:33:43 diff --git a/test_certs/digicert_mldsa-44.csr.text.short b/test_certs/digicert_mldsa-44.csr.text.short new file mode 100644 index 0000000..415417a --- /dev/null +++ b/test_certs/digicert_mldsa-44.csr.text.short @@ -0,0 +1,2 @@ +X.509v3 Certificate Signing Request (0 unknown) + Subject: MLDSA44 Example diff --git a/test_certs/digicert_mldsa-44.key b/test_certs/digicert_mldsa-44.key new file mode 100644 index 0000000..52fbb8c --- /dev/null +++ b/test_certs/digicert_mldsa-44.key @@ -0,0 +1,56 @@ +-----BEGIN PRIVATE KEY----- +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 +-----END PRIVATE KEY----- diff --git a/test_certs/digicert_mldsa-65.csr b/test_certs/digicert_mldsa-65.csr new file mode 100644 index 0000000..482eeac --- /dev/null +++ b/test_certs/digicert_mldsa-65.csr @@ -0,0 +1,115 @@ +-----BEGIN CERTIFICATE REQUEST----- +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 +AAAJERMfKCs= +-----END CERTIFICATE REQUEST----- diff --git a/test_certs/digicert_mldsa-65.csr.text b/test_certs/digicert_mldsa-65.csr.text new file mode 100644 index 0000000..c1a7dd6 --- /dev/null +++ b/test_certs/digicert_mldsa-65.csr.text @@ -0,0 +1,323 @@ +Certificate Request: + Data: + Version: 0 (0x0) + Subject: CN=MLDSA65 Example,O=DigiCert, Inc.,C=US + Subject Public Key Info: + Public Key Algorithm: 1.3.6.1.4.1.2.267.12.6.5 + Raw Bytes: + b5:03:d5:a3:af:c8:e5:fa:f8:22:2b:33:fb:16:d2: + 3e:3c:74:61:0d:5c:d1:c8:6b:fb:7d:4d:93:40:43: + 9f:10:74:3d:04:54:4f:d2:bf:0d:32:fb:c1:eb:b2: + f8:d5:a5:e9:54:fb:c0:cc:c2:0d:cd:1f:9d:ed:17: + 59:83:eb:4f:fe:9a:0c:f7:b8:1f:6c:25:ee:f3:18: + 4e:fd:51:d2:0e:f1:87:ef:87:c8:88:1d:1b:72:31: + 76:fb:0b:e4:df:b3:84:84:08:3a:ce:b5:6e:b5:9d: + a4:1a:69:bb:6d:6f:fc:0c:b2:3d:9d:fc:6f:88:2e: + ff:24:19:d2:1d:8a:28:a7:c8:23:bd:53:e3:e0:6e: + 03:8e:c7:55:04:f6:61:07:84:b7:65:08:f2:ae:9b: + a0:2b:af:4c:58:7a:f5:0d:6b:2a:62:f2:00:41:fe: + b4:ed:c0:51:c0:77:3b:cc:05:87:55:24:f6:c8:ff: + 18:62:6a:46:6a:71:04:be:b6:e2:05:75:9f:e1:14: + 90:1a:a9:4b:92:b9:64:26:8e:d2:fe:3e:af:fb:bf: + 98:4c:a0:0d:14:2e:a6:bf:a2:e0:d8:0b:d8:fd:58: + c5:ef:fe:1c:e5:b6:f7:b7:66:dd:a0:6a:33:52:c7: + 55:f2:cd:49:f3:e3:0a:b5:13:f6:0d:3e:d0:67:84: + 23:f3:8a:ca:a4:78:9e:0a:0f:25:7b:72:9c:d5:f9: + f2:33:97:a5:3f:da:99:77:cc:6d:2b:5c:a7:73:3a: + 45:37:41:cf:d9:07:9c:89:47:52:e2:78:d1:7d:46: + de:e0:2b:ca:6a:56:b1:d0:02:bc:a2:a7:af:39:a4: + 19:2a:68:5f:2b:8f:7f:92:85:99:0a:97:8e:8c:b2: + 0f:c8:cb:b0:81:b0:c5:72:02:1c:13:e5:ee:b9:5d: + e8:63:c3:36:1a:6e:1c:d2:7c:9f:93:45:a3:4f:34: + 1f:ce:9e:44:6a:43:e3:4e:70:55:2e:0c:a1:22:4b: + b4:8b:01:11:dc:cc:53:f9:21:3e:3f:6f:4f:cc:d5: + d5:72:35:c6:b0:f8:2d:ae:f1:1d:7e:ca:99:12:90: + a2:31:b8:b4:e4:a6:99:03:b0:12:a2:c4:3b:5e:f4: + e0:17:fb:6d:71:7d:28:e3:ac:e2:b5:a0:12:fd:45: + e6:58:22:a6:ce:c0:88:62:4e:78:0d:51:58:b0:18: + b0:8c:7c:22:ff:88:95:64:63:cd:4d:24:d0:27:35: + d4:ab:9e:b6:a5:c1:fd:b8:2d:68:9e:99:01:a3:21: + e2:83:83:dd:14:22:ee:68:19:e7:8a:30:1a:99:d4: + 81:95:24:bc:b1:66:cb:3a:f3:53:08:92:58:a9:4d: + 7f:a0:35:bd:d6:1d:5a:71:b9:d3:97:8a:d3:71:f8: + 5a:6e:17:7c:2f:a5:b1:57:45:27:17:a0:97:fd:33: + 46:36:58:12:3f:a4:9d:57:ad:de:42:21:15:a5:64: + c3:e3:25:f3:60:03:30:16:ed:5c:c5:40:e3:3c:c0: + e4:55:cd:66:ed:91:02:0b:3e:30:91:6f:4c:46:3a: + f9:3b:21:4c:7c:41:01:9f:86:82:43:d2:21:58:43: + 89:e9:2a:3a:db:ae:b6:4e:ae:7b:39:a3:41:18:60: + c0:b2:0e:a6:b6:bf:5f:13:33:52:e3:6f:a0:d4:f3: + 61:46:2f:c9:79:78:42:fb:d2:1d:a3:c7:00:43:90: + 41:41:ec:78:66:c1:b3:f9:b8:95:e2:87:1d:93:3b: + 1a:08:02:70:78:10:b6:d3:98:5d:cb:32:49:3d:a9: + 10:e0:d8:c8:e5:fe:e6:27:cc:b4:db:9b:7d:2b:64: + 00:95:b3:47:fa:32:c7:0f:26:30:e2:3f:59:6b:19: + f7:c1:45:61:b0:7d:7d:ae:23:1e:b2:31:58:e1:70: + ee:46:81:a6:bf:c5:5d:94:49:41:59:57:11:a8:44: + 01:9c:64:e0:df:8e:7c:3e:e2:00:ca:ea:c1:a7:4d: + 1a:39:65:36:3b:55:ad:bc:98:56:92:34:21:f5:e1: + 78:20:4a:e8:8d:4c:67:ab:69:4a:3e:12:a8:5d:9b: + b3:7f:8b:4a:a4:5e:07:07:1e:cb:fa:0d:86:2f:e1: + 8b:b0:22:99:94:10:fa:65:6e:a9:2b:26:fb:c1:9f: + 11:5d:33:6d:38:02:1b:65:10:cf:0a:6c:a3:ae:b7: + 33:43:37:09:c9:63:56:46:c5:40:1a:46:c0:20:5f: + 49:3c:ba:f6:61:36:3d:73:4a:2c:70:8c:93:b2:8d: + 75:8e:29:c5:f3:b5:f9:ca:fb:f9:f7:66:03:72:56: + c8:6a:43:94:d9:a2:30:3a:98:1d:67:85:a3:af:35: + dc:41:57:15:1a:f7:be:1f:7d:6b:7a:2d:b5:41:a7: + 40:89:ac:d2:13:18:b0:ff:12:60:8f:60:21:48:16: + 00:46:63:22:60:9b:06:83:26:c6:e4:32:fd:1c:0d: + 8e:8b:f0:a0:17:64:ac:4a:28:ce:1b:15:73:7a:87: + 20:7c:2f:e5:37:07:fc:98:4c:42:e7:01:ea:ba:d2: + eb:49:3b:62:c9:0d:b7:32:aa:ad:b0:78:92:e8:12: + 38:82:a7:b9:f0:bd:85:1e:8c:bf:92:b8:6a:6e:e9: + ba:34:d0:e6:6e:2e:e6:9e:24:4a:a2:22:ea:d1:8d: + 2f:2a:53:7d:a9:de:88:a5:f6:13:cd:b1:f6:34:2e: + 6b:33:f1:4b:e7:8d:92:f1:96:9e:30:5b:e5:45:49: + e8:98:ff:da:47:f6:f9:1d:d5:22:47:83:92:f5:8d: + eb:fa:91:4b:ef:e0:c9:6b:49:f8:5b:62:9d:ae:88: + 40:86:b4:24:37:ca:db:6b:b1:d5:30:66:f7:49:fd: + 10:3d:f0:36:ce:7e:4e:e3:17:90:ba:cb:b9:fa:23: + 9a:dc:22:9e:13:6e:4c:1e:69:a7:15:5b:e7:24:0b: + 77:bb:fc:aa:dd:a3:70:8a:74:34:93:39:8a:ed:d0: + 87:ae:2f:2b:94:ff:f2:bd:23:f0:6f:e3:e0:77:83: + cc:31:7e:cc:b0:9b:ce:16:77:74:3b:dd:96:c8:d5: + e6:ce:17:7a:e3:e2:69:cf:db:d2:2f:01:0b:96:79: + 32:27:aa:c3:74:6b:0d:a5:e9:18:f3:63:a0:49:d9: + e0:7d:1f:64:73:82:8d:07:ee:7c:63:45:1c:50:54: + 48:55:d7:dc:e7:d2:60:af:c6:ca:1c:06:4b:80:dd: + 0b:3d:6b:fb:5c:cd:b7:bb:32:cf:5b:80:0d:89:21: + 25:d1:cc:56:ee:61:f6:77:c8:bb:54:3e:6c:49:4b: + 46:04:e1:c9:0e:65:4c:a8:01:d1:08:b8:20:65:db: + b8:c1:92:68:5c:37:2e:a5:2b:b5:c7:06:49:53:33: + 94:7c:33:5e:8b:06:14:a7:97:0e:82:e5:7c:3e:cd: + 0a:96:e2:09:de:d8:0a:d1:cf:28:7e:bc:5b:ea:ca: + 33:dc:f5:a3:15:fa:1f:2b:09:dd:fb:f7:aa:df:7f: + bc:e7:1c:72:04:7e:5a:80:d4:0b:f7:b7:06:26:d6: + 53:2e:b8:4c:e6:87:95:1d:a1:0c:e7:e8:14:bc:bc: + 20:31:58:49:f8:79:4a:3b:12:5f:09:15:d0:66:28: + ff:43:5b:32:b3:0a:14:b0:89:fa:cd:68:c6:ed:e4: + aa:91:35:d8:0b:58:4d:40:dd:df:3d:5a:6f:4a:f8: + be:cb:97:6a:0a:0e:95:d7:9a:d9:33:66:41:f1:30: + 8b:df:9f:56:06:93:d7:bf:7d:df:a5:e6:ff:af:34: + ce:f2:d6:e6:a0:ae:ef:8f:58:db:9c:e0:48:5d:21: + b2:2b:05:55:a2:40:43:02:e1:1a:99:30:38:97:4e: + f6:96:ce:29:35:c3:73:26:bc:c6:db:f1:49:a7:d1: + 14:4f:1c:ea:82:2c:ca:a6:b7:97:0f:ab:93:4d:fb: + 66:cd:a1:ef:cf:2c:f4:67:54:b5:f8:56:bd:16:05: + 8d:25:5c:31:21:b9:32:0c:48:74:ad:11:bd:ea:89: + 54:32:ec:37:f7:55:26:24:d1:26:91:c1:c7:a8:87: + 54:a9:c7:d3:3c:c1:f0:e5:8a:0c:f8:46:9e:e2:d0: + 7b:77:4c:d1:b0:61:ce:35:a8:22:45:95:14:07:7a: + 6a:bd:8c:97:b7:2f:d3:0d:50:2d:20:77:98:7c:cd: + 46:2d:f6:4e:c2:92:1b:57:64:d2:6f:c3:91:74:ea: + a0:6e:d7:2f:02:4b:cf:6e:81:07:a3:99:18:fb:a7: + 5c:e9:37:68:f3:a6:9c:c3:85:4d:c4:a9:1f:27:65: + b9:30:ca:6b:5d:8d:de:14:a6:d4:48:68:e5:23:fc: + 2b:be:b2:93:d0:5c:af:f1:52:04:03:60:d9:43:79: + af:14:ab:ed:d7:fe:78:03:f1:79:99:5f:76:6f:ad: + 85:66:ae:37:fa:28:98:62:d3:03:5b:13:a2:3b:bd: + e0:16:5f:9e:43:77:90:b3:71:da:c6:32:3f:98:36: + c1:dc:e5:8e:c5:1b:ae:39:64:2b:23:c6:c8:52:6c: + d7:5a:51:40:9b:0f:24:a5:ef:d7:af:7a:31:f4:99: + 65:1a:fc:a7:6a:8e:ad:fe:73:e9:41:5f:d1:ac:a0: + 99:aa:a1:61:08:f6:d3:d1:46:d5:4e:3d:18:10:a7: + a3:6f:dc:f0:3b:95:14:1b:28:ec:71:3a:e6:4d:f5: + a0:7c:1d:f3:4d:d8:85:a4:5d:5c:4f:ed:ce:4e:c6: + 5c:2b:bd:91:6b:47:bd:c1:e4:8c:27:61:58:ab:78: + 24:c8:fb:f0:f2:c6:6d:1d:ec:20:d7:c5:eb:79:f0: + f3:a7:74:20:05:15:83:0d:8e:9f:fd:ef:4e:1c:48: + 57:cf:fa:d6:23:3d:f4:ec:fa:1e:53:16:58:d4:7d: + f1:db:6f:64:5a:09:a4:71:50:97:a7:2c:6d:28:28: + c5:a2:7b:2d:2c:b7:b0:b2:10:40:e3:ad:5a:e8:9f: + 3e:03:20:b2:ae:b0:4b:82:3c:91:e3:f6:20:b1:a5: + d3:d3:b7:db:46:5b:97:a8:41:e1:54:3a:3c:bb:74: + 3e:fc:51:3c:a8:c9:9e:48:ca:25:ba:a2:33:91:d2: + 7b:e5:6e:41:2b:79:40:f0:9d:f3:91:48:45:5a:9c: + a3:16:2f:bc:3e:aa:82:a0:4c:fc:08:e1:4e:81:41: + 6c:79 + Signature Algorithm: 1.3.6.1.4.1.2.267.12.6.5 + f4:71:41:b9:58:a7:f4:54:af:26:12:4b:f9:f1:e5:a8:08:41: + 16:32:0a:f5:f8:ae:52:56:34:33:9c:ad:57:cd:cb:32:24:c8: + 16:6f:14:41:10:24:62:f0:28:35:c0:22:91:3f:0f:67:b2:d1: + 38:8b:7a:bf:0d:3d:cb:ce:23:3e:a5:11:b9:18:e1:e5:45:05: + b7:33:be:36:00:4a:d0:eb:1b:c3:e5:ca:5c:9c:e9:6f:e5:7f: + 11:71:8e:c9:ca:e1:bf:be:77:16:7b:b4:ed:50:02:05:ae:97: + 03:1e:04:c3:5b:06:3a:85:ec:08:16:21:da:9c:65:b6:92:28: + 43:16:d5:15:68:06:50:d5:d6:99:99:c1:a5:f6:ed:87:be:90: + 52:30:8c:d1:cf:7c:f2:4b:12:d7:91:70:5b:6e:cd:80:64:8a: + dd:d0:63:5d:bc:28:09:ce:83:99:93:60:12:37:89:fd:05:41: + 61:64:42:a0:26:c9:ca:d4:61:9f:31:c4:e5:02:40:55:cb:c3: + 06:df:0c:8a:e2:4e:ef:60:93:ac:84:82:aa:50:99:95:2d:c6: + 18:01:9f:ec:8a:ac:11:7b:c7:d7:1f:93:e0:bf:7b:f6:ca:63: + de:b2:3a:af:fb:eb:3d:7f:3e:c7:b0:8d:5c:a3:cd:2b:84:14: + 33:33:01:87:b2:db:70:c1:48:5b:8e:89:77:66:95:98:87:e9: + cd:01:78:d2:f2:04:06:7a:a5:68:37:d2:31:55:5d:fc:25:10: + 28:46:28:04:1c:e2:d7:ab:18:21:39:7e:dd:1e:1c:ae:0f:19: + 78:a0:86:cb:8c:8c:a8:99:98:9d:6a:ef:c2:f1:a7:6f:f2:21: + ff:77:de:ee:fb:bc:f6:28:d6:e5:d6:cb:c1:51:74:2d:f7:cd: + 3c:66:69:67:f1:93:b7:c6:7b:90:f8:6b:fa:3c:6f:31:bb:06: + 6f:25:4a:4e:ff:8d:0a:f8:cf:a3:5c:c4:b4:ce:af:7c:ef:ed: + ea:ee:ae:2f:2f:e0:d4:dd:cc:63:78:67:a4:a2:a3:d7:49:7d: + a6:b3:aa:46:88:69:70:9b:04:d1:89:85:fd:24:c7:f9:de:4c: + 25:4c:96:9d:15:0b:d4:ef:2b:55:22:a8:47:83:e2:09:cc:2e: + f4:d3:c2:f7:0d:27:87:f9:12:f6:06:94:15:f1:eb:b4:ec:92: + 56:7c:18:93:94:8b:bc:26:5e:21:18:b5:b3:d7:58:cd:ab:63: + 24:f1:b4:bb:ec:60:78:c1:ad:3d:05:cc:be:7d:1e:e2:da:10: + 32:f3:80:74:b6:84:fe:0d:c3:46:5b:71:82:f7:3c:fb:29:84: + b5:e5:d3:79:37:5f:27:7a:f8:2d:9d:a1:f7:3f:53:b1:c9:5f: + 5b:d0:40:4c:3d:7d:a2:72:64:fd:40:97:29:d0:d2:59:ab:5c: + 09:6b:aa:99:47:c7:39:da:0e:32:56:7b:3d:c3:6f:01:94:98: + 2b:cd:0a:5d:22:34:61:4c:4c:b4:cf:d2:29:54:d0:78:5f:d1: + 08:b3:8a:77:65:6a:b9:74:23:d9:a1:a5:ae:c3:75:49:6d:72: + 52:cb:05:9d:e0:d8:49:e8:3c:1d:a0:cc:a7:2d:40:33:1d:4a: + 7c:d6:96:70:5a:2c:5a:99:14:90:54:2a:0c:4c:86:5e:b2:9d: + 46:f9:d1:64:1f:cf:df:0b:05:81:ff:3e:64:53:47:11:2f:25: + e5:8d:23:18:7e:ae:73:6e:8c:99:1d:70:15:b0:4d:86:61:bf: + 20:93:8c:3c:8b:92:6e:a6:cb:64:12:1f:92:f0:43:13:9b:b0: + bf:5a:8e:d1:c3:b1:1c:cb:52:f1:00:9b:56:b0:f3:73:5f:d1: + 13:46:a3:a8:13:b3:d6:c7:40:aa:4c:54:79:93:a4:9c:37:f6: + d3:0f:78:6f:c3:f5:9a:02:42:55:27:7c:77:9d:db:4d:d3:ba: + 1a:65:c7:7c:69:11:f3:c9:04:a0:d1:8d:2c:70:2d:c9:50:59: + 45:86:fb:12:6f:dc:c7:e4:2e:a7:8b:fb:b8:0d:7a:91:77:6a: + 37:55:0f:4c:9a:f6:9e:7a:30:fb:90:be:60:39:2a:8d:80:cb: + 15:5a:f7:de:b8:87:e6:f6:62:27:12:32:19:1d:75:c9:8e:75: + 0b:b5:12:78:1c:8b:5f:6d:45:da:50:11:53:bd:2b:1e:06:02: + 32:94:68:0c:c4:c9:61:1e:92:3f:ac:fb:bc:c2:89:fd:34:65: + c8:21:36:6b:a1:45:97:fb:29:67:4f:a0:3b:03:35:7e:f5:6c: + 15:25:44:a8:e3:46:ce:52:14:e8:f0:98:c7:af:3a:e2:0e:8b: + b1:2a:d9:10:84:09:d3:85:f6:b0:58:cc:74:91:92:4c:2e:15: + 47:a8:0a:dd:3b:42:2e:c9:6f:11:61:77:77:f9:a7:a2:03:c1: + a8:e0:7f:1e:61:74:db:fa:28:c0:b4:0a:4c:3e:b8:fb:3d:97: + a8:ab:87:2a:49:56:d6:e1:41:5c:fb:b1:98:95:ab:f4:5b:f0: + 08:ca:68:d3:cb:b7:df:ad:d7:40:d5:63:60:01:1a:41:a0:85: + 81:22:b9:4f:bb:a9:a1:5c:a1:00:4d:c9:f5:69:e8:fb:5a:7d: + 9d:05:48:8e:7e:cc:ab:6f:b1:c9:6b:d9:a2:21:85:ad:1e:7a: + ac:1b:bc:bc:b2:e4:e6:12:cf:f3:30:2f:f1:aa:fc:35:53:31: + a1:c4:c3:fa:9a:32:df:40:ce:b9:ca:d3:c2:38:3f:29:52:1c: + f7:e5:75:63:23:c5:f8:28:a4:84:70:32:b5:54:73:03:c0:12: + 6a:cc:54:e7:e8:68:81:0b:c1:10:89:23:be:09:31:87:ef:37: + 9b:e9:09:52:7d:6c:42:2c:72:eb:a9:c8:d2:51:fa:bb:65:d4: + 81:9e:54:48:fa:98:39:29:03:77:c8:26:91:33:bd:71:ee:5a: + a4:8e:e8:35:0a:98:c6:92:3e:4e:e2:c0:7b:d4:cc:1b:2d:5d: + f2:22:84:77:05:21:f5:d7:5e:de:2b:f7:96:2f:c9:a8:4a:e0: + 8f:03:ea:fc:20:a3:a9:7f:8c:b0:f6:35:ee:dc:17:82:97:19: + 0b:b7:a8:db:04:64:26:01:f2:4a:7a:ff:93:ec:25:8d:e7:e8: + d3:de:d8:e2:91:dd:22:33:73:a5:37:3b:7b:89:df:db:71:0f: + 42:ed:70:36:e8:f3:4a:cb:32:ae:f7:95:37:41:17:00:a8:0f: + e5:d3:76:7e:4b:a9:71:07:f8:3f:53:e0:4a:f5:61:8e:be:b3: + 0b:7f:09:79:52:50:38:ab:f1:b9:b0:1c:50:a2:cc:84:e1:95: + 95:4a:de:e9:74:a0:6b:ce:5a:05:c7:55:56:85:56:58:05:32: + 7b:99:84:6a:fa:0b:f2:e1:bd:d1:53:96:ea:ea:df:db:9d:ac: + 17:17:f5:f2:c2:be:75:98:59:4a:96:16:fe:a5:0e:00:50:97: + d9:1d:1d:a2:57:a2:1e:05:ca:de:ca:79:99:c5:ae:f3:8a:7b: + 13:4d:ff:55:0c:61:ec:18:a1:32:8d:a0:16:df:e0:e9:14:63: + c4:09:aa:01:7e:8c:b6:ca:ff:d4:22:00:8e:5d:c8:82:41:0d: + 23:e5:ac:c7:ab:8d:ce:94:e7:a7:cf:7c:f3:e5:34:c3:62:07: + 33:2c:32:fb:c0:53:1c:2e:4c:d5:34:9f:05:11:df:92:8b:1a: + 13:c3:b6:7f:8f:b7:c5:b9:1c:5c:46:3b:8a:46:99:34:cc:e8: + ed:e0:5b:df:7a:a4:00:80:ab:6b:3b:cb:24:65:92:dd:49:eb: + b2:97:47:81:d4:12:8b:a4:1f:9f:5b:93:15:ab:82:54:54:24: + 1a:6e:85:5e:1d:8b:88:2f:a5:82:f1:c4:df:3e:d2:f8:f1:7d: + 4e:86:ad:65:cf:fe:04:17:9d:eb:cf:1c:ed:42:44:6a:2d:7a: + ec:97:80:fe:21:66:8a:e6:96:c4:35:f3:b6:70:bc:d2:51:8b: + 6c:08:c8:ab:ad:4b:67:07:16:4a:0a:b4:3b:79:ec:93:3c:e4: + 34:1d:f1:63:5b:40:10:ea:68:1c:51:0e:a4:f1:52:69:fe:76: + 21:29:f5:f9:0a:d8:4f:f9:ba:f3:e1:eb:69:91:47:09:3f:fd: + 41:f9:c8:14:d9:9e:10:cc:bc:4f:ea:06:03:df:e8:dd:4d:8e: + f8:2b:1d:ca:54:48:ca:4d:c1:71:06:f0:44:a1:55:5e:e0:80: + 75:2b:1e:f3:54:52:ef:64:03:e3:c3:5f:77:c5:c3:ac:f4:6a: + ad:ab:d9:4c:de:85:e8:bc:af:09:76:66:d5:01:70:8c:e3:da: + fd:48:ab:1b:ff:93:12:08:01:ce:2d:38:c6:3b:fe:13:c5:60: + de:0f:9b:80:ad:e4:54:12:9f:12:f2:3a:c2:ab:98:fe:54:6c: + 23:03:8c:67:f5:5e:e3:13:81:2e:4e:09:6d:ea:72:b2:1d:11: + 41:7d:5c:2d:7e:c3:36:f9:f7:68:37:66:8b:6f:5a:cf:63:c5: + 66:b8:4d:9d:61:10:f4:c8:4d:71:4d:7b:d8:7f:c1:f0:92:a3: + b0:6c:cc:e4:6b:90:81:04:86:d3:57:6b:de:aa:16:38:5b:40: + 8a:6d:23:d8:49:7f:3c:7f:c3:20:cb:26:53:96:4a:84:f5:e3: + 1a:7d:79:78:48:af:09:61:dd:c4:b3:fc:55:de:88:15:27:bc: + 35:00:5f:8e:6d:f9:0f:87:9e:10:da:8d:c2:98:77:dc:a4:ef: + b4:f7:c4:45:50:5f:42:6e:5d:22:30:bd:be:3b:a4:ff:32:75: + 91:8f:3d:ba:bc:f9:d6:69:1f:e5:3e:c3:31:af:6c:99:2d:a0: + b1:04:13:b0:91:24:4c:32:0f:52:25:b3:f9:11:b3:d1:d8:d6: + 2f:bd:61:db:0b:e0:7d:40:f0:ce:bb:3d:bf:c6:a5:a8:f4:a8: + 3f:a3:ab:d0:60:86:b9:bf:3a:1c:9d:56:2a:c7:ff:24:46:a4: + 54:15:30:24:3c:91:fa:e3:47:d9:4d:2b:db:d0:c0:a3:e8:46: + 78:fa:7f:4e:fc:63:5d:f0:32:ce:5f:10:2e:34:3f:c8:e5:f4: + 66:82:f8:dc:29:54:e9:8d:0f:00:c1:85:5f:84:42:e5:92:e8: + c8:51:9f:ec:77:b5:8a:53:ac:ed:19:df:98:7f:1e:49:e7:a9: + 4c:a6:b0:e6:10:dd:ea:30:dd:c7:4e:0e:dc:a9:4a:cb:c4:c8: + 30:7b:3c:32:fd:fd:a4:c2:08:23:19:58:b8:76:45:e7:70:c6: + 16:7f:d2:b0:7f:aa:09:9d:2a:f3:ed:ca:f8:44:b5:16:6a:fa: + 09:01:d3:50:e9:39:5a:4c:49:17:54:a4:89:cd:7a:df:a4:47: + 45:e7:f0:36:4e:ce:39:36:ec:80:89:25:8a:82:db:f0:9b:0f: + 8b:41:d1:4d:e9:79:e4:e3:b5:b0:1f:64:66:9d:b1:13:b9:b2: + c8:aa:cf:eb:07:8f:07:07:01:19:e9:8d:59:4a:04:f8:a3:98: + c7:c1:65:99:7b:07:89:f5:9f:06:9b:14:46:ee:b6:c5:64:16: + cd:ba:7a:08:42:ab:2a:c7:1c:9d:d0:a8:75:f6:3a:50:bb:b7: + 97:3a:4d:0f:a6:03:df:68:de:3f:ce:81:f3:19:34:c2:11:da: + c7:fd:eb:0a:51:66:9f:12:1c:40:fa:87:dc:7d:3e:91:56:cd: + 3e:78:73:49:71:50:54:fd:58:9a:fe:2a:be:d5:9b:1a:1d:ab: + f4:cc:c4:41:10:d4:e0:d6:a7:d6:79:c4:e3:13:d0:0a:64:20: + 75:62:df:1d:aa:eb:e4:45:fd:39:ac:4b:9d:45:fe:34:10:68: + ce:73:a2:4c:05:7f:43:c8:ad:12:b1:2b:75:1a:9e:24:b3:32: + c8:11:5d:c8:36:eb:42:d9:17:a1:d6:32:d3:09:6c:38:1d:4f: + 9f:09:71:33:97:57:a5:be:a5:84:9a:eb:65:3d:3d:69:de:c2: + c7:87:f1:a8:19:eb:68:41:34:f9:11:af:9f:37:2e:a0:cf:d8: + c4:c5:9a:96:ec:02:18:f3:0f:34:6f:45:2f:76:6d:87:26:d7: + f6:81:c6:1c:b2:0b:d0:ae:c2:7d:00:af:5d:34:17:ac:e0:1f: + c2:c6:64:04:cd:99:ab:af:56:10:50:48:3f:b1:29:88:fb:e9: + b9:65:85:7d:3c:45:49:54:53:b5:1e:66:92:21:0c:c6:f1:8e: + c9:5a:b3:15:d8:da:16:60:ca:22:0c:08:60:19:33:9c:d3:94: + fb:00:4d:29:dd:56:5c:46:9c:40:96:66:19:10:48:77:9f:23: + 90:bb:8d:f2:fd:6b:11:6e:43:ab:50:32:b6:67:5f:0e:24:a6: + ae:e8:5f:f1:aa:fa:95:d3:b8:48:d5:46:83:87:d9:2f:a3:7f: + 54:75:44:2c:57:84:6a:66:04:ac:58:33:de:51:72:b6:65:87: + 05:0f:53:c4:e4:44:39:a8:ae:f5:8f:08:89:09:eb:2e:43:f1: + 39:e7:36:24:73:b1:64:33:3a:af:51:10:d3:d3:ef:71:f1:8b: + e1:25:19:33:98:7f:23:d3:7a:eb:4a:d6:ae:ea:d0:17:9f:3c: + 70:fb:85:65:b5:6a:ba:4c:3e:a9:fe:da:48:ae:f7:cf:6f:7b: + 6f:48:a3:ae:56:d5:3b:bc:e1:32:93:01:55:44:41:79:a1:50: + be:aa:40:fe:03:9c:d2:90:9e:ce:fc:ea:29:3f:85:31:e1:55: + df:dd:50:db:30:ec:04:fa:a1:a0:62:37:6d:d5:21:81:52:44: + 7c:0d:81:45:e0:ea:65:cf:fd:54:64:b5:7c:21:28:f4:c2:68: + 86:0f:60:14:ee:d0:1f:90:1c:c2:bd:de:ec:38:3b:cd:8c:b2: + de:49:db:85:4f:92:54:58:af:f4:87:9d:d0:88:9f:56:8c:09: + 84:e9:63:36:3f:6e:b9:ca:70:f5:6c:d0:03:6d:7b:4b:72:5a: + af:e0:f1:e9:a1:cd:48:4d:30:57:04:35:c5:ba:c9:a1:ff:08: + 96:b1:f2:7e:5e:df:55:40:e2:c0:49:be:f0:66:66:d6:5f:fd: + 4b:db:dd:1e:a2:20:b0:f8:89:ac:6e:78:6a:68:18:24:b3:3e: + bb:6e:22:44:9c:b2:a1:f9:d1:b7:2b:4c:cc:76:81:2e:a8:da: + d9:d5:a7:9e:8e:d3:8b:52:ae:6f:e4:a6:4b:58:de:e7:26:7a: + f3:2f:ac:25:54:7c:88:87:04:d2:3e:bb:90:10:f8:dd:ef:fb: + 92:d2:8b:ad:98:8c:9d:52:55:ae:68:29:f9:da:a1:bd:c0:9f: + 56:bb:bc:ca:ce:65:d4:c5:04:c6:3f:3c:f5:bd:7e:c5:92:eb: + 7e:51:2a:08:17:71:f9:01:40:71:f3:3e:d3:ee:ce:ed:3c:52: + c6:95:5e:c6:f1:d7:b2:41:95:78:cd:e3:c2:22:1a:9f:4b:71: + e3:a2:7e:6f:03:9f:29:3a:e7:60:5a:bf:5b:0e:36:dc:2d:28: + da:41:1e:54:1c:b2:95:b6:2a:7c:26:20:63:c7:4b:7f:55:a4: + 1f:21:79:93:20:95:70:c1:49:e3:83:1f:be:1b:07:4d:85:9d: + af:55:cf:98:82:2a:f5:7a:71:df:a7:ed:fb:d6:78:c2:57:7c: + 05:f1:16:89:d4:bb:0f:8c:a7:8b:a1:84:b7:f6:c8:55:cc:a4: + 8e:96:18:5b:5a:52:98:34:04:ed:73:02:f6:90:81:da:bf:f2: + d5:e2:cc:58:fd:18:24:95:57:04:24:64:b3:a0:83:4d:d2:60: + 08:9f:ae:27:b9:21:3b:db:68:fa:61:c1:a8:d0:3c:00:4e:4e: + d4:85:37:bf:55:09:6b:c6:aa:74:92:fb:6e:b0:b8:51:39:b3: + 43:26:07:ec:38:a4:a0:44:0a:c0:a7:52:4f:40:c6:72:b6:3f: + 48:df:17:0e:68:1b:74:54:55:e3:ba:4e:1a:1d:49:7e:12:2b: + 08:1f:3a:68:a8:43:c1:20:55:d7:c5:4a:95:85:87:7d:39:88: + 1d:ad:b6:07:b2:0d:1d:95:c6:84:7e:6a:be:8a:c7:65:59:0e: + b9:c5:db:4f:cd:c9:17:9d:de:98:ed:0b:19:67:bb:c4:15:88: + b5:f7:92:3a:c8:d0:14:e9:96:b4:b4:73:fc:a9:b1:85:88:c4: + 4f:8a:4e:8c:60:33:7e:dc:c3:6b:68:01:61:92:05:f2:8a:1d: + 71:5f:c6:ee:36:e5:54:b7:85:97:35:a4:0b:c4:20:25:09:b3: + 4d:a9:46:49:d6:7e:52:c2:79:a8:7d:0f:12:b3:1e:4b:17:62: + 47:a7:86:49:fb:94:c0:d3:5c:4e:5d:ac:9f:21:33:d3:fb:6a: + d1:60:f2:1b:f4:0f:1e:41:b2:d0:57:54:a2:2b:87:38:f4:f0: + f6:51:d0:39:3b:32:ab:8e:ad:d3:d6:ef:c6:5a:71:1f:7d:91: + 8d:8f:c0:a0:40:b2:8e:04:21:2d:7f:08:59:85:ac:0b:c6:25: + 6e:9b:fd:74:d7:5c:2e:08:46:e0:b2:93:ce:92:79:d6:a8:f3: + 57:16:8d:9b:e8:2b:0a:ea:82:8c:93:a1:c2:c5:d1:db:ed:4f: + 78:7e:87:b6:ba:c9:cc:85:c0:05:0a:0c:35:3b:77:82:8a:ab: + b9:df:f6:05:4d:64:80:8b:90:ba:be:f0:34:4a:51:00:00:00: + 00:00:00:00:00:00:00:00:00:09:11:13:1f:28:2b diff --git a/test_certs/digicert_mldsa-65.csr.text.short b/test_certs/digicert_mldsa-65.csr.text.short new file mode 100644 index 0000000..a317f98 --- /dev/null +++ b/test_certs/digicert_mldsa-65.csr.text.short @@ -0,0 +1,2 @@ +X.509v3 Certificate Signing Request (0 unknown) + Subject: MLDSA65 Example diff --git a/test_certs/digicert_mldsa-65.key b/test_certs/digicert_mldsa-65.key new file mode 100644 index 0000000..ae8023b --- /dev/null +++ b/test_certs/digicert_mldsa-65.key @@ -0,0 +1,87 @@ +-----BEGIN PRIVATE KEY----- +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 +-----END PRIVATE KEY----- diff --git a/test_certs/digicert_mldsa-87.csr b/test_certs/digicert_mldsa-87.csr new file mode 100644 index 0000000..5cffbaa --- /dev/null +++ b/test_certs/digicert_mldsa-87.csr @@ -0,0 +1,155 @@ +-----BEGIN CERTIFICATE REQUEST----- +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 +-----END CERTIFICATE REQUEST----- diff --git a/test_certs/digicert_mldsa-87.csr.text b/test_certs/digicert_mldsa-87.csr.text new file mode 100644 index 0000000..f97c152 --- /dev/null +++ b/test_certs/digicert_mldsa-87.csr.text @@ -0,0 +1,439 @@ +Certificate Request: + Data: + Version: 0 (0x0) + Subject: CN=MLDSA87 Example,O=DigiCert, Inc.,C=US + Subject Public Key Info: + Public Key Algorithm: 1.3.6.1.4.1.2.267.12.8.7 + Raw Bytes: + cc:d0:60:34:70:56:96:62:56:4e:b9:f1:d8:5d:7f: + cd:f1:7d:78:3a:ab:31:a2:84:30:aa:c2:00:f2:6d: + 3b:c9:d4:4b:98:d6:1f:19:dd:fb:05:1d:38:00:53: + 08:fb:a1:40:25:f3:eb:47:e1:b3:10:38:bb:57:6f: + b9:a4:67:4d:eb:ab:00:0a:9b:9d:dc:2d:e9:50:4f: + d3:dc:0e:84:3a:b6:04:ca:21:36:80:71:96:d7:2b: + fa:0e:61:63:86:81:b8:27:d2:d2:a3:26:53:df:e2: + 13:a4:f4:c8:05:7c:71:3d:a5:0c:4c:4b:a4:53:d7: + 9c:41:38:c6:0f:42:63:5b:91:ef:8c:dd:70:00:cb: + 66:6e:2f:23:ca:42:f5:e0:b4:29:98:ed:2c:8b:b6: + 15:7c:2b:b0:a2:74:76:2d:ff:33:4f:ef:d0:68:9a: + 32:2e:d4:d9:1f:78:8a:ba:ea:21:5e:7e:ed:11:e2: + df:2f:4e:24:1f:12:21:5c:a3:80:87:99:b4:83:17: + 77:f1:7f:24:34:8e:64:d5:de:a3:33:94:bb:25:ea: + a7:34:a7:b4:71:92:78:43:29:de:f1:0c:b8:31:da: + ac:af:fe:36:1b:95:ff:65:45:36:56:df:7a:cf:be: + 9e:47:04:7e:fa:7d:fe:13:21:52:1d:0e:8d:b2:b4: + 94:bd:75:bd:b9:e4:21:cb:fa:13:fe:4a:a8:c0:16: + 73:6b:c0:54:76:66:c3:e6:d4:19:73:cb:2b:9e:b2: + 6e:dc:d6:26:06:e7:be:56:eb:f5:1e:52:73:10:f8: + 8f:e4:ff:55:6f:63:7d:2a:ec:93:b5:23:f2:f5:37: + 7b:b5:0d:03:71:de:f5:4c:a7:97:a3:41:f9:dd:48: + 4e:7b:b3:41:0a:83:bb:5f:b5:ef:47:14:06:3f:ac: + e8:cd:10:d3:88:f0:29:88:ec:18:c2:56:a1:6c:23: + 2b:d0:cf:73:50:b3:91:5e:ae:7c:ab:2d:e7:fb:2c: + 5e:2c:8c:7a:a8:bb:28:8a:c9:36:7e:fb:a6:aa:b0: + 77:ec:42:85:b4:c2:a5:32:20:01:dd:ab:3e:1f:02: + f3:e9:5e:b1:8e:30:08:49:ed:aa:b1:c4:5c:fd:88: + 85:94:3b:70:f2:82:5c:e6:f1:67:b5:44:6a:d9:57: + 4f:92:22:75:e8:8d:5b:3d:30:8c:7a:15:ed:54:43: + f1:a1:98:6d:04:ee:2f:b5:40:c0:cc:2a:46:59:df: + 0c:f2:b5:82:d3:2c:3a:54:b7:9c:06:b5:3d:99:b4: + 6b:ff:70:81:b6:65:c8:28:5c:d5:fc:ae:99:d7:b8: + ee:cd:2a:d0:46:df:12:69:61:02:35:dd:b8:9a:b7: + f7:d5:ec:8b:a2:40:7e:46:ce:51:27:80:68:6e:9a: + 3f:10:61:5d:3a:e7:14:fc:88:60:53:53:71:a9:9d: + 4f:9e:9a:0a:b2:c2:eb:cd:4c:1e:ae:d6:0d:ae:02: + f6:fb:fe:eb:fb:39:0d:76:75:38:4c:86:92:33:29: + 0b:80:fe:c9:04:53:00:b5:5a:12:9f:bd:22:3b:67: + cb:c8:76:bd:b9:2f:c2:dd:3a:f1:84:50:97:e6:79: + cc:7a:fb:88:fd:3f:a4:eb:cb:b2:3f:a3:64:03:8e: + 3c:14:72:7a:0d:f3:00:1f:36:c4:83:3b:e8:9f:f5: + 46:78:ff:87:ee:ef:00:e1:31:9e:0d:30:58:b4:1a: + 4a:8c:9c:a2:49:e5:f8:eb:5e:d1:be:81:7f:37:ed: + d7:23:bb:7b:f4:30:d0:db:3c:64:85:c2:db:ab:a0: + 0a:cc:b9:64:14:bb:54:5b:88:4a:4f:58:46:f4:46: + 02:f0:39:1c:32:4d:aa:72:dd:d2:57:6d:ae:8d:05: + 50:da:f7:cf:37:bf:dc:1e:3f:9d:56:34:52:5a:c7: + ef:a8:87:7e:06:44:c4:c9:29:46:ee:7e:c2:26:af: + 43:0b:07:a1:91:35:39:d8:17:dd:78:9e:34:5b:57: + 6d:b3:f9:f8:af:75:4f:f5:5b:92:87:60:af:4c:a6: + d5:84:9c:6f:49:b7:8c:d2:5b:be:4c:8e:82:de:d8: + a8:cb:61:e8:86:b9:06:71:8a:44:08:2f:c3:5d:2a: + c9:ee:25:d9:a6:d5:5b:f1:2e:98:5c:5e:4f:30:bd: + b7:6f:28:88:d7:8b:bb:61:f6:a3:74:1f:54:2c:b4: + de:0b:04:84:52:fa:9f:ab:fd:24:33:32:53:92:56: + 4e:42:e1:44:e7:9e:4b:8f:9b:53:8c:c8:57:a3:ed: + f7:d8:f4:ae:ef:7f:bb:54:bc:0c:83:d7:c7:87:be: + 11:2d:4f:83:11:98:88:86:ac:12:8d:4a:e7:30:41: + 9f:4c:f6:7f:a2:93:c7:0f:42:23:5a:43:fe:76:42: + 4f:11:6f:d8:b3:64:42:b5:1f:3c:47:e6:a1:0f:17: + a9:16:12:65:36:df:80:c6:f7:16:79:d2:5c:61:98: + 7a:5d:18:e5:ed:17:d6:fb:61:7f:57:a1:9c:77:f2: + 82:74:70:a1:7a:eb:b1:6e:6c:a0:0d:87:86:c3:eb: + 26:24:62:e8:eb:24:5f:4a:bf:7d:87:e8:10:49:cc: + 8e:f0:d1:9a:15:e6:1d:30:84:ac:c4:6b:2f:a3:3a: + 83:66:63:29:66:b1:90:d1:9c:ed:31:1a:95:39:b6: + 74:67:21:aa:91:e6:81:0d:a0:05:a0:65:e7:ce:41: + c3:9d:bb:c5:ae:63:b9:30:65:85:99:81:74:eb:a6: + 10:24:fe:3c:cd:af:9f:07:3b:d3:f0:c5:3f:c3:7b: + ed:4e:01:66:8a:2a:c2:c2:55:41:4d:a6:67:6c:19: + 0c:fd:66:80:97:0b:55:0c:c8:31:be:9b:e2:7d:36: + 9d:83:28:78:08:4e:79:17:a6:62:30:e6:2f:28:70: + 85:6d:8b:dd:9e:aa:e7:a9:53:da:62:13:64:d6:d5: + c8:42:53:fc:47:03:5e:3a:63:d2:51:84:21:eb:2f: + ff:ab:8f:64:a2:a5:0a:05:3b:06:06:07:a3:f4:7e: + 16:d2:77:c5:82:a1:ea:7e:f6:1e:5b:80:90:8c:54: + 52:d6:3e:19:17:87:fd:b7:78:46:94:35:b2:97:9d: + 09:64:1c:46:83:b0:39:c8:12:3c:f3:da:1d:50:f1: + 95:ec:90:9d:78:ca:88:59:c4:35:36:aa:18:49:89: + 82:e7:fc:87:63:a3:59:b5:38:67:46:12:f6:58:f1: + c3:42:ff:de:82:22:c9:ff:c7:64:c7:b1:b5:52:15: + 87:0a:61:0e:da:3b:33:e6:63:c6:94:09:78:33:cb: + 69:e4:81:34:27:c1:0b:5e:a8:5d:5f:90:d1:ce:59: + ea:34:4f:8c:74:62:6e:ee:46:be:c9:4f:6f:52:06: + c6:61:e9:9c:ab:a5:fb:73:d9:16:dc:fd:1d:eb:29: + ad:ac:0c:09:6a:ce:c5:78:ca:f2:53:e5:60:1e:18: + 00:29:e2:b1:8f:4a:f5:d4:8f:cd:ff:f8:5f:b3:4b: + 22:f7:08:3c:cb:dd:1d:b2:ff:ef:8c:f7:27:9e:17: + 31:2c:f1:0b:95:b6:b7:6d:ef:05:8a:db:ac:6a:64: + e5:01:5b:47:c8:6e:ad:1e:ec:b9:5c:2e:e6:4c:bb: + d4:55:b6:fb:45:30:ac:df:ba:20:79:fc:64:0b:eb: + c9:45:fa:54:8e:e2:95:43:c6:f8:94:d8:b9:ab:3f: + e1:02:06:3a:56:17:ad:3a:a5:75:c4:84:59:f4:2e: + 25:65:43:5a:97:af:42:87:ef:c2:a8:81:04:41:9e: + 51:a2:27:c3:08:b9:90:a2:d8:99:f0:c5:a4:25:57: + 51:12:8a:5f:76:84:a0:69:d6:fb:54:56:c2:f1:0c: + 98:23:82:e8:6b:a7:07:50:88:07:a5:00:7c:e7:57: + 26:8d:27:bb:5a:d0:2c:fc:e7:8a:4f:35:f6:2c:78: + f5:da:49:53:ce:bc:10:4e:e4:80:17:48:03:3a:24: + d0:5c:74:b5:03:ce:74:e2:96:23:26:dc:87:1e:9f: + 81:1d:28:0a:ae:f6:1d:bc:9b:34:de:db:25:97:d0: + 43:f9:41:40:f5:31:0b:9c:a9:c8:2f:9b:07:94:85: + ae:2e:2b:c0:92:fc:f0:18:7b:bd:00:db:48:5b:24: + 7f:18:eb:53:32:45:be:e3:be:17:dc:b2:bd:3c:17: + 56:f1:97:83:18:8d:85:08:96:ab:18:4f:0d:4b:9e: + 2a:b3:45:ca:d1:17:98:7d:f0:9a:7a:0d:17:f4:b9: + 20:69:7d:68:3c:7b:68:4e:1e:39:48:de:4d:16:48: + 1e:42:29:97:50:83:d3:7d:7c:0c:be:35:03:a7:ae: + ef:4a:3b:a9:db:35:0d:2b:8f:3a:7c:33:40:cd:5d: + 40:97:d8:28:3c:03:a2:f2:76:58:91:19:d8:c5:ba: + 82:d8:ae:be:b0:98:d3:c4:2b:88:22:ff:67:91:f6: + 11:af:84:bc:f2:a5:00:a0:18:05:5e:1f:14:7a:d6: + cd:78:d5:ad:57:ce:69:73:95:ac:42:61:a9:c3:40: + 94:6a:1c:bd:94:6a:58:6f:51:e9:ec:79:7b:b5:e5: + 9f:29:9d:81:8e:51:d3:1b:37:de:d2:a7:c7:43:ac: + fa:69:96:01:eb:39:98:44:c0:88:a8:8e:89:06:5b: + 99:75:44:35:1b:8d:fa:e9:c9:67:4a:1f:8f:f0:a1: + 2a:66:f4:85:c3:13:a1:b6:a7:03:a7:1a:49:6c:af: + 14:d2:1f:02:d0:e6:37:3b:53:7d:96:e6:9e:9a:89: + 8b:b2:8d:d0:f7:f8:f9:d8:9b:d7:c2:60:c8:af:83: + 62:d8:d7:df:9d:4c:21:8b:38:39:d0:2c:f1:5b:fb: + 1f:bb:79:b4:08:c3:73:78:23:e0:a5:e1:38:64:4f: + ef:58:13:49:76:e9:9e:8e:89:9c:e9:83:55:5a:8e: + ee:73:32:dd:8f:94:f6:69:8a:4a:ff:a1:7f:2a:65: + 54:cd:f8:05:5c:98:c6:9c:15:5a:4c:c1:9c:07:98: + bf:ef:05:f9:b9:d9:d2:12:5c:24:c7:4b:db:0d:42: + d3:fa:24:3b:0e:0b:47:a4:3e:01:02:48:c7:a8:9e: + 6f:50:04:58:af:e0:37:c6:a0:36:d9:c7:7f:b6:56: + e7:48:76:60:fe:d3:bc:32:66:be:72:28:42:20:20: + e1:fa:40:90:63:cf:ba:d6:4c:45:ad:e1:03:d3:c6: + 46:af:d8:bf:12:71:97:d3:b6:5a:e7:2a:05:26:42: + 1a:35:3f:d7:c9:58:d4:49:f6:11:a7:44:e7:8f:c2: + c3:d2:c9:81:1d:3d:66:29:f7:ea:5b:b8:54:4f:a6: + 32:d3:50:97:7a:e7:40:da:2e:5a:e3:09:8b:81:46: + 51:aa:0f:bc:27:c2:d3:b2:60:09:4e:58:62:14:31: + a2:87:94:d3:23:b0:88:ae:a8:8a:50:0a:5e:e5:86: + 41:c7:a4:db:00:76:6e:4c:99:19:17:74:91:47:6c: + a4:15:50:6e:18:d9:85:76:c3:35:c6:9b:a4:92:83: + 42:91:66:30:72:9b:f8:46:8f:81:40:ef:5e:c7:67: + a3:18:84:2f:83:b8:20:45:60:ee:d1:e7:84:f1:95: + 85:23:49:c8:23:71:91:e9:d5:f6:0e:b8:87:5e:a1: + 21:80:cf:2c:df:a7:46:cd:e8:71:32:53:bf:83:24: + 6b:0a:10:6b:31:63:3d:40:92:67:e3:b9:a8:14:a2: + 1c:1b:79:4f:13:86:bb:c7:76:62:76:89:bd:42:c0: + 35:fc:de:8e:77:b0:85:91:61:96:ea:4d:69:87:da: + 80:39:2d:c4:60:1e:a8:e4:b7:72:02:be:e2:51:a6: + 87:8c:b3:9e:be:04:b3:65:b7:52:9c:06:0b:b4:db: + 1b:a3:51:5c:e4:da:9f:aa:87:33:86:78:1c:77:05: + bd:54:74:5c:3b:c5:7f:25:e5:6a:01:ea:6f:6a:79: + 04:45:3a:14:04:77:41:9e:95:97:c1:1b:91:49:3e: + f0:c4:f4:3b:1b:1d:71:7a:ba:51:04:9d:1d:23:2e: + dc:2f:fe:5c:06:e6:22:f6:a5:0b:35:5d:c4:c1:75: + 40:c7:fe:a1:fb:69:16:de:84:62:16:41:5b:d0:3c: + 4e:a4:89:1e:da:6a:7c:d9:14:be:8c:73:c2:50:82: + ef:bd:2e:9f:2d:d9:13:48:12:8d:d3:fb:f2:fb:2d: + 15:89:72:48:b0:ee:32:ee:be:83:d9:20:37:90:3a: + 48:e6:eb:aa:c4:18:77:ba:60:27:6f:0a:fc:ec:72: + 3c:56:56:ce:c8:b8:99:2a:3b:27:dc:14:e3:f6:39: + e0:04:18:68:80:f7:19:31:9b:89:98:dd:bb:05:de: + 77:83:35:0f:52:ea:8b:e2:21:15:2f:f7:0d:a8:1e: + 74:53:b9:60:e4:c2:6a:38:7d:41:8b:1a:be:e9:40: + 29:4e:48:1b:10:b1:d5:76:44:49:90:0e:d2:d0:73: + 63:17:bf:c9:54:bc:57:03:4a:62:ec:4c:1a:5c:9c: + a1:97:38:4f:2b:81:e5:4f:5b:8c:cb:0b:ea:67:14: + 2d:d7:02:ff:86:2c:40:60:76:39:6a:13:e4:27:0d: + 1e:76:c2:56:bc:d7:dc:c3:0c:60:94:35:08:4b:d2: + 32:30:59:fb:5c:c0:d2:84:7f:e9:fd:ce:2d:be:c4: + b3:bd:f5:e4:b9:1c:13:ac:2f:b0:c6:6a:bd:c7:b4: + b8:f9:84:f2:d0:61:b7:7d:f7:f3:2a:da:78:bf:db: + bb:d4:17:61:11:8a:2e:6a:1e:bc:38:c0:88:22:5d: + f9:ab:0c:35:14:ac:3c:1b:7a:cd:35:c6:c7:ec:27: + 5b:40:88:a7:b3:36:58:91:b8:61:8c:e2 + Signature Algorithm: 1.3.6.1.4.1.2.267.12.8.7 + d5:b8:11:fb:c8:65:c8:dd:ed:28:e1:c3:89:97:cf:02:be:c2: + 6f:aa:91:b8:fd:7a:41:b6:72:f5:f9:24:3c:f4:39:b8:c2:35: + a4:5a:d1:5e:40:73:5d:07:78:44:44:8f:94:59:8a:65:69:eb: + 4c:08:2b:ef:f1:1e:42:f2:f0:19:d7:c0:b3:e1:c1:2c:79:cc: + 15:e5:4b:7c:7c:0e:75:ee:74:c2:b3:55:93:f6:f5:14:89:c8: + a3:67:12:09:d3:77:a7:fc:28:5e:62:9c:40:15:1b:a9:c8:f0: + b1:d8:c8:5c:50:ec:0e:6c:a1:ed:a2:80:45:7d:7f:34:34:bb: + 80:a4:d1:9a:a3:d8:98:81:da:3b:a3:8d:05:fd:3b:47:32:f3: + 0d:b3:d0:ca:96:85:7a:22:c2:5c:ec:77:3d:f1:27:44:44:e1: + fb:48:d5:bb:10:8a:80:74:4d:dc:70:b8:7d:42:0f:dd:dd:a3: + 7f:db:4c:68:cc:0f:b8:87:39:39:49:2c:6f:85:c2:8a:e3:ce: + 22:8e:53:f4:b4:c0:46:69:ad:9a:01:93:dc:93:af:79:58:fb: + 1d:8d:e0:91:cc:a5:a8:c4:37:0a:e0:62:bb:5e:03:a1:d2:7e: + 34:cb:da:c8:72:63:09:3a:3c:3d:5a:f2:6f:20:10:bb:57:08: + c3:a7:ce:fc:c5:9a:01:48:b9:c9:62:1a:b4:40:e3:70:7b:f0: + ea:67:4a:53:23:e6:6c:40:14:ea:4e:04:49:45:78:89:59:fc: + 89:36:6f:e3:14:de:d3:b1:0f:ef:8d:56:a7:0f:f4:fb:f2:47: + 77:45:e5:b7:42:7a:f6:df:2e:f2:f1:f1:72:fd:d3:52:e7:c4: + d2:43:1f:98:74:31:63:da:c4:0d:d6:8f:af:b8:81:57:72:41: + 90:85:e1:e5:63:d4:7b:8b:22:5b:a4:f4:03:54:49:8a:8a:c9: + ad:1d:d0:b6:5f:39:db:94:7f:32:f4:32:d1:5f:ab:ae:c4:e5: + 66:46:11:9f:e9:f6:0e:e8:95:13:87:81:d8:51:2d:55:80:10: + 4f:0a:75:8c:5d:88:30:3c:7f:06:e3:9a:0f:66:8a:69:7a:5d: + 85:30:7c:53:8d:ab:98:2e:90:45:c2:74:36:a2:9b:45:3a:aa: + c1:9d:df:36:b7:cd:d3:b9:82:d6:8c:e8:93:42:24:e7:93:12: + da:1a:63:21:9a:34:b5:b5:6e:34:d3:80:f0:bd:a7:f8:9e:f7: + c6:5d:c1:d8:40:15:dc:14:7d:46:48:36:ea:0a:08:59:17:35: + 84:86:3d:86:e5:70:75:4c:0f:2f:75:6b:8b:d0:58:8a:c9:3b: + 45:93:13:3b:b7:43:23:3c:01:dc:e6:8a:36:ff:95:c8:af:ed: + 81:26:32:bb:d9:44:a1:de:83:27:92:f8:06:fa:3e:49:a3:48: + 12:27:e0:21:e1:46:ef:35:50:fb:5a:1a:91:45:01:77:c5:96: + 5b:41:a5:60:47:fc:43:a4:55:c5:d1:4a:0d:9d:ad:f5:2a:b5: + a4:4c:db:ca:a0:6a:1e:09:a8:f7:26:26:ef:3d:aa:9b:79:88: + 7c:76:68:f2:0d:7e:7a:e8:7e:1c:99:62:f2:26:e7:bf:a0:3e: + 58:44:12:6b:67:f7:1a:ad:d6:b4:97:2c:fd:3a:9d:a5:1b:ec: + a6:a7:0a:f4:cf:a2:28:4e:7d:7e:2b:d8:5f:ed:b7:c7:8e:f7: + 23:b0:21:f3:da:e9:ca:fe:e5:11:c6:3f:79:e7:3e:59:76:c6: + 99:71:37:97:88:85:e2:b4:00:ab:22:51:8a:c9:2c:6a:81:5c: + e3:a4:af:13:60:67:ad:07:b6:e0:92:16:1a:f0:56:c4:47:6c: + a5:51:e9:b2:24:e5:df:b9:32:f6:23:73:2d:ce:3e:eb:bc:ef: + 19:88:48:e5:48:cf:0c:10:e1:1c:f1:0c:67:d0:e6:04:0a:43: + e5:60:fd:70:ea:27:f3:0d:a0:c8:30:3d:3e:51:25:69:a1:46: + 89:e1:f1:b5:84:62:75:1f:e8:ca:10:41:1f:e9:62:00:63:03: + 19:24:12:89:37:27:8f:54:f2:1e:36:19:2a:c2:ac:ae:60:1b: + 5e:89:f4:bc:ca:db:15:31:24:26:85:69:cb:67:e5:e8:8a:50: + dd:05:68:91:40:e4:a4:97:e2:13:5b:ec:8f:10:12:c1:74:20: + b8:e4:c7:d1:55:17:b6:dd:c7:47:f0:d0:3d:42:3c:fe:63:66: + 5a:52:e7:7d:ab:6e:6c:96:ab:a1:e6:fe:e1:4f:66:8c:f4:aa: + f7:97:35:02:80:2d:e1:68:be:8e:de:39:89:25:43:aa:bb:74: + a6:fb:28:e5:03:3c:4d:2b:95:80:20:65:19:f1:47:f3:b1:f9: + 43:21:e8:3d:09:55:a6:62:29:70:42:19:f6:85:65:c4:40:16: + 13:4d:68:66:78:18:02:a2:87:28:04:c6:69:da:ee:cc:23:cd: + 29:2f:bf:1b:a4:51:a8:fe:79:12:d7:f8:71:5b:bf:7c:39:3f: + 4a:02:4e:82:a8:d4:3b:9b:e7:8a:14:20:66:c6:b7:7f:d7:c7: + cb:eb:40:ca:a4:3a:8e:0c:72:b6:69:2c:0a:7e:ca:19:75:c9: + 93:79:3d:86:96:6d:0a:7e:b5:dd:b8:d7:55:b1:45:1e:1b:3f: + e9:5f:49:28:13:e6:c1:93:b4:71:27:48:ae:71:cd:0a:ee:34: + 61:f5:07:ad:2b:b6:26:5e:85:da:8c:ed:ee:ab:88:30:d0:86: + cf:ac:e3:e5:b1:5a:85:02:8e:38:cb:58:97:6e:53:f1:85:22: + f0:60:0e:0e:75:43:6b:05:70:fc:fb:d4:cb:11:90:b5:6b:51: + 6e:35:23:b9:5f:4e:41:63:24:78:8a:c3:6f:21:85:23:c2:36: + 80:49:0a:40:39:a5:8a:5d:08:6c:17:09:68:f1:19:fa:d2:42: + 2d:32:d3:67:61:99:9c:eb:c6:18:9d:80:79:c8:83:b5:6a:19: + bf:55:a0:a3:28:da:f5:19:a7:d3:24:97:44:15:5a:dc:4b:e2: + 11:a8:02:85:89:59:ab:24:fe:1f:8a:84:db:00:86:97:0b:f7: + f5:03:6b:91:ca:1b:14:25:8c:14:38:54:b2:dd:63:fe:03:ff: + 68:b0:6a:4f:36:47:9a:14:2f:61:a0:d7:81:6b:8b:d5:3f:32: + 94:75:68:d1:50:bb:75:4f:5a:ec:d6:35:a1:82:1f:12:61:da: + 7f:db:5f:fb:10:28:95:16:f7:61:cb:f8:c2:23:b3:f1:7a:6c: + 85:f8:11:a5:6f:da:ad:ee:89:88:ef:43:55:08:bd:91:5f:ba: + 2b:76:d7:0e:3a:34:ac:87:0b:99:d9:69:86:3b:26:81:75:f3: + f3:51:8f:79:e4:77:1c:92:39:22:64:bb:fb:ac:21:7f:fd:29: + 21:be:3d:86:77:0a:fd:05:f0:a8:e3:95:cf:92:aa:74:5e:72: + 6e:ff:29:92:6c:8b:70:0c:a0:6e:f5:98:f0:21:ac:4b:db:40: + 66:5a:4f:9a:72:8e:c7:ed:4c:01:0a:c8:c0:36:5a:13:b7:d1: + 0d:c7:0c:5f:2b:b2:04:fd:b8:64:1e:ce:4c:4f:73:49:81:b2: + 9e:a9:db:72:e8:08:4a:7d:00:3f:6c:ad:26:03:ee:e0:fe:a2: + bd:da:05:c9:76:0e:49:a9:1b:12:3b:b5:7a:36:8a:cd:1d:e0: + 01:72:79:ed:d2:8d:86:9c:58:33:8f:69:75:0d:7a:fb:63:20: + 9d:40:06:29:d8:b4:f3:1f:1c:19:b6:b9:55:e5:8f:ca:7c:18: + 23:61:8a:ab:80:16:95:dc:79:69:2c:71:27:0f:4f:41:b4:6a: + db:78:e4:81:f6:bf:99:43:db:5d:72:f9:b3:6d:43:12:a1:3a: + b2:f3:b4:5d:68:ef:89:38:28:5f:cb:33:46:62:27:d6:95:cf: + 84:c8:70:43:70:eb:ef:01:27:2a:14:c0:cf:2a:1a:b7:f3:f0: + 47:46:be:8e:ad:b1:d7:71:4e:68:ce:d6:6f:dd:0a:fa:0d:b6: + 2b:72:ea:38:24:6e:fb:2b:6a:bd:b6:ba:34:04:69:fe:72:0f: + d9:7f:5a:e9:1a:c7:ad:2c:74:71:61:8d:c1:6e:c5:88:40:6e: + 02:ca:10:4f:f8:0d:2a:c5:51:2e:52:ea:b1:c2:55:af:71:e3: + 94:37:4a:58:8b:f5:3c:7c:c5:77:b9:97:9a:59:e6:db:87:b7: + 4f:98:50:de:e8:d6:00:7b:26:0a:e6:ab:f8:33:f8:1d:76:6f: + 71:dc:a6:bb:fb:aa:a6:0a:6a:ec:53:7a:92:b9:05:73:0f:63: + 44:a1:0d:24:7d:44:16:c7:ac:93:db:4e:f7:89:c8:1d:e7:8e: + db:fe:89:64:e9:b7:b3:cf:75:38:8c:d2:ee:15:b9:86:dc:85: + 23:68:ff:89:c8:c5:d3:ea:89:3d:75:02:05:18:94:bd:2b:a9: + 41:d3:ea:c5:c1:bc:97:93:a6:fb:ef:17:47:88:d8:43:09:5a: + 28:9d:06:fe:20:06:49:90:c1:9d:d9:30:c8:bd:d9:65:46:f7: + 6a:16:8d:ca:94:84:23:21:20:aa:10:a8:82:f3:2f:12:c8:3f: + 29:ba:16:eb:47:2f:43:22:7f:7d:a6:18:31:6d:08:52:6b:08: + be:2b:29:db:48:38:28:28:a6:1f:c6:88:68:1f:18:c6:b2:17: + e9:88:5f:75:94:71:49:d8:94:4d:17:3a:cc:2b:e3:12:ea:15: + 65:52:96:3e:de:7a:b5:1b:5c:cc:f3:ba:94:72:8b:54:10:73: + b7:26:74:26:df:54:c7:f5:9a:5c:b0:07:af:47:89:9c:4d:31: + 77:4f:0d:f4:c5:98:e9:e0:48:c3:17:59:eb:45:29:72:5a:bd: + f9:69:c4:08:f9:7e:78:88:de:f0:e1:15:5b:a8:d9:dd:9a:24: + fe:89:20:7f:32:e1:f5:52:ed:89:f6:6e:2d:da:d2:14:51:28: + 61:bc:c5:62:16:de:33:75:cb:34:72:78:2d:6b:c8:3e:a6:0d: + 3f:d4:d5:19:41:47:79:70:a0:9c:37:2a:73:f0:c2:35:ab:30: + be:4f:33:8f:c5:1d:6a:9a:b8:78:6f:e1:5d:f4:f6:3e:ef:08: + 7e:87:7a:57:eb:e6:bf:d1:c7:25:5b:78:e0:ca:d1:3c:1a:2c: + 06:4e:be:b1:5c:c0:c2:18:27:d2:96:d8:a2:c9:1a:37:4b:f3: + 89:71:ef:f7:e5:96:a4:06:e1:4c:b9:9d:1a:1b:01:25:90:70: + df:98:eb:c4:41:68:a9:11:6d:f7:04:93:19:8e:e9:4b:4b:72: + 35:32:56:3b:4c:c5:23:d6:f1:be:11:d3:9a:f2:2d:1a:5c:16: + 23:e5:a9:e1:a2:d6:26:06:8a:e5:97:b7:16:61:1c:4b:d1:67: + b1:fb:de:82:fc:d5:c2:e2:a0:34:18:54:f2:9a:0a:2e:30:e0: + 99:18:cc:dd:25:21:b8:5c:ec:6a:75:6a:bc:c4:f0:1b:be:bd: + 3a:e7:d1:41:53:c2:90:59:48:77:8e:69:b4:0a:07:ea:39:fa: + de:ac:03:23:9e:b3:a3:b9:b6:19:ab:93:ae:48:43:d9:0e:63: + b7:ca:c8:14:9e:7f:62:4d:18:3f:1a:b9:31:2d:40:df:08:a7: + 35:e0:3c:53:04:68:98:e2:3d:61:ce:be:f2:1a:c0:e3:8c:11: + 95:2e:28:77:b7:db:12:0f:7c:61:09:3b:aa:49:f2:8b:f3:24: + 8e:67:3f:9f:ec:98:ad:5f:48:27:f8:45:1f:d9:5f:f8:78:ec: + f7:db:85:85:dd:59:a8:f2:3b:fa:0a:27:9f:4e:af:92:d3:57: + 00:52:b9:3f:1e:ca:8a:f3:b7:58:56:0f:a4:60:33:4d:b7:83: + 9a:91:1e:4a:1f:d1:7f:5c:1d:51:58:a9:4e:84:78:cf:45:d4: + f9:aa:43:03:f5:f7:4c:e7:b3:02:37:db:a9:61:96:25:c3:50: + cb:82:ab:fb:4d:13:44:69:9d:29:f1:76:3e:80:f0:8d:a2:23: + 5b:7f:ba:cd:d3:f9:7b:33:56:96:b2:7f:17:7a:35:31:90:48: + 81:48:e8:f8:59:8c:39:ba:f4:c4:52:d7:ba:63:50:00:06:59: + f9:23:a4:70:43:f3:d1:86:03:1d:95:1b:24:6c:25:f1:cb:c2: + b7:09:8e:1e:6c:14:22:99:57:0c:e2:f0:29:4f:46:ef:bb:d7: + 88:c1:40:4b:de:76:59:80:0d:a4:8f:1e:69:24:24:e8:41:65: + 39:9e:a9:e3:6e:ca:5b:6d:b9:2b:6d:86:d3:93:70:a1:d0:80: + d0:81:27:12:c9:60:21:d0:27:2f:c2:a5:d7:a7:c2:84:c8:e3: + 26:7f:a1:c6:bb:47:4e:e2:75:97:be:da:99:f0:b2:2a:68:a1: + ea:cb:9a:31:65:0f:2b:e6:92:f2:e7:b5:0d:ca:93:c5:2c:85: + ac:ed:8d:4b:34:20:ea:b5:2b:93:9f:4e:da:84:1c:a5:d2:f6: + e5:f4:04:01:ab:88:06:c9:bc:72:5b:bf:2b:1d:27:90:3f:19: + ea:d8:74:63:f9:81:8e:c2:90:6f:68:83:28:9f:98:ea:18:e1: + 3f:96:60:9c:20:11:f4:ee:8e:b9:69:30:b0:42:db:a3:26:3b: + 4f:10:60:36:7c:77:fe:36:fa:5f:2d:41:31:45:53:eb:c8:04: + 92:ee:fe:ee:8c:bd:45:31:6b:47:55:e4:a9:b2:77:ed:ea:7e: + f1:0e:05:e9:50:42:9e:27:6c:2a:2d:5d:6e:ad:bf:37:65:9d: + a7:68:a7:6d:04:c8:e1:1f:4b:54:02:96:0d:6e:2c:c2:9a:2a: + 8a:9b:05:15:10:bf:54:05:2c:13:f0:3e:31:c0:60:5f:20:0e: + 68:ec:d9:ee:93:4b:db:90:7c:b8:cb:b7:07:0e:f5:c2:3f:da: + 93:49:9c:3a:fd:c7:d7:f7:f8:e0:bc:fd:8e:90:b6:5c:07:6a: + b9:bf:14:b5:ed:73:17:94:1f:f0:a0:d1:31:88:77:6d:c3:fc: + 40:9d:dc:95:59:9c:4d:aa:1c:f0:ca:d1:6f:17:56:df:ed:a4: + 75:ab:b4:8d:dd:b3:75:04:80:3f:3a:20:1f:56:39:ca:cf:38: + e9:7f:e1:f4:6d:ee:ed:09:4e:c4:d6:33:e3:b9:97:ab:51:71: + 75:5b:e6:81:63:67:4c:3e:a8:b3:71:94:9a:0e:8b:6f:bc:7e: + ec:e9:1f:74:9d:07:f7:32:ff:51:7e:65:2b:99:dd:cb:8b:5b: + 1a:a3:df:9c:60:81:86:e8:32:3b:1c:4d:89:db:d2:14:ab:05: + 02:49:f0:72:07:17:30:c7:50:39:0b:98:45:ae:b3:df:9d:87: + 58:f9:d2:fd:ad:9e:da:0c:bb:02:3d:1f:7f:75:da:e8:cc:de: + 92:b8:bc:62:c0:2c:a8:7f:d7:12:6f:67:50:f8:47:8d:07:b9: + 41:72:ec:e2:91:bb:17:ee:c4:2f:c9:a0:37:c7:0a:65:dc:2e: + e0:f7:f7:63:2b:96:57:98:38:94:53:16:9e:80:2d:c7:c4:03: + a9:8b:91:b6:38:c4:ef:d8:f3:8c:9f:b1:18:1a:98:2f:9a:40: + 7d:10:3d:e1:ac:10:47:24:04:95:8b:0b:84:fd:bb:56:04:30: + 50:e5:f2:53:c0:e0:23:8c:d1:f1:38:db:1e:1c:42:dc:a7:58: + 9b:96:7b:aa:22:75:bf:99:01:e2:76:24:1a:66:6f:a9:d7:c3: + 76:ae:b8:1f:2e:c8:19:2b:9b:0f:7b:e5:4d:9a:27:94:77:a9: + a2:1c:ea:53:c7:12:8e:04:fa:39:4e:a4:da:dd:20:d0:96:b1: + 45:73:bc:3b:d6:22:4e:e7:0a:f8:7f:88:a4:f9:7e:b0:91:8d: + 5e:2c:42:bc:52:b7:45:61:06:3c:1b:1e:0c:bf:a6:be:bb:fa: + ce:6a:ce:28:ff:a9:25:3a:3c:5a:b8:c1:e3:57:46:1d:c9:32: + 73:63:db:26:14:3e:19:9e:4c:8c:e8:af:19:0a:da:a6:68:6d: + 6e:89:29:e7:81:50:98:9a:28:da:da:d4:e2:68:60:bb:2b:0e: + 2e:82:ee:08:be:f2:0b:7e:57:8d:14:50:44:3c:02:41:90:e3: + 05:eb:bb:52:85:21:42:d8:c2:67:81:e0:54:df:ed:d9:95:6c: + 78:dd:a2:3c:dc:b4:78:79:a2:54:ee:76:a8:79:8d:ec:94:27: + 9a:ea:cb:22:71:a6:13:9b:91:69:18:04:6e:98:4b:b2:b7:d9: + 86:19:f8:1e:6f:89:e6:3d:2b:91:f3:7a:b8:59:3e:97:0d:2e: + ee:bb:6d:53:67:78:31:d4:55:47:cb:8f:67:4f:89:9c:cf:20: + 78:e7:e4:7e:a0:7c:76:05:e6:da:24:66:92:4b:45:96:b1:c3: + 0f:8a:e3:ea:27:11:12:33:83:69:6a:79:48:94:31:48:18:ec: + df:fe:a4:1b:d9:ca:66:7f:49:35:63:c6:e7:44:5a:83:84:9e: + 25:e6:39:49:01:0b:2c:47:16:39:9a:c1:9d:92:63:61:53:a3: + 33:b3:78:32:ce:87:d3:22:e7:09:fc:86:b5:27:f0:3f:f3:06: + 9c:55:9f:c8:d6:58:e1:14:c5:7c:74:aa:41:e5:82:96:6c:38: + d3:0a:10:87:1e:10:be:e8:c6:9b:77:46:6c:03:e1:f0:69:cc: + 3f:ac:c6:64:b9:cd:2b:f4:de:60:5d:b3:f6:0d:b5:5e:c8:ce: + 0d:79:cf:24:39:1c:99:be:25:7c:01:95:df:23:ea:74:e1:c5: + 26:5d:af:d6:f6:a6:42:57:18:88:a0:bb:8f:4a:d7:06:c6:6a: + 8e:ba:fa:eb:ef:4d:0e:93:b2:5a:92:4b:16:71:16:9e:af:46: + 1d:34:7d:78:6c:e0:57:71:b2:a6:31:82:ee:5c:08:59:70:45: + 67:35:75:94:ab:6e:50:4f:4b:7e:44:17:b4:e7:c4:43:c7:9b: + e5:5d:29:7d:6a:c1:3f:cb:4a:06:a3:ec:a3:c2:02:09:2e:29: + 93:e1:79:b9:76:c2:6a:bc:34:70:ac:5a:b0:9a:b8:5c:63:34: + 46:80:27:ac:07:95:25:4b:79:84:25:6e:fe:26:1d:a9:50:61: + d8:d7:30:14:ee:5c:b6:f6:3f:b1:c4:f1:e5:2d:43:b0:00:5c: + 82:f6:51:02:9c:93:a5:27:de:ad:ff:09:30:3f:a8:2d:e3:e0: + 25:c7:47:5f:f5:62:5c:f3:90:50:b3:10:0c:77:3d:59:1a:93: + 88:d4:d9:f3:bf:8e:8d:ad:6b:c1:fa:17:a5:fa:f1:94:f9:4e: + 80:5a:b8:4a:f7:a3:c3:5a:e6:df:51:26:a2:79:07:74:a9:0b: + 7b:cd:9d:4c:ae:04:77:41:b2:90:77:50:e7:cf:ea:63:8f:e3: + 7d:1d:d7:81:13:8d:64:21:2c:b3:01:da:0d:1d:8c:1c:58:e2: + 32:6e:a2:37:a9:88:df:14:88:7e:91:36:ed:03:7f:4c:d0:2d: + cf:87:81:70:16:9c:e6:8d:81:6a:2b:f8:26:a8:14:c3:38:fa: + 37:b0:74:85:a2:4b:3b:16:3b:a4:ee:0b:80:75:6c:8c:29:de: + 17:65:20:59:37:a6:58:74:4f:29:67:4d:5b:f9:df:cb:0e:c5: + 78:a9:86:14:4d:b6:61:59:c2:84:e1:40:e1:cf:3b:fe:b2:48: + d5:d3:d8:6c:a9:e7:38:7b:bb:1e:99:9e:64:4d:63:f2:65:80: + cd:3b:cb:2b:14:de:63:2f:c5:79:fa:79:31:65:60:d4:a0:6c: + 8a:d5:64:29:26:b4:4a:31:a3:69:be:76:a3:93:d4:f1:93:f9: + 81:05:97:e0:86:6a:fa:e9:e9:e1:e4:a7:16:82:c7:74:15:01: + fb:61:a2:0e:c3:80:0f:b9:f9:ab:b9:dd:71:ec:28:5f:29:aa: + 40:a5:27:28:e3:5f:80:b7:10:67:ad:ff:94:1b:2e:33:3a:83: + af:e8:28:0c:5b:c4:8d:93:a1:35:6d:ac:ff:cf:76:5a:94:8d: + 6b:07:66:9b:9c:19:4d:e2:6d:51:77:fe:67:e5:76:5d:ae:5d: + c5:20:7a:81:80:97:a7:b3:92:6a:5e:79:36:fd:ef:a9:ef:36: + 06:6a:f2:c9:4b:ad:73:ae:1c:15:8b:24:e8:02:17:ae:a5:85: + e5:9c:b4:bb:d2:cc:2d:c3:ac:6a:49:0b:44:37:6f:7b:a3:27: + dd:0b:33:3c:c1:12:24:4a:c3:65:77:37:82:2d:e4:3c:a3:2b: + 98:46:98:0d:3e:96:57:2a:70:06:ea:6c:df:f2:d9:b0:ea:1d: + 3a:fa:28:f5:20:e5:1c:8c:22:a7:f2:17:34:3e:a1:2f:10:c9: + 41:ea:f7:f9:0d:1a:c3:24:ab:56:0e:a8:ff:3e:da:3e:ff:89: + e4:36:b2:ad:86:4a:81:60:de:9a:38:a5:d0:0c:19:ba:10:97: + 87:02:82:29:1c:d5:d3:4a:10:0f:5f:77:c0:b6:c4:00:0b:bf: + e9:2a:22:8f:b0:87:79:c6:df:91:a5:3f:ca:5d:f7:4a:50:8f: + 14:9d:fe:f1:bb:c2:5d:a4:8f:9a:00:eb:fd:8c:17:c0:59:d7: + e3:f4:a0:cb:3d:07:e0:54:72:4a:f8:82:3a:89:6f:1c:74:ec: + 18:58:7c:d5:b8:2e:e6:6b:ce:0b:d7:be:6f:29:e5:01:9e:18: + 18:c9:16:62:a5:a6:ed:dc:c4:d4:b0:73:13:f4:9b:e4:b8:f4: + 6a:20:6c:dc:14:75:01:82:90:7b:88:c5:26:0b:3b:9d:77:b8: + 62:09:9e:db:60:68:96:c4:5e:2d:a7:f4:54:41:8f:03:5f:b9: + 9d:ea:47:fe:e5:a5:84:b9:06:6f:db:0d:3e:17:eb:de:13:05: + 6f:e0:95:78:1c:69:b3:a2:a4:3f:c2:4b:e3:39:a0:fc:11:26: + de:dd:56:26:91:ff:ce:67:6e:b6:40:02:64:35:57:2f:f6:93: + 0a:ac:00:55:78:99:c3:29:e6:a9:e1:33:d4:44:2d:22:55:dc: + ab:f2:6f:9a:77:15:36:ec:48:8d:4c:fc:f3:6b:ff:ee:0f:39: + 2a:6d:10:45:4d:ec:52:1d:63:27:07:8d:2f:8b:38:9c:8c:34: + b0:f9:0a:b5:9e:11:0d:9c:e6:1d:93:98:30:6d:01:c0:50:4a: + 2a:bf:de:a1:bc:5c:c6:55:d4:df:79:ae:88:95:d3:7a:a0:72: + 85:45:0e:8b:0a:64:02:f2:f4:9a:43:1c:aa:e2:0a:ea:c1:70: + 9a:38:0e:37:27:89:37:89:2e:a0:e9:45:19:16:22:a0:3e:b1: + 59:63:af:bb:69:b3:95:05:c7:90:0e:37:12:cb:bc:83:68:ea: + b2:dc:4a:b5:c5:66:ae:06:f4:ef:20:6b:e7:1c:69:83:d0:9e: + 19:a3:ec:85:6c:56:f7:cd:b6:e0:fe:67:ba:d8:4d:05:20:de: + fe:68:46:b1:ce:87:42:b0:6d:e7:27:a6:48:13:e4:7d:1a:b6: + a0:83:c7:64:15:91:90:ed:03:00:ee:94:04:41:4a:30:9e:64: + b5:18:a8:11:12:01:99:ac:42:d2:50:c3:f7:43:a9:1d:23:d9: + 5d:71:bd:b8:97:7e:ae:14:ab:5c:40:e9:a9:3f:c6:62:58:50: + aa:c6:66:cd:c4:54:15:51:40:f8:bb:54:42:5c:6d:a1:41:02: + 0b:cc:5a:c5:57:87:bb:29:30:71:86:75:76:5a:17:e9:59:61: + 23:d6:e9:fe:ce:93:32:58:3d:9e:50:76:be:19:80:4c:86:98: + b7:0d:11:0e:0d:8e:0c:7e:d7:c3:5e:3d:e9:51:1f:c4:83:ce: + 8e:38:78:a1:e1:e2:12:de:f2:a3:a1:89:64:a6:03:d1:2b:2b: + 60:23:39:90:41:b0:4a:9a:71:1d:fc:4f:f6:01:39:06:fa:cb: + 11:eb:34:93:0c:d4:97:77:53:e1:e0:b5:47:89:8a:f4:fd:42: + 61:df:c1:66:f7:de:75:d4:0b:1a:27:28:48:5b:5f:a5:ed:28: + 36:4e:64:69:71:78:7d:e9:0e:25:30:39:ab:c6:cc:10:12:92: + a6:c5:d3:ed:59:c9:21:25:39:41:49:66:89:93:9a:9d:bd:25: + 46:56:89:d0:df:f5:0b:1d:5e:7f:a2:c1:ff:00:00:00:00:00: + 00:00:00:00:00:00:00:00:00:00:00:09:12:19:20:22:2d:34: + 3b diff --git a/test_certs/digicert_mldsa-87.csr.text.short b/test_certs/digicert_mldsa-87.csr.text.short new file mode 100644 index 0000000..921e42d --- /dev/null +++ b/test_certs/digicert_mldsa-87.csr.text.short @@ -0,0 +1,2 @@ +X.509v3 Certificate Signing Request (0 unknown) + Subject: MLDSA87 Example diff --git a/test_certs/digicert_mldsa-87.key b/test_certs/digicert_mldsa-87.key new file mode 100644 index 0000000..0ce430f --- /dev/null +++ b/test_certs/digicert_mldsa-87.key @@ -0,0 +1,105 @@ +-----BEGIN PRIVATE KEY----- +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 +-----END PRIVATE KEY----- From 0ae5850bac2115edce6998ccaac91025b8e2ded1 Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Thu, 30 Jan 2025 16:59:24 -0800 Subject: [PATCH 3/6] Add algorithm names and approved PQC algorithms --- certinfo.go | 194 ++++++++++++++++++++++++++++------ test_certs/ML-DSA-44.crt.text | 6 +- test_certs/ML-DSA-65.crt.text | 6 +- test_certs/ML-DSA-87.crt.text | 6 +- 4 files changed, 171 insertions(+), 41 deletions(-) diff --git a/certinfo.go b/certinfo.go index ad03481..efb2115 100644 --- a/certinfo.go +++ b/certinfo.go @@ -70,6 +70,51 @@ var ( oidTPMSpecification = asn1.ObjectIdentifier{2, 23, 133, 2, 16} ) +// Module-Lattice-Based Digital Signature Standard +// https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.204.pdf +// https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration +// https://www.ietf.org/id/draft-ietf-lamps-pq-composite-sigs-03.html +var ( + oidMLDSA44 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 17} // ML-DSA-44 + oidMLDSA65 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 18} // ML-DSA-65 + oidMLDSA87 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 19} // ML-DSA-87 + oidHashMLDSA44 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 32} // HASH-ML-DSA-44 + oidHashMLDSA65 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 33} // HASH-ML-DSA-65 + oidHashMLDSA87 = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 34} // HASH-ML-DSA-87 +) + +// Stateless Hash-Based Digital Signature Standard +// https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.205.pdf +// https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration +// https://www.ietf.org/id/draft-ietf-lamps-x509-slhdsa-03.html +var ( + oidSLHDSASHA2128s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 20} // SLH-DSA-SHA2-128s + oidSLHDSASHA2128f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 21} // SLH-DSA-SHA2-128f + oidSLHDSASHA2192s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 22} // SLH-DSA-SHA2-192s + oidSLHDSASHA2192f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 23} // SLH-DSA-SHA2-192f + oidSLHDSASHA2256s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 24} // SLH-DSA-SHA2-256s + oidSLHDSASHA2256f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 25} // SLH-DSA-SHA2-256f + oidSLHDSASHAKE128s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 26} // SLH-DSA-SHAKE-128s + oidSLHDSASHAKE128f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 27} // SLH-DSA-SHAKE-128f + oidSLHDSASHAKE192s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 28} // SLH-DSA-SHAKE-192s + oidSLHDSASHAKE192f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 29} // SLH-DSA-SHAKE-192f + oidSLHDSASHAKE256s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 30} // SLH-DSA-SHAKE-256s + oidSLHDSASHAKE256f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 31} // SLH-DSA-SHAKE-256f + + oidHashSLHDSASHA2128s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 35} // HASH-SLH-DSA-SHA2-128s + oidHashSLHDSASHA2128f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 36} // HASH-SLH-DSA-SHA2-128f + oidHashSLHDSASHA2192s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 37} // HASH-SLH-DSA-SHA2-192s + oidHashSLHDSASHA2192f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 38} // HASH-SLH-DSA-SHA2-192f + oidHashSLHDSASHA2256s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 39} // HASH-SLH-DSA-SHA2-256s + oidHashSLHDSASHA2256f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 40} // HASH-SLH-DSA-SHA2-256f + oidHashSLHDSASHAKE128s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 41} // HASH-SLH-DSA-SHAKE-128s + oidHashSLHDSASHAKE128f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 42} // HASH-SLH-DSA-SHAKE-128f + oidHashSLHDSASHAKE192s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 43} // HASH-SLH-DSA-SHAKE-192s + oidHashSLHDSASHAKE192f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 44} // HASH-SLH-DSA-SHAKE-192f + oidHashSLHDSASHAKE256s = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 45} // HASH-SLH-DSA-SHAKE-256s + oidHashSLHDSASHAKE256f = asn1.ObjectIdentifier{2, 16, 840, 1, 101, 3, 4, 3, 46} // HASH-SLH-DSA-SHAKE-256f +) + // stepProvisionerType are string representation of the provisioner type (int) // in the step provisioner extension. var stepProvisionerType = [...]string{ @@ -601,8 +646,107 @@ func printSubjAltNames(ext pkix.Extension, dnsNames, emailAddresses []string, ip }) } -func printSignature(sigAlgo string, sig []byte, buf *bytes.Buffer) { - fmt.Fprintf(buf, "%4sSignature Algorithm: %s", "", sigAlgo) +func getUnknownAlgorithmName(oid asn1.ObjectIdentifier) string { + switch { + // ML-DSA + case oid.Equal(oidMLDSA44): + return "ML-DSA-44" + case oid.Equal(oidMLDSA65): + return "ML-DSA-65" + case oid.Equal(oidMLDSA87): + return "ML-DSA-87" + + // Pre-hash ML-DSA + case oid.Equal(oidHashMLDSA44): + return "HashML-DSA-44" + case oid.Equal(oidHashMLDSA65): + return "HashML-DSA-65" + case oid.Equal(oidHashMLDSA87): + return "HashML-DSA-87" + + // SLH-DSA + case oid.Equal(oidSLHDSASHA2128s): + return "SLH-DSA-SHA2-128s" + case oid.Equal(oidSLHDSASHA2128f): + return "SLH-DSA-SHA2-128f" + case oid.Equal(oidSLHDSASHA2192s): + return "SLH-DSA-SHA2-192s" + case oid.Equal(oidSLHDSASHA2192f): + return "SLH-DSA-SHA2-192f" + case oid.Equal(oidSLHDSASHA2256s): + return "SLH-DSA-SHA2-256s" + case oid.Equal(oidSLHDSASHA2256f): + return "SLH-DSA-SHA2-256f" + case oid.Equal(oidSLHDSASHAKE128s): + return "SLH-DSA-SHAKE-128s" + case oid.Equal(oidSLHDSASHAKE128f): + return "SLH-DSA-SHAKE-128f" + case oid.Equal(oidSLHDSASHAKE192s): + return "SLH-DSA-SHAKE-192s" + case oid.Equal(oidSLHDSASHAKE192f): + return "SLH-DSA-SHAKE-192f" + case oid.Equal(oidSLHDSASHAKE256s): + return "SLH-DSA-SHAKE-256s" + case oid.Equal(oidSLHDSASHAKE256f): + return "SLH-DSA-SHAKE-256f" + + // Pre-hash SLH-DSA + case oid.Equal(oidHashSLHDSASHA2128s): + return "HashSLH-DSA-SHA2-128s" + case oid.Equal(oidHashSLHDSASHA2128f): + return "HashSLH-DSA-SHA2-128f" + case oid.Equal(oidHashSLHDSASHA2192s): + return "HashSLH-DSA-SHA2-192s" + case oid.Equal(oidHashSLHDSASHA2192f): + return "HashSLH-DSA-SHA2-192f" + case oid.Equal(oidHashSLHDSASHA2256s): + return "HashSLH-DSA-SHA2-256s" + case oid.Equal(oidHashSLHDSASHA2256f): + return "HashSLH-DSA-SHA2-256f" + case oid.Equal(oidHashSLHDSASHAKE128s): + return "HashSLH-DSA-SHAKE-128s" + case oid.Equal(oidHashSLHDSASHAKE128f): + return "HashSLH-DSA-SHAKE-128f" + case oid.Equal(oidHashSLHDSASHAKE192s): + return "HashSLH-DSA-SHAKE-192s" + case oid.Equal(oidHashSLHDSASHAKE192f): + return "HashSLH-DSA-SHAKE-192f" + case oid.Equal(oidHashSLHDSASHAKE256s): + return "HashSLH-DSA-SHAKE-256s" + case oid.Equal(oidHashSLHDSASHAKE256f): + return "HashSLH-DSA-SHAKE-256f" + + default: + return oid.String() + } +} + +func getCertificateSignatureAlgorithmName(cert *x509.Certificate) string { + if cert.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { + return cert.SignatureAlgorithm.String() + } + + var crt certificate + if rest, err := asn1.Unmarshal(cert.Raw, &crt); err != nil || len(rest) > 0 { + return unknown + } + return getUnknownAlgorithmName(crt.SignatureAlgorithm.Algorithm) +} + +func getCertificateRequestSignatureAlgorithmName(csr *x509.CertificateRequest) string { + if csr.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { + return csr.SignatureAlgorithm.String() + } + + var cr certificateRequest + if rest, err := asn1.Unmarshal(csr.Raw, &cr); err != nil || len(rest) > 0 { + return unknown + } + return getUnknownAlgorithmName(cr.SignatureAlgorithm.Algorithm) +} + +func printCertificateSignature(cert *x509.Certificate, sig []byte, buf *bytes.Buffer) { + fmt.Fprintf(buf, "%4sSignature Algorithm: %s", "", getCertificateSignatureAlgorithmName(cert)) for i, val := range sig { if (i % 18) == 0 { fmt.Fprintf(buf, "\n%9s", "") @@ -615,24 +759,18 @@ func printSignature(sigAlgo string, sig []byte, buf *bytes.Buffer) { fmt.Fprint(buf, "\n") } -func printUnknownSignature(cert *x509.Certificate, buf *bytes.Buffer) { - var crt certificate - if rest, err := asn1.Unmarshal(cert.Raw, &crt); err != nil || len(rest) > 0 { - printSignature(unknown, cert.Signature, buf) - return - } - - printSignature(crt.SignatureAlgorithm.Algorithm.String(), cert.Signature, buf) -} - -func printUnknownSignatureFromRequest(csr *x509.CertificateRequest, buf *bytes.Buffer) { - var cr certificateRequest - if rest, err := asn1.Unmarshal(csr.Raw, &cr); err != nil || len(rest) > 0 { - printSignature(unknown, csr.Signature, buf) - return +func printCertificateRequestSignature(csr *x509.CertificateRequest, sig []byte, buf *bytes.Buffer) { + fmt.Fprintf(buf, "%4sSignature Algorithm: %s", "", getCertificateRequestSignatureAlgorithmName(csr)) + for i, val := range sig { + if (i % 18) == 0 { + fmt.Fprintf(buf, "\n%9s", "") + } + fmt.Fprintf(buf, "%02x", val) + if i != len(sig)-1 { + fmt.Fprint(buf, ":") + } } - - printSignature(cr.SignatureAlgorithm.Algorithm.String(), csr.Signature, buf) + fmt.Fprint(buf, "\n") } func printUnknownPublicKeyAlgorithm(certOrCSR any, buf *bytes.Buffer) { @@ -642,7 +780,7 @@ func printUnknownPublicKeyAlgorithm(certOrCSR any, buf *bytes.Buffer) { if rest, err := asn1.Unmarshal(c.Raw, &crt); err != nil || len(rest) > 0 { break } - fmt.Fprintln(buf, crt.TBSCertificate.PublicKey.Algorithm.Algorithm.String()) + fmt.Fprintln(buf, getUnknownAlgorithmName(crt.TBSCertificate.PublicKey.Algorithm.Algorithm)) fmt.Fprintf(buf, "%16sPublic-Key:\n", "") fmt.Fprintf(buf, "%16sRaw Bytes:", "") bs := crt.TBSCertificate.PublicKey.PublicKey.Bytes @@ -662,7 +800,7 @@ func printUnknownPublicKeyAlgorithm(certOrCSR any, buf *bytes.Buffer) { if rest, err := asn1.Unmarshal(c.Raw, &cr); err != nil || len(rest) > 0 { break } - fmt.Fprintln(buf, cr.TBSCSR.PublicKey.Algorithm.Algorithm) + fmt.Fprintln(buf, getUnknownAlgorithmName(cr.TBSCSR.PublicKey.Algorithm.Algorithm)) fmt.Fprintf(buf, "%16sRaw Bytes:", "") bs := cr.TBSCSR.PublicKey.PublicKey.Bytes for i, val := range bs { @@ -747,7 +885,7 @@ func CertificateText(cert *x509.Certificate) (string, error) { fmt.Fprintf(buf, "%4sData:\n", "") printVersion(cert.Version, buf) fmt.Fprintf(buf, "%8sSerial Number: %d (%#x)\n", "", cert.SerialNumber, cert.SerialNumber.Bytes()) - fmt.Fprintf(buf, "%4sSignature Algorithm: %s\n", "", cert.SignatureAlgorithm) + fmt.Fprintf(buf, "%4sSignature Algorithm: %s\n", "", getCertificateSignatureAlgorithmName(cert)) // Issuer information fmt.Fprintf(buf, "%8sIssuer: ", "") @@ -1291,11 +1429,7 @@ func CertificateText(cert *x509.Certificate) (string, error) { } // Signature - if cert.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { - printSignature(cert.SignatureAlgorithm.String(), cert.Signature, buf) - } else { - printUnknownSignature(cert, buf) - } + printCertificateSignature(cert, cert.Signature, buf) // Optional: Print the full PEM certificate /* @@ -1621,11 +1755,7 @@ func CertificateRequestText(csr *x509.CertificateRequest) (string, error) { } // Signature - if csr.SignatureAlgorithm != x509.UnknownSignatureAlgorithm { - printSignature(csr.SignatureAlgorithm.String(), csr.Signature, buf) - } else { - printUnknownSignatureFromRequest(csr, buf) - } + printCertificateRequestSignature(csr, csr.Signature, buf) return buf.String(), nil } diff --git a/test_certs/ML-DSA-44.crt.text b/test_certs/ML-DSA-44.crt.text index 28189a2..c64e046 100644 --- a/test_certs/ML-DSA-44.crt.text +++ b/test_certs/ML-DSA-44.crt.text @@ -2,14 +2,14 @@ Certificate: Data: Version: 3 (0x2) Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) - Signature Algorithm: 0 + Signature Algorithm: ML-DSA-44 Issuer: O=IETF,CN=LAMPS WG Validity Not Before: Feb 3 04:32:10 2020 UTC Not After : Jan 29 04:32:10 2040 UTC Subject: O=IETF,CN=LAMPS WG Subject Public Key Info: - Public Key Algorithm: 2.16.840.1.101.3.4.3.17 + Public Key Algorithm: ML-DSA-44 Public-Key: Raw Bytes: d7:b2:b4:72:54:aa:e0:db:45:e7:93:0d:4a:98:d2: @@ -107,7 +107,7 @@ Certificate: CA:TRUE X509v3 Subject Key Identifier: 32:9A:07:B1:FA:BB:48:F5:2A:30:9F:11:A1:89:8F:84:8E:23:22:FF - Signature Algorithm: 2.16.840.1.101.3.4.3.17 + Signature Algorithm: ML-DSA-44 67:a8:95:1f:c3:08:e1:2f:68:67:61:1f:dc:25:4b:f4:bc:b5: 14:f7:f5:f2:fd:eb:72:fa:8e:1a:03:00:61:67:7b:84:cd:27: 55:97:d8:31:54:19:59:66:b1:41:67:0c:b0:e8:81:13:46:0d: diff --git a/test_certs/ML-DSA-65.crt.text b/test_certs/ML-DSA-65.crt.text index 79b3a52..4aff8a3 100644 --- a/test_certs/ML-DSA-65.crt.text +++ b/test_certs/ML-DSA-65.crt.text @@ -2,14 +2,14 @@ Certificate: Data: Version: 3 (0x2) Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) - Signature Algorithm: 0 + Signature Algorithm: ML-DSA-65 Issuer: O=IETF,CN=LAMPS WG Validity Not Before: Feb 3 04:32:10 2020 UTC Not After : Jan 29 04:32:10 2040 UTC Subject: O=IETF,CN=LAMPS WG Subject Public Key Info: - Public Key Algorithm: 2.16.840.1.101.3.4.3.18 + Public Key Algorithm: ML-DSA-65 Public-Key: Raw Bytes: 48:68:3d:91:97:8e:31:eb:3d:dd:b8:b0:47:34:82: @@ -150,7 +150,7 @@ Certificate: CA:TRUE X509v3 Subject Key Identifier: 1B:05:63:E3:CD:33:46:14:9C:8C:9E:BC:F2:3B:0A:4E:5A:90:0E:EA - Signature Algorithm: 2.16.840.1.101.3.4.3.18 + Signature Algorithm: ML-DSA-65 11:81:68:68:a9:0c:66:93:4b:db:b1:d1:9c:53:a6:a5:dc:30: 53:5f:f6:dc:c8:66:9b:24:28:4a:e9:31:0e:9a:57:c7:91:87: 02:b5:fa:49:c6:33:be:47:5d:54:92:d9:d7:ee:a3:91:42:68: diff --git a/test_certs/ML-DSA-87.crt.text b/test_certs/ML-DSA-87.crt.text index bbebd13..8d1deab 100644 --- a/test_certs/ML-DSA-87.crt.text +++ b/test_certs/ML-DSA-87.crt.text @@ -2,14 +2,14 @@ Certificate: Data: Version: 3 (0x2) Serial Number: 123456789012345678901234567890123456789012345678 (0x159ffe6f22fd5cc42c524df6fd5e28d0de38f34e) - Signature Algorithm: 0 + Signature Algorithm: ML-DSA-87 Issuer: O=IETF,CN=LAMPS WG Validity Not Before: Feb 3 04:32:10 2020 UTC Not After : Jan 29 04:32:10 2040 UTC Subject: O=IETF,CN=LAMPS WG Subject Public Key Info: - Public Key Algorithm: 2.16.840.1.101.3.4.3.19 + Public Key Algorithm: ML-DSA-87 Public-Key: Raw Bytes: 97:92:bc:ec:2f:24:30:68:6a:82:fc:cf:3c:2f:5f: @@ -192,7 +192,7 @@ Certificate: CA:TRUE X509v3 Subject Key Identifier: 89:88:67:50:B5:7C:24:DB:3F:C0:12:E6:1E:DE:59:75:33:37:37:4F - Signature Algorithm: 2.16.840.1.101.3.4.3.19 + Signature Algorithm: ML-DSA-87 08:78:3d:56:5e:fc:7b:97:44:0f:8b:d9:81:8b:46:6b:e5:38: db:cc:ed:b1:36:44:7d:27:a7:78:dc:9f:7c:7c:f3:2d:14:75: 5b:30:f1:30:84:98:d9:8b:3a:ce:3e:67:9d:7f:13:58:8f:15: From 3b6a4b71e40cfad57358dd6fbb1b1e04e073a780 Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Fri, 31 Jan 2025 10:52:34 -0800 Subject: [PATCH 4/6] Fix typo in docs Co-authored-by: Herman Slatman --- certinfo.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/certinfo.go b/certinfo.go index efb2115..347c47b 100644 --- a/certinfo.go +++ b/certinfo.go @@ -300,7 +300,7 @@ type certificate struct { } // tbsCertificateRequest allows unmarshaling the "To-Be-Signed" principle -// portion of the X.509 certificate requests. +// portion of an X.509 certificate request. type tbsCertificateRequest struct { Raw asn1.RawContent Version int From 5cd612589b7742eae81856a69e10c7462afec04c Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Fri, 31 Jan 2025 11:09:21 -0800 Subject: [PATCH 5/6] Add public key algorithm in short certificates --- certformat.go | 18 ++++++++++++++-- certinfo.go | 24 +++++++++++++++++++++ test_certs/ML-DSA-44.crt.text.short | 2 +- test_certs/ML-DSA-65.crt.text.short | 2 +- test_certs/ML-DSA-87.crt.text.short | 2 +- test_certs/digicert_mldsa-44.csr.text.short | 2 +- test_certs/digicert_mldsa-65.csr.text.short | 2 +- test_certs/digicert_mldsa-87.csr.text.short | 2 +- 8 files changed, 46 insertions(+), 8 deletions(-) diff --git a/certformat.go b/certformat.go index aab4f00..eaf262a 100644 --- a/certformat.go +++ b/certformat.go @@ -54,9 +54,16 @@ func newCertificateShort(cert *x509.Certificate) *certificateShort { typ = "TLS" } + var publicKeyAlgorithm string + if cert.PublicKeyAlgorithm != x509.UnknownPublicKeyAlgorithm { + publicKeyAlgorithm = getPublicKeyAlgorithm(cert.PublicKeyAlgorithm, cert.PublicKey) + } else { + publicKeyAlgorithm = getCertificatePublicKeyAlgorithmName(cert) + } + return &certificateShort{ Type: typ, - PublicKeyAlgorithm: getPublicKeyAlgorithm(cert.PublicKeyAlgorithm, cert.PublicKey), + PublicKeyAlgorithm: publicKeyAlgorithm, SerialNumber: abbreviated(cert.SerialNumber.String()), Subject: cert.Subject.CommonName, Issuer: cert.Issuer.CommonName, @@ -106,8 +113,15 @@ type certificateRequestShort struct { } func newCertificateRequestShort(cr *x509.CertificateRequest) *certificateRequestShort { + var publicKeyAlgorithm string + if cr.PublicKeyAlgorithm != x509.UnknownPublicKeyAlgorithm { + publicKeyAlgorithm = getPublicKeyAlgorithm(cr.PublicKeyAlgorithm, cr.PublicKey) + } else { + publicKeyAlgorithm = getCertificateRequestPublicKeyAlgorithmName(cr) + } + return &certificateRequestShort{ - PublicKeyAlgorithm: getPublicKeyAlgorithm(cr.PublicKeyAlgorithm, cr.PublicKey), + PublicKeyAlgorithm: publicKeyAlgorithm, Subject: cr.Subject.CommonName, SANs: getSANs(cr.Subject.CommonName, cr.DNSNames, cr.IPAddresses, cr.EmailAddresses, cr.URIs), } diff --git a/certinfo.go b/certinfo.go index 347c47b..74e3d15 100644 --- a/certinfo.go +++ b/certinfo.go @@ -745,6 +745,30 @@ func getCertificateRequestSignatureAlgorithmName(csr *x509.CertificateRequest) s return getUnknownAlgorithmName(cr.SignatureAlgorithm.Algorithm) } +func getCertificatePublicKeyAlgorithmName(cert *x509.Certificate) string { + if cert.PublicKeyAlgorithm != x509.UnknownPublicKeyAlgorithm { + return cert.PublicKeyAlgorithm.String() + } + + var crt certificate + if rest, err := asn1.Unmarshal(cert.Raw, &crt); err != nil || len(rest) > 0 { + return unknown + } + return getUnknownAlgorithmName(crt.TBSCertificate.PublicKey.Algorithm.Algorithm) +} + +func getCertificateRequestPublicKeyAlgorithmName(csr *x509.CertificateRequest) string { + if csr.PublicKeyAlgorithm != x509.UnknownPublicKeyAlgorithm { + return csr.PublicKeyAlgorithm.String() + } + + var cr certificateRequest + if rest, err := asn1.Unmarshal(csr.Raw, &cr); err != nil || len(rest) > 0 { + return unknown + } + return getUnknownAlgorithmName(cr.TBSCSR.PublicKey.Algorithm.Algorithm) +} + func printCertificateSignature(cert *x509.Certificate, sig []byte, buf *bytes.Buffer) { fmt.Fprintf(buf, "%4sSignature Algorithm: %s", "", getCertificateSignatureAlgorithmName(cert)) for i, val := range sig { diff --git a/test_certs/ML-DSA-44.crt.text.short b/test_certs/ML-DSA-44.crt.text.short index 62e563d..340d007 100644 --- a/test_certs/ML-DSA-44.crt.text.short +++ b/test_certs/ML-DSA-44.crt.text.short @@ -1,4 +1,4 @@ -X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] +X.509v3 Intermediate CA Certificate (ML-DSA-44) [Serial: 1234...5678] Subject: LAMPS WG Issuer: LAMPS WG Valid from: 2020-02-03T04:32:10Z diff --git a/test_certs/ML-DSA-65.crt.text.short b/test_certs/ML-DSA-65.crt.text.short index 62e563d..0e15b28 100644 --- a/test_certs/ML-DSA-65.crt.text.short +++ b/test_certs/ML-DSA-65.crt.text.short @@ -1,4 +1,4 @@ -X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] +X.509v3 Intermediate CA Certificate (ML-DSA-65) [Serial: 1234...5678] Subject: LAMPS WG Issuer: LAMPS WG Valid from: 2020-02-03T04:32:10Z diff --git a/test_certs/ML-DSA-87.crt.text.short b/test_certs/ML-DSA-87.crt.text.short index 62e563d..d110d3a 100644 --- a/test_certs/ML-DSA-87.crt.text.short +++ b/test_certs/ML-DSA-87.crt.text.short @@ -1,4 +1,4 @@ -X.509v3 Intermediate CA Certificate (0 unknown) [Serial: 1234...5678] +X.509v3 Intermediate CA Certificate (ML-DSA-87) [Serial: 1234...5678] Subject: LAMPS WG Issuer: LAMPS WG Valid from: 2020-02-03T04:32:10Z diff --git a/test_certs/digicert_mldsa-44.csr.text.short b/test_certs/digicert_mldsa-44.csr.text.short index 415417a..c8ab0a4 100644 --- a/test_certs/digicert_mldsa-44.csr.text.short +++ b/test_certs/digicert_mldsa-44.csr.text.short @@ -1,2 +1,2 @@ -X.509v3 Certificate Signing Request (0 unknown) +X.509v3 Certificate Signing Request (1.3.6.1.4.1.2.267.12.4.4) Subject: MLDSA44 Example diff --git a/test_certs/digicert_mldsa-65.csr.text.short b/test_certs/digicert_mldsa-65.csr.text.short index a317f98..4144530 100644 --- a/test_certs/digicert_mldsa-65.csr.text.short +++ b/test_certs/digicert_mldsa-65.csr.text.short @@ -1,2 +1,2 @@ -X.509v3 Certificate Signing Request (0 unknown) +X.509v3 Certificate Signing Request (1.3.6.1.4.1.2.267.12.6.5) Subject: MLDSA65 Example diff --git a/test_certs/digicert_mldsa-87.csr.text.short b/test_certs/digicert_mldsa-87.csr.text.short index 921e42d..8f46468 100644 --- a/test_certs/digicert_mldsa-87.csr.text.short +++ b/test_certs/digicert_mldsa-87.csr.text.short @@ -1,2 +1,2 @@ -X.509v3 Certificate Signing Request (0 unknown) +X.509v3 Certificate Signing Request (1.3.6.1.4.1.2.267.12.8.7) Subject: MLDSA87 Example From 0fdb83657044a09a8c174947f4083065bc61e82f Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Tue, 31 Mar 2026 13:22:29 -0700 Subject: [PATCH 6/6] Fix linter error --- certformat.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/certformat.go b/certformat.go index 8ac05bb..b96749c 100644 --- a/certformat.go +++ b/certformat.go @@ -22,7 +22,7 @@ type formatBuffer struct { // Writef writes a string formated using fmt.Sprintf. func (b *formatBuffer) Writef(format string, args ...interface{}) (int, error) { - return b.Buffer.WriteString(fmt.Sprintf(format, args...)) + return fmt.Fprintf(&b.Buffer, format, args...) } type certificateShort struct {