Skip to content

Commit a1afebf

Browse files
committed
Add x509_import_spki() to timing.c
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
1 parent 0354a95 commit a1afebf

File tree

9 files changed

+497
-0
lines changed

9 files changed

+497
-0
lines changed

demos/timing.c

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,10 @@ static ulong64 t_read(void)
123123

124124
static void init_timer(void)
125125
{
126+
#if defined(LTC_NO_ASM)
127+
skew = 0;
128+
fprintf(stderr, "LTC_NO_ASM\nClock Skew: %lu\n", (unsigned long)skew);
129+
#else
126130
ulong64 c1, c2, t1, t2;
127131
unsigned long y1;
128132

@@ -137,6 +141,7 @@ static void init_timer(void)
137141
}
138142
skew = c2 - c1;
139143
fprintf(stderr, "Clock Skew: %lu\n", (unsigned long)skew);
144+
#endif
140145
}
141146

142147
static void time_keysched(void)
@@ -1371,6 +1376,56 @@ static void time_encmacs(void)
13711376
time_encmacs_(32);
13721377
}
13731378

1379+
static void time_x509_import_spki(const char *pem)
1380+
{
1381+
const ltc_x509_certificate *cert;
1382+
FILE *f;
1383+
int err, y, n;
1384+
ltc_pka_key k[8] = {0};
1385+
ulong64 t1, t2;
1386+
f = fopen(pem, "r");
1387+
if ((err = x509_import_pem_filehandle(f, &cert)) != CRYPT_OK) {
1388+
fprintf(stderr, "\nx509_import_pem_filehandle() error... %s\n", error_to_string(err));
1389+
exit(EXIT_FAILURE);
1390+
}
1391+
if ((err = x509_import_spki(cert->asn1->data, cert->asn1->size, k, NULL)) != CRYPT_OK) {
1392+
fprintf(stderr, "\nx509_import_spki() error... %s\n", error_to_string(err));
1393+
exit(EXIT_FAILURE);
1394+
}
1395+
pka_key_free(k);
1396+
#define DO1 x509_import_spki(cert->asn1->data, cert->asn1->size, &k[n++], NULL);
1397+
#define DO2 DO1 DO1
1398+
#define DO4 DO2 DO2
1399+
#define DO8 DO4 DO4
1400+
t2 = -1;
1401+
for (y = 0; y < 1000; y++) {
1402+
n = 0;
1403+
t_start();
1404+
t1 = t_read();
1405+
DO8;
1406+
t1 = (t_read() - t1)>>1;
1407+
if (t1 < t2) t2 = t1;
1408+
for (n = LTC_ARRAY_SIZE(k); n --> 0;) {
1409+
pka_key_free(&k[n]);
1410+
}
1411+
}
1412+
fprintf(stderr, "x509 %-20s: %9"PRI64"u cycles\n", strrchr(pem, '/') + 1, t2/LTC_ARRAY_SIZE(k));
1413+
x509_free(&cert);
1414+
fclose(f);
1415+
}
1416+
1417+
static void time_x509(void)
1418+
{
1419+
time_x509_import_spki("tests/x509/gnutls/cert-rsa-pss.pem");
1420+
time_x509_import_spki("tests/x509/LTC_CA.pem");
1421+
time_x509_import_spki("tests/x509/LTC_S0.pem");
1422+
time_x509_import_spki("tests/x509/LTC_SS0.pem");
1423+
time_x509_import_spki("tests/x509/secp384r1.pem");
1424+
time_x509_import_spki("tests/x509/secp521r1.pem");
1425+
time_x509_import_spki("tests/x509/invalid/LTC_SSS0.pem");
1426+
time_x509_import_spki("tests/x509/invalid/secp224r1.pem");
1427+
}
1428+
13741429
static void LTC_NORETURN die(int status)
13751430
{
13761431
FILE* o = status == EXIT_SUCCESS ? stdout : stderr;
@@ -1410,6 +1465,7 @@ const struct
14101465
LTC_TEST_FN(dsa),
14111466
LTC_TEST_FN(ecc),
14121467
LTC_TEST_FN(dh),
1468+
LTC_TEST_FN(x509),
14131469
};
14141470
char *single_test = NULL;
14151471
unsigned int i;

