- Added support for RFC4055 SHA2 and SHA4 signature algorithms for
   use with PKCS#1 v1.5 signing and verification.
 - Added extra certificates to test-ca and test code to further test
   functionality of SHA2 and SHA4 signing and verification.
 - Updated other program files accordingly

diff --git a/programs/ssl/test-ca/cert_sha512.crt b/programs/ssl/test-ca/cert_sha512.crt
new file mode 100644
index 0000000..6f47798
--- /dev/null
+++ b/programs/ssl/test-ca/cert_sha512.crt
@@ -0,0 +1,77 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 8 (0x8)
+        Signature Algorithm: sha512WithRSAEncryption
+        Issuer: C=NL, O=PolarSSL, CN=PolarSSL Test CA
+        Validity
+            Not Before: Feb  9 21:12:36 2009 GMT
+            Not After : Feb  9 21:12:36 2011 GMT
+        Subject: C=NL, O=PolarSSL, CN=PolarSSL Cert SHA512
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+            RSA Public Key: (2048 bit)
+                Modulus (2048 bit):
+                    00:93:26:13:f4:89:9e:ef:75:e0:1b:11:cf:68:a8:
+                    19:f3:b0:4c:cf:41:e5:72:b0:6b:7e:ba:f2:83:8f:
+                    87:0c:34:4e:06:08:19:99:7b:f9:34:4f:58:89:11:
+                    7a:a6:84:a7:49:7d:30:d2:9d:93:3c:2e:00:84:e0:
+                    34:0c:6e:54:38:3b:0e:74:f9:79:6f:a2:ff:44:fa:
+                    60:0d:f5:22:5a:b8:37:72:75:58:2a:2c:10:8b:42:
+                    a8:88:99:77:79:db:7e:fa:bf:95:b9:b6:06:42:2b:
+                    a8:a6:90:2f:f8:e6:0c:f5:59:4b:50:1f:91:56:92:
+                    e0:b0:5c:c6:87:94:78:a3:85:91:ba:51:89:bd:49:
+                    91:f7:02:6a:d6:d5:8a:63:c0:37:43:96:b2:6b:11:
+                    d1:50:c6:de:1f:4a:c4:2b:f0:af:67:3c:62:43:57:
+                    42:83:ce:31:18:95:60:23:80:8b:27:24:33:00:2a:
+                    3f:ef:4a:b9:57:b4:81:2a:07:86:cd:8d:ce:57:71:
+                    67:b5:7d:60:41:8e:2f:91:10:ad:42:5b:76:b8:66:
+                    2f:c5:b4:62:0a:26:e8:ec:48:5e:fa:32:88:a6:52:
+                    f5:9a:65:6c:18:59:2e:dc:79:7c:e0:22:b2:cc:f9:
+                    98:b3:2c:df:b6:74:5d:2a:12:21:c7:0b:1d:5e:91:
+                    84:df
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: 
+                CA:FALSE
+            X509v3 Subject Key Identifier: 
+                7D:3F:1C:F1:A5:A0:D8:77:06:FE:75:D2:72:97:6C:3A:FF:3A:26:10
+            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
+
+    Signature Algorithm: sha512WithRSAEncryption
+        2f:f2:12:80:1a:4f:0c:e6:f9:a6:a3:3c:8e:d2:51:f0:f7:b2:
+        47:6d:e9:55:5a:39:e8:95:fc:c0:37:a6:f9:a2:b4:37:7a:51:
+        23:06:ef:51:90:6e:d9:1c:14:33:7d:a8:9c:64:08:70:70:b4:
+        eb:a6:84:64:2c:85:00:92:20:94:83:bc:0a:fa:5d:d0:b0:1b:
+        c0:1a:92:0d:b6:15:dd:dd:79:de:ea:25:f5:0f:7e:ea:37:dc:
+        ab:43:48:6c:ad:a4:bc:a7:f6:bf:16:74:de:7d:78:44:b0:d3:
+        68:60:a0:48:2a:e6:f2:aa:6e:26:e0:a0:40:e9:08:9c:71:e7:
+        f7:d5:b2:d8:20:25:79:0c:e4:3b:05:57:82:ae:87:80:15:47:
+        f9:0e:fa:10:c4:a0:6c:a7:cc:41:c4:5f:e5:1d:c7:10:94:db:
+        d9:19:c6:8e:3a:88:dd:22:95:4d:c3:0f:fe:a6:a8:5e:f1:80:
+        a4:a5:d6:ee:d4:25:7f:94:8f:b1:b8:ff:2b:84:b9:8a:a0:73:
+        02:67:1c:d9:7f:47:d8:f1:82:5c:c9:19:13:c8:fb:d0:32:06:
+        2f:3f:6f:cc:08:7c:2e:94:71:05:5c:5a:ca:b0:29:01:ad:d6:
+        99:c1:6c:84:f2:84:3d:c6:0b:85:76:47:19:42:2c:c8:48:e3:
+        60:30:e9:6d
+-----BEGIN CERTIFICATE-----
+MIIDQjCCAiqgAwIBAgIBCDANBgkqhkiG9w0BAQ0FADA7MQswCQYDVQQGEwJOTDER
+MA8GA1UEChMIUG9sYXJTU0wxGTAXBgNVBAMTEFBvbGFyU1NMIFRlc3QgQ0EwHhcN
+MDkwMjA5MjExMjM2WhcNMTEwMjA5MjExMjM2WjA/MQswCQYDVQQGEwJOTDERMA8G
+A1UEChMIUG9sYXJTU0wxHTAbBgNVBAMTFFBvbGFyU1NMIENlcnQgU0hBNTEyMIIB
+IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkyYT9Ime73XgGxHPaKgZ87BM
+z0HlcrBrfrryg4+HDDROBggZmXv5NE9YiRF6poSnSX0w0p2TPC4AhOA0DG5UODsO
+dPl5b6L/RPpgDfUiWrg3cnVYKiwQi0KoiJl3edt++r+VubYGQiuoppAv+OYM9VlL
+UB+RVpLgsFzGh5R4o4WRulGJvUmR9wJq1tWKY8A3Q5ayaxHRUMbeH0rEK/CvZzxi
+Q1dCg84xGJVgI4CLJyQzACo/70q5V7SBKgeGzY3OV3FntX1gQY4vkRCtQlt2uGYv
+xbRiCibo7Ehe+jKIplL1mmVsGFku3Hl84CKyzPmYsyzftnRdKhIhxwsdXpGE3wID
+AQABo00wSzAJBgNVHRMEAjAAMB0GA1UdDgQWBBR9PxzxpaDYdwb+ddJyl2w6/zom
+EDAfBgNVHSMEGDAWgBTPIjEnkdjCVP8e2tnuisWJMq0MITANBgkqhkiG9w0BAQ0F
+AAOCAQEAL/ISgBpPDOb5pqM8jtJR8PeyR23pVVo56JX8wDem+aK0N3pRIwbvUZBu
+2RwUM32onGQIcHC066aEZCyFAJIglIO8Cvpd0LAbwBqSDbYV3d153uol9Q9+6jfc
+q0NIbK2kvKf2vxZ03n14RLDTaGCgSCrm8qpuJuCgQOkInHHn99Wy2CAleQzkOwVX
+gq6HgBVH+Q76EMSgbKfMQcRf5R3HEJTb2RnGjjqI3SKVTcMP/qaoXvGApKXW7tQl
+f5SPsbj/K4S5iqBzAmcc2X9H2PGCXMkZE8j70DIGLz9vzAh8LpRxBVxayrApAa3W
+mcFshPKEPcYLhXZHGUIsyEjjYDDpbQ==
+-----END CERTIFICATE-----