- Corrected parsing of UTCTime dates before 1990 and after 1950
- Support more exotic OID's when parsing certificates
- Support more exotic name representations when parsing certificates
- Replaced the expired test certificates
diff --git a/tests/data_files/cert_md4.crt b/tests/data_files/cert_md4.crt
index eb05fad..16f166b 100644
--- a/tests/data_files/cert_md4.crt
+++ b/tests/data_files/cert_md4.crt
@@ -1,77 +1,77 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 10 (0xa)
+ Serial Number: 5 (0x5)
Signature Algorithm: md4WithRSAEncryption
Issuer: C=NL, O=PolarSSL, CN=PolarSSL Test CA
Validity
- Not Before: Jul 12 10:56:59 2009 GMT
- Not After : Jul 12 10:56:59 2011 GMT
+ Not Before: Feb 12 14:44:07 2011 GMT
+ Not After : Feb 12 14:44:07 2021 GMT
Subject: C=NL, O=PolarSSL, CN=PolarSSL Cert MD4
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (2048 bit)
Modulus (2048 bit):
- 00:dc:13:74:81:c6:12:f6:67:5d:a1:66:72:ed:dc:
- 79:b6:58:5c:32:58:b3:d4:14:fd:6c:02:61:9e:0b:
- 99:46:63:a3:0a:41:d4:42:33:21:e6:ed:43:07:5a:
- 1d:a2:3b:64:29:a8:2a:c1:66:28:00:59:d8:0c:49:
- 2d:30:b7:3d:8c:bb:60:62:31:83:27:7f:4b:95:92:
- 2e:a0:d6:c6:84:94:4b:b3:e4:a6:cc:ff:32:3a:c5:
- ec:4c:c9:24:58:bf:b3:33:77:6a:b5:17:8b:02:10:
- 29:8e:95:aa:91:60:17:43:42:87:a8:7c:da:09:83:
- 98:9d:7a:65:5e:20:52:07:2e:65:a5:31:fd:d9:74:
- 1e:00:c9:ae:9d:81:56:8b:08:0a:f5:1e:9c:dc:a2:
- 5e:6c:db:ff:11:83:15:f4:d1:24:57:9b:0f:eb:35:
- c9:f1:aa:46:4e:74:7f:fe:1d:b0:91:1f:89:4a:84:
- cb:df:75:e3:cd:77:82:62:09:e5:9f:6d:29:de:2e:
- 25:d8:48:b6:20:be:51:97:4c:2d:20:65:2d:2a:50:
- 9e:24:5d:72:95:e0:a2:06:41:8c:61:e4:50:57:74:
- 96:b1:29:b5:a1:88:37:f1:5c:9e:b2:9e:8e:83:8d:
- 72:3b:b5:5c:fe:bb:12:89:72:5c:a1:f9:d8:18:29:
- b2:27
+ 00:b9:3c:4a:c5:c8:a3:8e:90:17:a4:9e:52:aa:71:
+ 75:26:61:80:e7:c7:b5:6d:8c:ff:aa:b6:41:26:b7:
+ be:11:ad:5c:73:16:0c:64:11:48:04:ff:d6:e1:3b:
+ 05:db:89:bb:b3:97:09:d5:1c:14:dd:68:87:39:b0:
+ 3d:71:cb:e2:76:d0:1a:d8:18:2d:80:1b:54:f6:e5:
+ 44:9a:f1:cb:af:61:2e:df:49:0d:9d:09:b7:ed:b1:
+ fd:3c:fd:3c:fa:24:cf:5d:bf:7c:e4:53:e7:25:b5:
+ ea:44:22:e9:26:d3:ea:20:94:9e:e6:61:67:ba:2e:
+ 07:67:0b:03:2f:a2:09:ed:f0:33:8f:0b:ce:10:ef:
+ 67:a4:c6:08:da:c1:ed:c2:3f:d7:4a:dd:15:3d:f9:
+ 5e:1c:81:60:46:3e:b5:b3:3d:2f:a6:de:47:1c:bc:
+ 92:ae:eb:df:27:6b:16:56:b7:dc:ec:d1:55:57:a5:
+ 6e:ec:75:25:f5:b7:7b:df:ab:d2:3a:5a:91:98:7d:
+ 97:17:0b:13:0a:a7:6b:4a:8b:c1:47:30:fb:3a:f8:
+ 41:04:d5:c1:df:b8:1d:bf:7b:01:a5:65:a2:e0:1e:
+ 36:b7:a6:5c:cc:30:5a:f8:cd:6f:cd:f1:19:62:25:
+ ca:01:e3:35:7f:fa:20:f5:dc:fd:69:b2:6a:00:7d:
+ 17:f7
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
X509v3 Subject Key Identifier:
- B7:51:D4:E5:20:D5:45:54:F4:C5:51:1B:E0:82:B5:61:05:AF:9B:B6
+ 7D:E4:9C:6B:E6:F9:71:7D:46:D2:12:3D:AD:6B:1D:FD:C2:AA:78:4C
X509v3 Authority Key Identifier:
- keyid:CF:22:31:27:91:D8:C2:54:FF:1E:DA:D9:EE:8A:C5:89:32:AD:0C:21
+ keyid:B4:5A:E4:A5:B3:DE:D2:52:F6:B9:D5:A6:95:0F:EB:3E:BC:C7:FD:FF
Signature Algorithm: md4WithRSAEncryption
- 3d:34:e7:aa:98:28:91:95:d4:df:be:66:4e:92:7f:25:f7:ce:
- 23:59:db:30:52:3f:67:a0:ab:06:18:be:32:ad:f9:d5:24:87:
- 90:c5:ac:42:a6:8f:2a:e3:b3:36:c4:9c:38:e4:2e:6a:64:26:
- 33:39:e0:46:4e:f5:09:a7:d2:cd:6a:16:30:49:80:81:4c:19:
- 43:2e:55:0d:b8:18:d6:db:8e:e0:3e:25:ca:a2:74:76:b7:1c:
- 97:13:db:21:83:50:38:eb:f7:36:d5:74:3d:fc:90:d8:7f:d6:
- ad:2d:5d:ab:99:fc:45:41:c1:55:22:f7:57:c0:c5:24:a0:67:
- a0:e8:03:f1:98:87:7a:be:d9:57:04:06:ba:57:29:ca:6e:33:
- 28:16:7d:fa:5c:2b:ae:40:78:01:6f:77:9f:54:94:fb:bb:73:
- 3f:f1:ca:81:4f:65:49:2c:1a:62:15:fe:0e:43:d3:81:10:b2:
- b6:e9:92:f9:b8:be:cf:50:85:a4:65:af:ed:fa:58:6c:5c:90:
- b1:ae:90:7a:a4:68:93:cf:85:6b:73:98:c0:a7:97:d7:03:59:
- 0c:97:33:1b:9d:5a:4a:9d:31:71:c3:e4:57:21:1e:9a:67:16:
- 89:ff:de:42:88:97:05:cf:ab:63:3b:a4:fc:7f:7b:4d:54:b7:
- f5:bb:68:c4
+ 94:db:e1:86:71:2d:43:d6:51:61:a7:95:bc:e8:73:da:ff:e4:
+ fd:41:0f:5c:de:14:f4:c4:ba:5d:2c:30:2c:a6:dc:2d:e8:87:
+ 45:f1:c5:fe:d1:4a:64:99:19:09:2f:72:7c:3f:8d:c8:31:22:
+ dd:0a:69:03:3d:12:8c:4d:c3:f7:a3:c5:d1:5d:c9:ff:4b:83:
+ 6b:d6:b4:e5:d8:ce:94:5e:ec:bf:68:c5:b2:63:8e:5c:cb:f3:
+ 8d:62:73:82:62:7e:df:db:7d:0b:8d:21:10:db:9a:a1:62:4d:
+ 46:42:d1:bb:38:32:ef:c1:fc:a1:e2:7f:60:08:37:32:20:2c:
+ 7c:a2:c9:12:0d:89:fe:2b:15:08:91:79:e2:a9:79:a4:da:cd:
+ 81:43:01:e2:09:2d:1a:f4:16:ef:af:4d:50:46:5e:2d:dd:48:
+ 27:10:c0:42:b7:a5:9e:c2:1f:6e:50:36:03:ed:95:77:9a:a3:
+ d9:4c:d7:23:93:b1:24:2a:63:27:28:7a:de:3d:59:d2:92:c8:
+ 8f:f6:39:1d:65:ab:09:78:05:46:90:a9:f6:10:b1:ef:c8:8c:
+ 4d:7d:8d:f2:78:b7:88:15:09:7e:df:e9:87:a8:64:c1:95:53:
+ fb:da:05:b7:62:bc:ad:fb:d9:a4:a9:06:6c:6b:98:01:b9:39:
+ 78:d3:4e:87
-----BEGIN CERTIFICATE-----
-MIIDPzCCAiegAwIBAgIBCjANBgkqhkiG9w0BAQMFADA7MQswCQYDVQQGEwJOTDER
+MIIDPzCCAiegAwIBAgIBBTANBgkqhkiG9w0BAQMFADA7MQswCQYDVQQGEwJOTDER
MA8GA1UEChMIUG9sYXJTU0wxGTAXBgNVBAMTEFBvbGFyU1NMIFRlc3QgQ0EwHhcN
-MDkwNzEyMTA1NjU5WhcNMTEwNzEyMTA1NjU5WjA8MQswCQYDVQQGEwJOTDERMA8G
+MTEwMjEyMTQ0NDA3WhcNMjEwMjEyMTQ0NDA3WjA8MQswCQYDVQQGEwJOTDERMA8G
A1UEChMIUG9sYXJTU0wxGjAYBgNVBAMTEVBvbGFyU1NMIENlcnQgTUQ0MIIBIjAN
-BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3BN0gcYS9mddoWZy7dx5tlhcMliz
-1BT9bAJhnguZRmOjCkHUQjMh5u1DB1odojtkKagqwWYoAFnYDEktMLc9jLtgYjGD
-J39LlZIuoNbGhJRLs+SmzP8yOsXsTMkkWL+zM3dqtReLAhApjpWqkWAXQ0KHqHza
-CYOYnXplXiBSBy5lpTH92XQeAMmunYFWiwgK9R6c3KJebNv/EYMV9NEkV5sP6zXJ
-8apGTnR//h2wkR+JSoTL33XjzXeCYgnln20p3i4l2Ei2IL5Rl0wtIGUtKlCeJF1y
-leCiBkGMYeRQV3SWsSm1oYg38Vyesp6Og41yO7Vc/rsSiXJcofnYGCmyJwIDAQAB
-o00wSzAJBgNVHRMEAjAAMB0GA1UdDgQWBBS3UdTlINVFVPTFURvggrVhBa+btjAf
-BgNVHSMEGDAWgBTPIjEnkdjCVP8e2tnuisWJMq0MITANBgkqhkiG9w0BAQMFAAOC
-AQEAPTTnqpgokZXU375mTpJ/JffOI1nbMFI/Z6CrBhi+Mq351SSHkMWsQqaPKuOz
-NsScOOQuamQmMzngRk71CafSzWoWMEmAgUwZQy5VDbgY1tuO4D4lyqJ0drcclxPb
-IYNQOOv3NtV0PfyQ2H/WrS1dq5n8RUHBVSL3V8DFJKBnoOgD8ZiHer7ZVwQGulcp
-ym4zKBZ9+lwrrkB4AW93n1SU+7tzP/HKgU9lSSwaYhX+DkPTgRCytumS+bi+z1CF
-pGWv7fpYbFyQsa6QeqRok8+Fa3OYwKeX1wNZDJczG51aSp0xccPkVyEemmcWif/e
-QoiXBc+rYzuk/H97TVS39btoxA==
+BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuTxKxcijjpAXpJ5SqnF1JmGA58e1
+bYz/qrZBJre+Ea1ccxYMZBFIBP/W4TsF24m7s5cJ1RwU3WiHObA9ccvidtAa2Bgt
+gBtU9uVEmvHLr2Eu30kNnQm37bH9PP08+iTPXb985FPnJbXqRCLpJtPqIJSe5mFn
+ui4HZwsDL6IJ7fAzjwvOEO9npMYI2sHtwj/XSt0VPfleHIFgRj61sz0vpt5HHLyS
+ruvfJ2sWVrfc7NFVV6Vu7HUl9bd736vSOlqRmH2XFwsTCqdrSovBRzD7OvhBBNXB
+37gdv3sBpWWi4B42t6ZczDBa+M1vzfEZYiXKAeM1f/og9dz9abJqAH0X9wIDAQAB
+o00wSzAJBgNVHRMEAjAAMB0GA1UdDgQWBBR95Jxr5vlxfUbSEj2tax39wqp4TDAf
+BgNVHSMEGDAWgBS0WuSls97SUva51aaVD+s+vMf9/zANBgkqhkiG9w0BAQMFAAOC
+AQEAlNvhhnEtQ9ZRYaeVvOhz2v/k/UEPXN4U9MS6XSwwLKbcLeiHRfHF/tFKZJkZ
+CS9yfD+NyDEi3QppAz0SjE3D96PF0V3J/0uDa9a05djOlF7sv2jFsmOOXMvzjWJz
+gmJ+39t9C40hENuaoWJNRkLRuzgy78H8oeJ/YAg3MiAsfKLJEg2J/isVCJF54ql5
+pNrNgUMB4gktGvQW769NUEZeLd1IJxDAQrelnsIfblA2A+2Vd5qj2UzXI5OxJCpj
+Jyh63j1Z0pLIj/Y5HWWrCXgFRpCp9hCx78iMTX2N8ni3iBUJft/ph6hkwZVT+9oF
+t2K8rfvZpKkGbGuYAbk5eNNOhw==
-----END CERTIFICATE-----