tests/x509/LTC_CA.pem

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIBezCCAS2gAwIBAgIIb2eiAYNfDJswBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
3+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxNDAwWhgPNzAyNTA5
4+
MDMwODE0MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
5+
UjAwKjAFBgMrZXADIQDVj/MS930omIOasHjkoGSoueCZn8mcZUz1xQKqXHDk3KN1
6+
MHMwEgYDVR0TAQH/BAgwBgEB/wIBAjAdBgNVHQ4EFgQUQ+2nrtlkdUz4WHS3PyWX
7+
Fsx0OnkwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglghkgBhvhC
8+
AQ0EERYPeGNhIGNlcnRpZmljYXRlMAUGAytlcANBAAYBDKvYaZ35dk0HDuQeGq06
9+
R9LtgUnsD9GgjXbzC2fathjli91Ff3u7vlWLH6aXi8dd87e1Mq6XJGfIjMHn4Q4=
10+
-----END CERTIFICATE-----

tests/x509/LTC_S0.pem

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDrTCCA1+gAwIBAgIIdmUTeeSNp0gwBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
3+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxODAwWhgPNjAyNTA5
4+
MDMwODE4MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
5+
UzAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCMlz0PIJA6I543Z/Ij
6+
WOVyC/0+9/tPuVqviIWNDn9nO1FSyt8yCeq9JkHzuRrRmUTwAdc1r7MqFDy4bJdp
7+
l13clraYPRSKiRkOzvaoluatfBYfgVRuhCshE6yDlMjdBCo3ZMBL4Sh6CUtmLUuI
8+
r5Wc4+/Voh6V49vMBnRlt2XAdZIWU6Se3l7ii51GTMU6PJmif5qvOfRQxyp5XOkK
9+
OlgE0CwnvNMb6LwqsqyMdsabo5Y/+fewer2XUf/1bt9Q93mMDN5r/Usjz9d4jFsW
10+
LEcbDlVQ2CM7jexULQmHmIHMaTrWgnbGMBy4vKXgAr3l0VvFxez7C/ldCv/PNKSO
11+
FvqBWeJb/QRP9HuZ2KcrjPZm/QiegWmkKXuUVbSZ5mZH1g5QKSGcTjIGH2c6Uxar
12+
i2TGVnYpf+YZjghK9IOx2cwc76r2f3fp4fBNgUGUHmoId5M3DNYL1b+bPtarcsCF
13+
z6tiKRk1bLRmSF2dwzm0jO0S3Lp4pNzXWbGNuVIkXh30wTZe0/UQmvR8uHjRbgVy
14+
l7gHMBWTaFvFZwXCjidxzK6QeB2Xbja5SNfvRCHI/K9LB1TTrPV1cAZYtzqaO5qF
15+
ezQneNKRLmFyPAZimQE09BPV+JmK+UzOOUZ3SJeCKSXAPBJzo0t8RWTtpPBgVwJM
16+
r/K2ll68CVk+VeHOoG6XbN01BQIDAQABo4GsMIGpMBIGA1UdEwEB/wQIMAYBAf8C
17+
AQEwHQYDVR0OBBYEFEExMVazRjdT5VvsDkfvI+pOjeYQMB8GA1UdIwQYMBaAFEPt
18+
p67ZZHVM+Fh0tz8llxbMdDp5MAsGA1UdDwQEAwIBBjATBgNVHSUEDDAKBggrBgEF
19+
BQcDAjARBglghkgBhvhCAQEEBAMCAAcwHgYJYIZIAYb4QgENBBEWD3hjYSBjZXJ0
20+
aWZpY2F0ZTAFBgMrZXADQQCzEr3m4hDVAkPAtDgh76cRLxFw987XGN0mfT0ZDurK
21+
SF0S51g6g/v7rrHHiCxALLf6s70TihkLPVDeaIL9ik4M
22+
-----END CERTIFICATE-----
23+
-----BEGIN CERTIFICATE-----
24+
MIIBezCCAS2gAwIBAgIIb2eiAYNfDJswBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
25+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxNDAwWhgPNzAyNTA5
26+
MDMwODE0MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
27+
UjAwKjAFBgMrZXADIQDVj/MS930omIOasHjkoGSoueCZn8mcZUz1xQKqXHDk3KN1
28+
MHMwEgYDVR0TAQH/BAgwBgEB/wIBAjAdBgNVHQ4EFgQUQ+2nrtlkdUz4WHS3PyWX
29+
Fsx0OnkwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglghkgBhvhC
30+
AQ0EERYPeGNhIGNlcnRpZmljYXRlMAUGAytlcANBAAYBDKvYaZ35dk0HDuQeGq06
31+
R9LtgUnsD9GgjXbzC2fathjli91Ff3u7vlWLH6aXi8dd87e1Mq6XJGfIjMHn4Q4=
32+
-----END CERTIFICATE-----

