pkcs7: Improve verify logic and rebuild test data
Various responses to feedback regarding the
pkcs7_verify_signed_data/hash functions. Mainly, merge these two
functions into one to reduce redudant logic [1]. As a result, an
identified bug about skipping over a signer is patched [2].
Additionally, add a conditional in the verify logic that checks if
the given x509 validity period is expired [3]. During testing of this
conditional, it turned out that all of the testing data was expired.
So, rebuild all of the pkcs7 testing data to refresh timestamps.
[1] https://github.com/Mbed-TLS/mbedtls/pull/3431#discussion_r999652525
[2] https://github.com/Mbed-TLS/mbedtls/pull/3431#discussion_r997090215
[3] https://github.com/Mbed-TLS/mbedtls/pull/3431#discussion_r967238206
Signed-off-by: Nick Child <nick.child@ibm.com>
diff --git a/tests/data_files/pkcs7-rsa-sha256-2.pem b/tests/data_files/pkcs7-rsa-sha256-2.pem
index 0f03a43..b11a00a 100644
--- a/tests/data_files/pkcs7-rsa-sha256-2.pem
+++ b/tests/data_files/pkcs7-rsa-sha256-2.pem
@@ -1,48 +1,48 @@
-----BEGIN CERTIFICATE-----
-MIIDSTCCAjGgAwIBAgIUSbz5H6XcKL1urGmyF9I9v63PwccwDQYJKoZIhvcNAQEL
+MIIDSTCCAjGgAwIBAgIUVk1VQCWvWZ4ycHmycg7wDfN8+3wwDQYJKoZIhvcNAQEL
BQAwNDELMAkGA1UEBhMCTkwxDjAMBgNVBAoMBVBLQ1M3MRUwEwYDVQQDDAxQS0NT
-NyBDZXJ0IDIwHhcNMjAxMTI0MTQxMDE5WhcNMjExMTI0MTQxMDE5WjA0MQswCQYD
+NyBDZXJ0IDIwHhcNMjIxMDI4MTYxMDU2WhcNMjMxMDI4MTYxMDU2WjA0MQswCQYD
VQQGEwJOTDEOMAwGA1UECgwFUEtDUzcxFTATBgNVBAMMDFBLQ1M3IENlcnQgMjCC
-ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN4tAEi8b+ZE3OIuv91WduiU
-qQQXPqMNndTj3Q3hxd5CvYCZ3dAoYQOdPOtGWxLe89zpqUI/Sp8hSpCOw0ucgxCe
-96ahpx/BVvMG6BabtxSXWYmGv0rJmFE3LwzskvK9P8dwaGLZler+9CgjKtcgfhTc
-zbwhSDeHCHAZWqJUtLpAACiU8rn78p7x8zWoUUsntUiTCyw1SCHvIhGPeCbT4QVX
-YNxIP2H52s7waHqtHLpGtJSsSxTxfbxcmbMQlrDaY/8ArLxo2VKqvGJv90IDjbGy
-ORHRMOuxxxjowC9+yH4xtVRl821dsJFSSnmAEBXas3hkneFVBxiR7vUf61Wv760C
-AwEAAaNTMFEwHQYDVR0OBBYEFNdysL6wT6p/KA7w/efpAyX7/FXZMB8GA1UdIwQY
-MBaAFNdysL6wT6p/KA7w/efpAyX7/FXZMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
-hvcNAQELBQADggEBAKGSxRvoL+FpC4LtiT4Cie53yKlzISq+ZMR4eHm1BFSidiFv
-apntxj9k1JIIlDzbabVEJdy+O8EzipqUNFdPky+EpnZTnoTXilNusPH2FW+R6qMx
-XrDl4MwtSYnH1RwkjF+yjYysp6pdxm+gr6k7lS4biHq6VfUYSvQBvSuIYMn+XZa/
-ZgQs0NWeh3GgVFkpGkG/yxXMq1WRGSrFfmqExLVpMeNXTINQsK5PH/JMaj44c4T7
-+qbq9Rf4U4ezkTUXHsQQsA3dFpPiL5Lv6RS+31VKLpXYJQ9j/Z+IWBFjTf/utt5T
-VA2cEFCZIkNYUoX8RVs23cQr/ZNBxxgO/7JYNSE=
+ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMmVNZZ0/qcT+h/lVNO+gP65
+lERTTudQ15h8QTLjaKhx5SSTLnuUhD0jLbR+ng8PMqdJ8ePkZEh1+7mi9MHzID4Y
+c47jH8M+Jc/JdBr6cSjbFd23QHESUjKKmV1IjSHc6Llbxe962z4gEXYjJAMkfr6B
+g1iecK3AlnEI4F0BsQfC5dgA4Qce2okvcTuhYgvHtLZ+UN4ca50Kw0o4u5FYdl89
+KDCE4zNp8MaaxGC83xcM4A9XqjHyZ7a2wvACTlmLQ2q/E+RN/8THEel4Y+yv82Uj
+j2LqqEaA06dvSdOPdaGz9jUZauqBw7TcuGGVzrrsZ0g/sHXKng9TppehAV/HrJUC
+AwEAAaNTMFEwHQYDVR0OBBYEFI5FVrtfLwPXRERcyVX6qBVvfoduMB8GA1UdIwQY
+MBaAFI5FVrtfLwPXRERcyVX6qBVvfoduMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAKRl0wgREe6eAduJSV5fs+Ec0s2qs2lHQqt/0JGEIbZBBtka
+q1UH9CIMMAd6Kb0kh5GlJT2shg/EAYWoitMwntkeRYTln2k2/B5jux+U5Ph4HyC+
+ad2GqmsoXWDru79rltT7Pv1hS1ofJyQ4Jv88vQA/SuIIRGdTC24VAVgg00JxvDRB
+xeqsQ9Pld4ebg4VvqsInnSpmKCcxfWxFhJk/Ax8bK/tV/GnrPiwsvry1j9nZyebS
+IyI01/6DwJS2ZhFnsLGyPHFOAFNtomjIdQ6gf2L1wq0qiGOKj/K9IzFNCpCz82a+
+gMgqFzCT5TCZC16kUG2NA2pXAx9O4uppKjRk97U=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDeLQBIvG/mRNzi
-Lr/dVnbolKkEFz6jDZ3U490N4cXeQr2Amd3QKGEDnTzrRlsS3vPc6alCP0qfIUqQ
-jsNLnIMQnvemoacfwVbzBugWm7cUl1mJhr9KyZhRNy8M7JLyvT/HcGhi2ZXq/vQo
-IyrXIH4U3M28IUg3hwhwGVqiVLS6QAAolPK5+/Ke8fM1qFFLJ7VIkwssNUgh7yIR
-j3gm0+EFV2DcSD9h+drO8Gh6rRy6RrSUrEsU8X28XJmzEJaw2mP/AKy8aNlSqrxi
-b/dCA42xsjkR0TDrsccY6MAvfsh+MbVUZfNtXbCRUkp5gBAV2rN4ZJ3hVQcYke71
-H+tVr++tAgMBAAECggEANzztAyiGkbOxTzLcVQV4Tt8XHoNA+X0bLqDwhtEJRvdE
-8kJPGb/QTvu696voXMq9ysD1ahkeTm4Sgdpcx+HD3FAJto4eZRDGs2mWLnjMjfwL
-MNwll0yD6D1WH1p6NovC3a0e5uS+F00IGyqTLiVP85PqOsnzkIqsGGLVW+K/hEaK
-lRqKEf5tYzkdmlay8SfJQf03TuJVFp6qAgG/gH2EkGR/B4SLotXYDNXLFAzlx/N3
-QXHRIKhYOcvznbJ7Doww+nCyO613cUeZ1t3/22QRC3Vm8WMaYzxivGoMzmGM2YqI
-MtUG+zXm4if9+MmT0CQ3meWLYwkIbFax6/6DLS6iKQKBgQD4EU4CEEjCsnYm7668
-0THvkcEsOTvSKroLYPKsuUbeoBfCvK4/o6kb2dQbR9c8MnHAJ8yN9gMbuP/njPUu
-G9/sycI3uDRYpsQDeBcD74NtCAKqB1s7kcucMzxudwAqw/jJCJxyPqGiS8HJGQRO
-sQMtBkvQx9RqKKagAgCWwaiLQwKBgQDlR76cQN3GSVRZfsA2rqTyZo8b4ECSEu0O
-4vSQ0i5xMWp8uJLRBxktRYYCMfzH6dHDG+GNYearolOHm7BfC3QUH2EC6kE2D/9P
-A40JrF7QEkDRtQ2rmNOQ2diLB1wYQiqRJieuXVIIzaRcyenRxP6ec2YMmHl9FaPh
-dmYzjtDSTwKBgFr2/YQENKowhuMAQTM8AvO2nv94fVc0E8TYaCSuTC6Wxh/C0KLF
-gN2VoxHd5i9M0CmGbpwf+kPQMwbVyZJ+5j4OPgnwokFf5cDf6JCo46i3p0JyMCJH
-9EHzB9X6DTWhZzlQzw2Vqe+5l/YGFm5EusVn6aVFob7L6U4DbfPaT9PBAoGAD1Hi
-55fh+azOqQgyGbVDqjq2Fzu9tMT0+AisJL0Wg1O09M50aOkbgo3hrWXfqQ/zhyDm
-ykafXhqDkE0T1NX0FKAgIEy8vLsG6SWol9vfnfGKSTjax/t3L3eO44NDYQ+Svo4Z
-Gqp7n8D12YlYST7rcHTvfan2fCglAhyiKZHCXDsCgYEA0BeqGpJ6Oz6O8g61JixG
-EryjO2cCnQLWlwlal40L63wY5tNDCixuDM6zJFq/tT9DYMuNANrfsqWU2ImKTNPE
-kwlMgP813aPXREgyV3ylL4KLusfDF6hqPtDcU2QK05LuTX7puHwi0pR8jAmPzrng
-Y2ncNnRJI7vczDETaW1vuoE=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDJlTWWdP6nE/of
+5VTTvoD+uZREU07nUNeYfEEy42ioceUkky57lIQ9Iy20fp4PDzKnSfHj5GRIdfu5
+ovTB8yA+GHOO4x/DPiXPyXQa+nEo2xXdt0BxElIyipldSI0h3Oi5W8Xvets+IBF2
+IyQDJH6+gYNYnnCtwJZxCOBdAbEHwuXYAOEHHtqJL3E7oWILx7S2flDeHGudCsNK
+OLuRWHZfPSgwhOMzafDGmsRgvN8XDOAPV6ox8me2tsLwAk5Zi0NqvxPkTf/ExxHp
+eGPsr/NlI49i6qhGgNOnb0nTj3Whs/Y1GWrqgcO03Lhhlc667GdIP7B1yp4PU6aX
+oQFfx6yVAgMBAAECggEBAMVHm3w134qQCHfyroPTqtaftDTx+wRyn6yB3iT5XdGM
+NZ8H07Pp80kKBo7gY7uFOiNyQKKxQFuR69sPWc3+LI3YzC8IpGslhUfHdjN46gn7
+73hfAVgnf/4qmlEq0cRUOAY/hIUMjUhNhglB9tqEeu3iPjMaTFgfZJwW/czH/QMD
+w4zj5XoLgwRkqVvUceu/dBgV8KP5DpON+q8wpfWtjunv7rg5Nc3BVBrpb5SadJ7T
+i5TsS+pZQyp+mTvyCI3A1hkr2Vw5tULWO8SPhuEQkdtC/CL+luCUO7L16lU6KhFB
+qP5Fduik5skyLCVvAMUkjKcrC22k0gkhOHvfmMhjaAECgYEA68+hAQIiV9ErZGk9
+ZLu+VJHBSPmEQCkUcbviwzoRo8YSyka12TZERy+NJcvmD9deNgFbp8GyZf01XJWH
+slSYt6LyInrJrTpv+3q2Vl5GQp0f+39i7MHnwGGKbWsDbSAm+L9yKTJzYJz1O5fo
+in06AiyyGPwnXd1cm5bTXVX+dQECgYEA2tdi6DXF8awE23pv4HphPBhXS5hmYP/D
+NC7CtP8wQsxjPdiIxkBFFVEaFCC2njq1VhTyJb5noJM4kOIwcoaQ/zgyyxQa0u7w
++CqvAh1WwG+sT/B7vivrtDmmYeyGQapFo5DRIz+MflKAhzDhtnEyT9vLuCdn8J95
+0YvxZJ9+k5UCgYEAh+e7SER9nJUt6AoLWyIlGMKEXlWIFh5W7RG3KIMwJW6D59aG
++fAfu9M5Cx6PsnOSlZeExpOJCOS9O2Xmti2xcqzT1nFkCJWUcqCPtAlTfxLlmuIZ
+FpDOy36r9FHnwJ32OAjGd93ex0DOyZDMcfyoURaHcoTo/10UAYwUt0dXhwECgYAI
+xad2TWmA1XdgYNkJM36gTQ16v0IjUz084z70yGHj25OC0CIzaDIct6KG+gS39Px9
+1dsa/jXjLuOOkzKD9LbtNBB9KXIl0GQiXnujZw+qKQ/MKISdS99n2wO7WyLKkQu3
+kb+AXTTBf4cdZC04BfORVesll5bIA2x7pNNpSCdnvQKBgG7VXYcPlIV7iAyi2xFa
+uN1jccu/AK7xA0G1jz2SHNlpet74LmWR8XsTujJeo8WG1IRFxSky4h/pAP0XWIFO
+0LPK7eeDtnFq6y1/DXpI+/9BWX5T/8+4Yk93p37YrBVWKfd21dhrAklQs11m3rlQ
+Qn6c/zyvMKSyrCVxo5pTd5Il
-----END PRIVATE KEY-----