tests/x509/LTC_SS0.pem

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIEazCCAlOgAwIBAgIIaxPLdClfRLwwDQYJKoZIhvcNAQELBQAwJzEUMBIGA1UE
3+
ChMLTGliVG9tQ3J5cHQxDzANBgNVBAMTBkxUQyBTMDAgFw0yNTA5MDMwODIyMDBa
4+
GA81MDI1MDkwMzA4MjIwMFowKDEUMBIGA1UEChMLTGliVG9tQ3J5cHQxEDAOBgNV
5+
BAMTB0xUQyBTUzAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC0lSWq
6+
0cFHUL5qqkKvFm453nLj/1dPyxsQ2sM2bjUarj25jhHg/C93e+GDaD/uXJR4I87c
7+
hUHzoHusC3glfqVFQCtIP2M8jOD57zpdegueElWoCdsj7JnETekVSZ/jdAq0PNKP
8+
jiMxcF5sa3i2UaN1ab+cjs2HLur458xqc27H/+NVeTA6NOI11MqkQc+ScaIC1gV2
9+
jlhWmik88bxprBbhm/YrUdi/cmGfL34borcNx31k4Q3tDBxuLz4lohacdpRcLdCC
10+
i4GS70Mciy9nwt+/juLKT9uLLtyluaG970nMO2pqTTpwhrGLNdM08Q6gddNA+FhO
11+
Tv818DyMloJ+FIXZAgMBAAGjgZcwgZQwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNV
12+
HQ4EFgQU2NRl8GslF4DwnOB0IiruF12sqEowHwYDVR0jBBgwFoAUQTExVrNGN1Pl
13+
W+wOR+8j6k6N5hAwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglg
14+
hkgBhvhCAQ0EERYPeGNhIGNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4ICAQAt
15+
y+dHcKWYp+MNt3r3aFO1toi9VJ4L9ySwntV0PHbvONLgFEp8zoTzKOC+OkdcbLU+
16+
J9mgpQ1JxwFmYaZATPTDvCi7/bfCekjDdPsyeXRdUcMhq8wu3K0P40xF1R1j7WWR
17+
ZqdtMlvD1k2LJSU6Bwt6uROZA2kGVx+TpVb3KttMoqRzjz2KNdyx/kXTdKFmL9Ip
18+
3icyhLXPEiT5o8wdgRDOwuQwWWxEKaXl0IvAJykG8dBXEDcF4mcmFcp9my9dudRX
19+
NBI7n0t1/ItA6mQ7hOL1Xflgqo4kmm5/oZzQcYLTapW0LGSC39rPvNTY5Sf6P7TN
20+
KYgTUgW6WaUgobZjpwuQxgcrohjdXcx03745g2e9eY5eJTRVlbDlLmwdxg7a/joO
21+
2PXpUg79FixMdmt8LARrLbDEVlfB5N5HilB+3J7riWU33nZRymE8w7AR/HMIV+9i
22+
T9Ue0+6lAL+Mz9zLTviQfdz5xOqo0ngEeWTs8HOpjiwdGkB5uUEkwhhnXZJlNICN
23+
ebo7IG0OpfPKhO82i2xFA6uZzJvTv+3G1ih/LwL+MzJVfLxnuuL7DBbv7d9lB4cO
24+
ooMOOZMH9okthuKLk20a0VdmPAQ9xF8KhIgutajEXAGWhayXoGugMNRjWrJm6lUX
25+
d8kK4AEM2eDZWo11GxAdU1XqIOWCLdV95eWfkZo7gg==
26+
-----END CERTIFICATE-----
27+
-----BEGIN CERTIFICATE-----
28+
MIIDrTCCA1+gAwIBAgIIdmUTeeSNp0gwBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
29+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxODAwWhgPNjAyNTA5
30+
MDMwODE4MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
31+
UzAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCMlz0PIJA6I543Z/Ij
32+
WOVyC/0+9/tPuVqviIWNDn9nO1FSyt8yCeq9JkHzuRrRmUTwAdc1r7MqFDy4bJdp
33+
l13clraYPRSKiRkOzvaoluatfBYfgVRuhCshE6yDlMjdBCo3ZMBL4Sh6CUtmLUuI
34+
r5Wc4+/Voh6V49vMBnRlt2XAdZIWU6Se3l7ii51GTMU6PJmif5qvOfRQxyp5XOkK
35+
OlgE0CwnvNMb6LwqsqyMdsabo5Y/+fewer2XUf/1bt9Q93mMDN5r/Usjz9d4jFsW
36+
LEcbDlVQ2CM7jexULQmHmIHMaTrWgnbGMBy4vKXgAr3l0VvFxez7C/ldCv/PNKSO
37+
FvqBWeJb/QRP9HuZ2KcrjPZm/QiegWmkKXuUVbSZ5mZH1g5QKSGcTjIGH2c6Uxar
38+
i2TGVnYpf+YZjghK9IOx2cwc76r2f3fp4fBNgUGUHmoId5M3DNYL1b+bPtarcsCF
39+
z6tiKRk1bLRmSF2dwzm0jO0S3Lp4pNzXWbGNuVIkXh30wTZe0/UQmvR8uHjRbgVy
40+
l7gHMBWTaFvFZwXCjidxzK6QeB2Xbja5SNfvRCHI/K9LB1TTrPV1cAZYtzqaO5qF
41+
ezQneNKRLmFyPAZimQE09BPV+JmK+UzOOUZ3SJeCKSXAPBJzo0t8RWTtpPBgVwJM
42+
r/K2ll68CVk+VeHOoG6XbN01BQIDAQABo4GsMIGpMBIGA1UdEwEB/wQIMAYBAf8C
43+
AQEwHQYDVR0OBBYEFEExMVazRjdT5VvsDkfvI+pOjeYQMB8GA1UdIwQYMBaAFEPt
44+
p67ZZHVM+Fh0tz8llxbMdDp5MAsGA1UdDwQEAwIBBjATBgNVHSUEDDAKBggrBgEF
45+
BQcDAjARBglghkgBhvhCAQEEBAMCAAcwHgYJYIZIAYb4QgENBBEWD3hjYSBjZXJ0
46+
aWZpY2F0ZTAFBgMrZXADQQCzEr3m4hDVAkPAtDgh76cRLxFw987XGN0mfT0ZDurK
47+
SF0S51g6g/v7rrHHiCxALLf6s70TihkLPVDeaIL9ik4M
48+
-----END CERTIFICATE-----
49+
-----BEGIN CERTIFICATE-----
50+
MIIBezCCAS2gAwIBAgIIb2eiAYNfDJswBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
51+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxNDAwWhgPNzAyNTA5
52+
MDMwODE0MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
53+
UjAwKjAFBgMrZXADIQDVj/MS930omIOasHjkoGSoueCZn8mcZUz1xQKqXHDk3KN1
54+
MHMwEgYDVR0TAQH/BAgwBgEB/wIBAjAdBgNVHQ4EFgQUQ+2nrtlkdUz4WHS3PyWX
55+
Fsx0OnkwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglghkgBhvhC
56+
AQ0EERYPeGNhIGNlcnRpZmljYXRlMAUGAytlcANBAAYBDKvYaZ35dk0HDuQeGq06
57+
R9LtgUnsD9GgjXbzC2fathjli91Ff3u7vlWLH6aXi8dd87e1Mq6XJGfIjMHn4Q4=
58+
-----END CERTIFICATE-----

tests/x509/ed25519.pem

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDFjCCAf6gAwIBAgIISwSxqMsnSjcwDQYJYIZIAWUDBAMQBQAwKDEUMBIGA1UE
3+
ChMLTGliVG9tQ3J5cHQxEDAOBgNVBAMTB0xUQyBTUzAwIBcNMjUwOTA1MTM0MTAw
4+
WhgPMzAyNTA5MDUxMzQxMDBaMHAxFDASBgNVBAoTC0xpYlRvbUNyeXB0MSgwJgYD
5+
VQQDDB9lZDI1NTE5QGxpYnRvbWNyeXB0LmV4YW1wbGUuY29tMS4wLAYJKoZIhvcN
6+
AQkBFh9lZDI1NTE5QGxpYnRvbWNyeXB0LmV4YW1wbGUuY29tMCowBQYDK2VwAyEA
7+
u+NzLpyeUIfFdC7RTAX9uBu5/U6I8PSYrDyExgaYz4mjgfMwgfAwDAYDVR0TAQH/
8+
BAIwADAdBgNVHQ4EFgQUPaSlHXCQxXQzPqiHmydBKzakshIwHwYDVR0jBBgwFoAU
9+
2NRl8GslF4DwnOB0IiruF12sqEowCwYDVR0PBAQDAgO4MBMGA1UdJQQMMAoGCCsG
10+
AQUFBwMCMEsGA1UdEQREMEKBH2VkMjU1MTlAbGlidG9tY3J5cHQuZXhhbXBsZS5j
11+
b22HBMAAAnuIByqCWQYHCFqHECABDbgAAAAAAAAAAABsdGMwEQYJYIZIAYb4QgEB
12+
BAQDAgWgMB4GCWCGSAGG+EIBDQQRFg94Y2EgY2VydGlmaWNhdGUwDQYJYIZIAWUD
13+
BAMQBQADggEBAE2p5gmo/7PgWLQgbWOfYcQ1MQrYNVybjLee7RjMkAbLk/+G9p4U
14+
EBq5bRkClqS6KqExuZQxUk2TlxSimExO1WNN3FDeiE4G+Hih9xK/rFsUEg2TLwYt
15+
Jd8ZJGT+bvo6DYHNSfWLWSJSNkinE6ZUJiu7875JH9OnxGRHqajfUnF/TCer+RLw
16+
WNzLk1ZSDDajjZ/gG+EFmqs1WYwvfywLjQdIUJoDRFySMRxzVEgAD6M7IDIOiZTn
17+
pyJ/X9K4PUDKkbJPaDE8qB8qNPmm/ylk9UPij6f5utlE7Ns9eNu1RpYr4U5eD3C9
18+
nSfDXqD/K6edL+tUUpR04mHHVDx+4usXU7s=
19+
-----END CERTIFICATE-----
20+
-----BEGIN CERTIFICATE-----
21+
MIIEazCCAlOgAwIBAgIIaxPLdClfRLwwDQYJKoZIhvcNAQELBQAwJzEUMBIGA1UE
22+
ChMLTGliVG9tQ3J5cHQxDzANBgNVBAMTBkxUQyBTMDAgFw0yNTA5MDMwODIyMDBa
23+
GA81MDI1MDkwMzA4MjIwMFowKDEUMBIGA1UEChMLTGliVG9tQ3J5cHQxEDAOBgNV
24+
BAMTB0xUQyBTUzAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC0lSWq
25+
0cFHUL5qqkKvFm453nLj/1dPyxsQ2sM2bjUarj25jhHg/C93e+GDaD/uXJR4I87c
26+
hUHzoHusC3glfqVFQCtIP2M8jOD57zpdegueElWoCdsj7JnETekVSZ/jdAq0PNKP
27+
jiMxcF5sa3i2UaN1ab+cjs2HLur458xqc27H/+NVeTA6NOI11MqkQc+ScaIC1gV2
28+
jlhWmik88bxprBbhm/YrUdi/cmGfL34borcNx31k4Q3tDBxuLz4lohacdpRcLdCC
29+
i4GS70Mciy9nwt+/juLKT9uLLtyluaG970nMO2pqTTpwhrGLNdM08Q6gddNA+FhO
30+
Tv818DyMloJ+FIXZAgMBAAGjgZcwgZQwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNV
31+
HQ4EFgQU2NRl8GslF4DwnOB0IiruF12sqEowHwYDVR0jBBgwFoAUQTExVrNGN1Pl
32+
W+wOR+8j6k6N5hAwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglg
33+
hkgBhvhCAQ0EERYPeGNhIGNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4ICAQAt
34+
y+dHcKWYp+MNt3r3aFO1toi9VJ4L9ySwntV0PHbvONLgFEp8zoTzKOC+OkdcbLU+
35+
J9mgpQ1JxwFmYaZATPTDvCi7/bfCekjDdPsyeXRdUcMhq8wu3K0P40xF1R1j7WWR
36+
ZqdtMlvD1k2LJSU6Bwt6uROZA2kGVx+TpVb3KttMoqRzjz2KNdyx/kXTdKFmL9Ip
37+
3icyhLXPEiT5o8wdgRDOwuQwWWxEKaXl0IvAJykG8dBXEDcF4mcmFcp9my9dudRX
38+
NBI7n0t1/ItA6mQ7hOL1Xflgqo4kmm5/oZzQcYLTapW0LGSC39rPvNTY5Sf6P7TN
39+
KYgTUgW6WaUgobZjpwuQxgcrohjdXcx03745g2e9eY5eJTRVlbDlLmwdxg7a/joO
40+
2PXpUg79FixMdmt8LARrLbDEVlfB5N5HilB+3J7riWU33nZRymE8w7AR/HMIV+9i
41+
T9Ue0+6lAL+Mz9zLTviQfdz5xOqo0ngEeWTs8HOpjiwdGkB5uUEkwhhnXZJlNICN
42+
ebo7IG0OpfPKhO82i2xFA6uZzJvTv+3G1ih/LwL+MzJVfLxnuuL7DBbv7d9lB4cO
43+
ooMOOZMH9okthuKLk20a0VdmPAQ9xF8KhIgutajEXAGWhayXoGugMNRjWrJm6lUX
44+
d8kK4AEM2eDZWo11GxAdU1XqIOWCLdV95eWfkZo7gg==
45+
-----END CERTIFICATE-----
46+
-----BEGIN CERTIFICATE-----
47+
MIIDrTCCA1+gAwIBAgIIdmUTeeSNp0gwBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
48+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxODAwWhgPNjAyNTA5
49+
MDMwODE4MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
50+
UzAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCMlz0PIJA6I543Z/Ij
51+
WOVyC/0+9/tPuVqviIWNDn9nO1FSyt8yCeq9JkHzuRrRmUTwAdc1r7MqFDy4bJdp
52+
l13clraYPRSKiRkOzvaoluatfBYfgVRuhCshE6yDlMjdBCo3ZMBL4Sh6CUtmLUuI
53+
r5Wc4+/Voh6V49vMBnRlt2XAdZIWU6Se3l7ii51GTMU6PJmif5qvOfRQxyp5XOkK
54+
OlgE0CwnvNMb6LwqsqyMdsabo5Y/+fewer2XUf/1bt9Q93mMDN5r/Usjz9d4jFsW
55+
LEcbDlVQ2CM7jexULQmHmIHMaTrWgnbGMBy4vKXgAr3l0VvFxez7C/ldCv/PNKSO
56+
FvqBWeJb/QRP9HuZ2KcrjPZm/QiegWmkKXuUVbSZ5mZH1g5QKSGcTjIGH2c6Uxar
57+
i2TGVnYpf+YZjghK9IOx2cwc76r2f3fp4fBNgUGUHmoId5M3DNYL1b+bPtarcsCF
58+
z6tiKRk1bLRmSF2dwzm0jO0S3Lp4pNzXWbGNuVIkXh30wTZe0/UQmvR8uHjRbgVy
59+
l7gHMBWTaFvFZwXCjidxzK6QeB2Xbja5SNfvRCHI/K9LB1TTrPV1cAZYtzqaO5qF
60+
ezQneNKRLmFyPAZimQE09BPV+JmK+UzOOUZ3SJeCKSXAPBJzo0t8RWTtpPBgVwJM
61+
r/K2ll68CVk+VeHOoG6XbN01BQIDAQABo4GsMIGpMBIGA1UdEwEB/wQIMAYBAf8C
62+
AQEwHQYDVR0OBBYEFEExMVazRjdT5VvsDkfvI+pOjeYQMB8GA1UdIwQYMBaAFEPt
63+
p67ZZHVM+Fh0tz8llxbMdDp5MAsGA1UdDwQEAwIBBjATBgNVHSUEDDAKBggrBgEF
64+
BQcDAjARBglghkgBhvhCAQEEBAMCAAcwHgYJYIZIAYb4QgENBBEWD3hjYSBjZXJ0
65+
aWZpY2F0ZTAFBgMrZXADQQCzEr3m4hDVAkPAtDgh76cRLxFw987XGN0mfT0ZDurK
66+
SF0S51g6g/v7rrHHiCxALLf6s70TihkLPVDeaIL9ik4M
67+
-----END CERTIFICATE-----
68+
-----BEGIN CERTIFICATE-----
69+
MIIBezCCAS2gAwIBAgIIb2eiAYNfDJswBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
70+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxNDAwWhgPNzAyNTA5
71+
MDMwODE0MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
72+
UjAwKjAFBgMrZXADIQDVj/MS930omIOasHjkoGSoueCZn8mcZUz1xQKqXHDk3KN1
73+
MHMwEgYDVR0TAQH/BAgwBgEB/wIBAjAdBgNVHQ4EFgQUQ+2nrtlkdUz4WHS3PyWX
74+
Fsx0OnkwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglghkgBhvhC
75+
AQ0EERYPeGNhIGNlcnRpZmljYXRlMAUGAytlcANBAAYBDKvYaZ35dk0HDuQeGq06
76+
R9LtgUnsD9GgjXbzC2fathjli91Ff3u7vlWLH6aXi8dd87e1Mq6XJGfIjMHn4Q4=
77+
-----END CERTIFICATE-----

tests/x509/invalid/LTC_SSS0.pem

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIC6TCCAdGgAwIBAgIIWKbGS7FFfFEwDQYJKoZIhvcNAQELBQAwKDEUMBIGA1UE
3+
ChMLTGliVG9tQ3J5cHQxEDAOBgNVBAMTB0xUQyBTUzAwIBcNMjUwOTAzMDgyNjAw
4+
WhgPMzAyNTA5MDMwODI2MDBaMCkxFDASBgNVBAoTC0xpYlRvbUNyeXB0MREwDwYD
5+
VQQDEwhMVEMgU1NTMDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV1mgbza
6+
UGhF3rnjDRJhMoPpcvWbfuM8wE3SjRU+kVv4HnMFzKa7rpOCL/9wUYotKUymdpDg
7+
5XD5tCcwbrZqBSs8BuBYEcfPCgkI+NBzXffiDY1Z60kwa5NIvByPcePxRE4bE8De
8+
zJGKyS06llz8j6dQUoMcMinS4cqhpaof1TcCAwEAAaOBlzCBlDASBgNVHRMBAf8E
9+
CDAGAQH/AgEAMB0GA1UdDgQWBBQPcAyfJAWr3MNiCVYNhkj//bs9fDAfBgNVHSME
10+
GDAWgBTY1GXwayUXgPCc4HQiKu4XXayoSjALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4
11+
QgEBBAQDAgAHMB4GCWCGSAGG+EIBDQQRFg94Y2EgY2VydGlmaWNhdGUwDQYJKoZI
12+
hvcNAQELBQADggEBAKZDiqriGnJVwVu2zdZnjTySLtXEGlUd4A8hT3rZ1EgP3rQ0
13+
4j4zhATb1fH++2XdHX6IMDtdduWSjKxTF6rmPfDl0znbg3mnbUC2nP6Nw3UsD1DC
14+
/k1cI0a9S1ocXCJsPIp89lBXuGWUwk5Ml7B/BKNhqOCJqD8CFpejAXovMhpwJ8zk
15+
2U542RVW+qXUJE36KCzwrxldqU9zuqSCdllJ53oSnt4YQ7ODuUVCTm7gObaU71Uu
16+
qO3hNalAYNckKi9qrUNdH4dir2zGUkHw41hDcQ/Qd7kNvIo8e/OLJPtWpYUO0gOS
17+
L4s9V2ZO9BhQJM2KW67Xz/O8byg9CgyXR4LgJ58=
18+
-----END CERTIFICATE-----
19+
-----BEGIN CERTIFICATE-----
20+
MIIEazCCAlOgAwIBAgIIaxPLdClfRLwwDQYJKoZIhvcNAQELBQAwJzEUMBIGA1UE
21+
ChMLTGliVG9tQ3J5cHQxDzANBgNVBAMTBkxUQyBTMDAgFw0yNTA5MDMwODIyMDBa
22+
GA81MDI1MDkwMzA4MjIwMFowKDEUMBIGA1UEChMLTGliVG9tQ3J5cHQxEDAOBgNV
23+
BAMTB0xUQyBTUzAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC0lSWq
24+
0cFHUL5qqkKvFm453nLj/1dPyxsQ2sM2bjUarj25jhHg/C93e+GDaD/uXJR4I87c
25+
hUHzoHusC3glfqVFQCtIP2M8jOD57zpdegueElWoCdsj7JnETekVSZ/jdAq0PNKP
26+
jiMxcF5sa3i2UaN1ab+cjs2HLur458xqc27H/+NVeTA6NOI11MqkQc+ScaIC1gV2
27+
jlhWmik88bxprBbhm/YrUdi/cmGfL34borcNx31k4Q3tDBxuLz4lohacdpRcLdCC
28+
i4GS70Mciy9nwt+/juLKT9uLLtyluaG970nMO2pqTTpwhrGLNdM08Q6gddNA+FhO
29+
Tv818DyMloJ+FIXZAgMBAAGjgZcwgZQwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNV
30+
HQ4EFgQU2NRl8GslF4DwnOB0IiruF12sqEowHwYDVR0jBBgwFoAUQTExVrNGN1Pl
31+
W+wOR+8j6k6N5hAwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglg
32+
hkgBhvhCAQ0EERYPeGNhIGNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4ICAQAt
33+
y+dHcKWYp+MNt3r3aFO1toi9VJ4L9ySwntV0PHbvONLgFEp8zoTzKOC+OkdcbLU+
34+
J9mgpQ1JxwFmYaZATPTDvCi7/bfCekjDdPsyeXRdUcMhq8wu3K0P40xF1R1j7WWR
35+
ZqdtMlvD1k2LJSU6Bwt6uROZA2kGVx+TpVb3KttMoqRzjz2KNdyx/kXTdKFmL9Ip
36+
3icyhLXPEiT5o8wdgRDOwuQwWWxEKaXl0IvAJykG8dBXEDcF4mcmFcp9my9dudRX
37+
NBI7n0t1/ItA6mQ7hOL1Xflgqo4kmm5/oZzQcYLTapW0LGSC39rPvNTY5Sf6P7TN
38+
KYgTUgW6WaUgobZjpwuQxgcrohjdXcx03745g2e9eY5eJTRVlbDlLmwdxg7a/joO
39+
2PXpUg79FixMdmt8LARrLbDEVlfB5N5HilB+3J7riWU33nZRymE8w7AR/HMIV+9i
40+
T9Ue0+6lAL+Mz9zLTviQfdz5xOqo0ngEeWTs8HOpjiwdGkB5uUEkwhhnXZJlNICN
41+
ebo7IG0OpfPKhO82i2xFA6uZzJvTv+3G1ih/LwL+MzJVfLxnuuL7DBbv7d9lB4cO
42+
ooMOOZMH9okthuKLk20a0VdmPAQ9xF8KhIgutajEXAGWhayXoGugMNRjWrJm6lUX
43+
d8kK4AEM2eDZWo11GxAdU1XqIOWCLdV95eWfkZo7gg==
44+
-----END CERTIFICATE-----
45+
-----BEGIN CERTIFICATE-----
46+
MIIDrTCCA1+gAwIBAgIIdmUTeeSNp0gwBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
47+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxODAwWhgPNjAyNTA5
48+
MDMwODE4MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
49+
UzAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCMlz0PIJA6I543Z/Ij
50+
WOVyC/0+9/tPuVqviIWNDn9nO1FSyt8yCeq9JkHzuRrRmUTwAdc1r7MqFDy4bJdp
51+
l13clraYPRSKiRkOzvaoluatfBYfgVRuhCshE6yDlMjdBCo3ZMBL4Sh6CUtmLUuI
52+
r5Wc4+/Voh6V49vMBnRlt2XAdZIWU6Se3l7ii51GTMU6PJmif5qvOfRQxyp5XOkK
53+
OlgE0CwnvNMb6LwqsqyMdsabo5Y/+fewer2XUf/1bt9Q93mMDN5r/Usjz9d4jFsW
54+
LEcbDlVQ2CM7jexULQmHmIHMaTrWgnbGMBy4vKXgAr3l0VvFxez7C/ldCv/PNKSO
55+
FvqBWeJb/QRP9HuZ2KcrjPZm/QiegWmkKXuUVbSZ5mZH1g5QKSGcTjIGH2c6Uxar
56+
i2TGVnYpf+YZjghK9IOx2cwc76r2f3fp4fBNgUGUHmoId5M3DNYL1b+bPtarcsCF
57+
z6tiKRk1bLRmSF2dwzm0jO0S3Lp4pNzXWbGNuVIkXh30wTZe0/UQmvR8uHjRbgVy
58+
l7gHMBWTaFvFZwXCjidxzK6QeB2Xbja5SNfvRCHI/K9LB1TTrPV1cAZYtzqaO5qF
59+
ezQneNKRLmFyPAZimQE09BPV+JmK+UzOOUZ3SJeCKSXAPBJzo0t8RWTtpPBgVwJM
60+
r/K2ll68CVk+VeHOoG6XbN01BQIDAQABo4GsMIGpMBIGA1UdEwEB/wQIMAYBAf8C
61+
AQEwHQYDVR0OBBYEFEExMVazRjdT5VvsDkfvI+pOjeYQMB8GA1UdIwQYMBaAFEPt
62+
p67ZZHVM+Fh0tz8llxbMdDp5MAsGA1UdDwQEAwIBBjATBgNVHSUEDDAKBggrBgEF
63+
BQcDAjARBglghkgBhvhCAQEEBAMCAAcwHgYJYIZIAYb4QgENBBEWD3hjYSBjZXJ0
64+
aWZpY2F0ZTAFBgMrZXADQQCzEr3m4hDVAkPAtDgh76cRLxFw987XGN0mfT0ZDurK
65+
SF0S51g6g/v7rrHHiCxALLf6s70TihkLPVDeaIL9ik4M
66+
-----END CERTIFICATE-----
67+
-----BEGIN CERTIFICATE-----
68+
MIIBezCCAS2gAwIBAgIIb2eiAYNfDJswBQYDK2VwMCcxFDASBgNVBAoTC0xpYlRv
69+
bUNyeXB0MQ8wDQYDVQQDEwZMVEMgUjAwIBcNMjUwOTAzMDgxNDAwWhgPNzAyNTA5
70+
MDMwODE0MDBaMCcxFDASBgNVBAoTC0xpYlRvbUNyeXB0MQ8wDQYDVQQDEwZMVEMg
71+
UjAwKjAFBgMrZXADIQDVj/MS930omIOasHjkoGSoueCZn8mcZUz1xQKqXHDk3KN1
72+
MHMwEgYDVR0TAQH/BAgwBgEB/wIBAjAdBgNVHQ4EFgQUQ+2nrtlkdUz4WHS3PyWX
73+
Fsx0OnkwCwYDVR0PBAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAeBglghkgBhvhC
74+
AQ0EERYPeGNhIGNlcnRpZmljYXRlMAUGAytlcANBAAYBDKvYaZ35dk0HDuQeGq06
75+
R9LtgUnsD9GgjXbzC2fathjli91Ff3u7vlWLH6aXi8dd87e1Mq6XJGfIjMHn4Q4=
76+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)