openssl/test/recipes
Nicola Tuveri 22f0c72b92 [SM2_sign] add minimal EVP_PKEY functionality testing
The actual functionality of generating signatures through the `EVP_PKEY`
API is completely untested.
Current tests under the `EVP_PKEY` API
(`test/recipes/30-test_evp_data/evppkey.txt`) only cover `Verify` and
`Decrypt`, while encryption and signature generation are tested with
ad-hoc clients (`test/sm2crypttest.c`, `test/sm2signtest.c`) that do not
call the `EVP_PKEY` interface at all but soon-to-be private functions
that bypass it (cf. PR#5895 ).

It is my opinion that an ideal solution for the future would consist on
enhancing the `test/evp_pkey` facility and syntax to allow tests to take
control of the PRNG to inject known nonces and validate the results of
`EVP_PKEY` implementations against deterministic known answer tests, but
it is probably too late to work on this feature in time for next release.

Given that commit b5a85f70d8 highlights some critical bugs in the hook
between the `EVP_PKEY` interface and SM2 signature generation and that
these defects escaped testing and code review, I think that at least for
now it is beneficial to at least add the kind of "bogus" testing
provided by this patch:
this is a "fake" test as it does only verify that the SM2 `EVP_PKEY`
interface is capable of creating a signature without failing, but it
does not say anything about the generated signature being valid, nor
does it test the functional correctness of the cryptosystem.

Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6066)
2018-04-25 10:24:43 +01:00
..
04-test_pem_data
10-test_bn_data Move bn and evp test programs input data to their respective data dir 2017-06-15 19:46:24 +02:00
15-test_ecparam_data Improve testing of elliptic curve validation 2017-03-20 06:40:16 +01:00
15-test_mp_rsa_data Support multi-prime RSA (RFC 8017) 2017-11-21 14:38:42 +08:00
30-test_evp_data [SM2_sign] add minimal EVP_PKEY functionality testing 2018-04-25 10:24:43 +01:00
80-test_ocsp_data Add OCSP API test executable 2017-11-11 20:03:49 -06:00
90-test_includes_data CONF inclusion test: Add VMS specific tests 2018-03-12 23:01:02 +01:00
90-test_sslapi_data Add a test for SRP 2018-04-13 09:37:39 +01:00
90-test_store_data STORE tests: add PKCS#12 tests 2017-06-29 11:55:31 +02:00
95-test_external_krb5_data Add external krb5 test support 2017-04-18 19:10:25 +02:00
95-test_external_pyca_data Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
01-test_abort.t
01-test_sanity.t
01-test_symbol_presence.t
01-test_test.t Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
02-test_internal_ctype.t This has been added to avoid the situation where some host ctype.h functions 2017-08-22 09:45:25 +10:00
02-test_lhash.t Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
02-test_ordinals.t
02-test_stack.t Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
03-test_exdata.t
03-test_internal_asn1.t test/recipes/03-test_internal_*: call setup() first. 2017-03-15 12:16:48 +01:00
03-test_internal_chacha.t Fix a few internals tests 2017-03-20 11:24:33 +01:00
03-test_internal_curve448.t Update copyright year 2018-02-27 13:59:42 +00:00
03-test_internal_mdc2.t Split test/recipes/03_test_internal.t into individual tests 2017-03-10 20:18:56 +01:00
03-test_internal_modes.t test/recipes/03-test_internal_*: call setup() first. 2017-03-15 12:16:48 +01:00
03-test_internal_poly1305.t Fix a few internals tests 2017-03-20 11:24:33 +01:00
03-test_internal_siphash.t Fix a few internals tests 2017-03-20 11:24:33 +01:00
03-test_internal_sm4.t Update copyright year 2018-02-27 13:59:42 +00:00
03-test_internal_ssl_cert_table.t Add sanity test for certificate table 2017-07-13 12:38:42 +01:00
03-test_internal_x509.t test/recipes/03-test_internal_*: call setup() first. 2017-03-15 12:16:48 +01:00
03-test_ui.t
04-test_asn1_encode.t Add a test of encoding and decoding LONG, INT32, UINT32, INT64 and UINT64 2017-04-04 11:29:23 +02:00
04-test_asn1_string_table.t Add test cases and docs for ASN1_STRING_TABLE_* functions 2017-07-26 20:06:51 +02:00
04-test_bio_callback.t Fix bio callback backward compatibility 2018-03-19 14:20:53 +01:00
04-test_bioprint.t Convert more tests to framework 2017-04-18 14:50:00 -04:00
04-test_pem.t Avoid unnecessary MSYS2 conversion of some arguments 2017-11-22 00:37:34 +01:00
05-test_bf.t
05-test_cast.t
05-test_des.t
05-test_hmac.t
05-test_idea.t
05-test_md2.t
05-test_mdc2.t
05-test_rand.t Update copyright year 2018-04-03 13:57:12 +01:00
05-test_rc2.t
05-test_rc4.t
05-test_rc5.t
06-test-rdrand.t Update copyright year 2018-03-20 13:08:46 +00:00
10-test_bn.t Move bn and evp test programs input data to their respective data dir 2017-06-15 19:46:24 +02:00
10-test_exp.t
15-test_dh.t
15-test_dsa.t Fix tests of TEST tests, as it were 2017-05-04 12:08:48 -04:00
15-test_ec.t
15-test_ecdsa.t
15-test_ecparam.t File::Glob option ':bsd_glob' doesn't work everywhere, replace w/ a wrapper 2017-08-15 11:31:18 +02:00
15-test_genrsa.t Update copyright year 2018-04-17 15:18:40 +02:00
15-test_mp_rsa.t rsa/rsa_gen.c: harmonize keygen's ability with RSA_security_bits. 2017-11-28 20:05:48 +01:00
15-test_out_option.t Fix test_out_option 2018-03-14 18:37:08 +01:00
15-test_rsa.t
15-test_rsapss.t Rather use -out parameter than redirect stdout 2017-03-14 17:21:24 +01:00
20-test_enc_more.t Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
20-test_enc.t Adapt 20-test_enc.t and 20-test_enc_more.t to use statusvar 2017-03-21 16:12:29 +01:00
20-test_passwd.t
25-test_crl.t Switch command-line utils to new nameopt API. 2017-04-25 12:37:17 -04:00
25-test_d2i.t
25-test_pkcs7.t
25-test_req.t Use randomness not entropy 2017-06-27 12:14:49 -04:00
25-test_sid.t
25-test_verify.t Many spelling fixes/typo's corrected. 2017-11-11 19:03:10 -05:00
25-test_x509.t Add test for -nameout output 2017-03-14 15:18:07 -04:00
30-test_afalg.t Update copyright year 2018-02-13 13:59:25 +00:00
30-test_engine.t
30-test_evp_extra.t
30-test_evp.t Move bn and evp test programs input data to their respective data dir 2017-06-15 19:46:24 +02:00
30-test_pbelu.t
30-test_pkey_meth_kdf.t Add PKEY_METHOD macro tests 2017-08-08 15:44:49 +01:00
30-test_pkey_meth.t
40-test_rehash.t Update copyright year 2018-02-13 13:59:25 +00:00
60-test_x509_check_cert_pkey.t Fix no-dsa build again 2017-06-24 21:46:36 -05:00
60-test_x509_dup_cert.t Correct Oracle copyrights & clarify. 2017-06-15 15:50:50 +10:00
60-test_x509_store.t
60-test_x509_time.t
70-test_asyncio.t
70-test_bad_dtls.t
70-test_clienthello.t Add tests for the padding extension 2017-03-16 15:37:41 +00:00
70-test_comp.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_key_share.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_packet.t
70-test_recordlen.t
70-test_renegotiation.t Add a test to verify the ClientHello version is the same in a reneg 2018-04-24 09:54:31 +01:00
70-test_servername.t Make SSL_set_tlsext_host_name no effect from server side 2017-07-28 11:51:59 -04:00
70-test_sslcbcpadding.t recipes/70-test_ssl{cbcpadding,extension,records}: make it work w/fragmentation. 2018-04-18 19:57:54 +02:00
70-test_sslcertstatus.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslextension.t recipes/70-test_ssl{cbcpadding,extension,records}: make it work w/fragmentation. 2018-04-18 19:57:54 +02:00
70-test_sslmessages.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslrecords.t recipes/70-test_ssl{cbcpadding,extension,records}: make it work w/fragmentation. 2018-04-18 19:57:54 +02:00
70-test_sslsessiontick.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslsigalgs.t Split configuration of TLSv1.3 ciphers from older ciphers 2018-03-14 10:15:50 +00:00
70-test_sslsignature.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslskewith0p.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslversions.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_sslvertol.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_tls13cookie.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_tls13downgrade.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_tls13hrr.t Split configuration of TLSv1.3 ciphers from older ciphers 2018-03-14 10:15:50 +00:00
70-test_tls13kexmodes.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_tls13messages.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_tls13psk.t Fix miscellaneous typos in docs and source 2018-03-17 18:24:03 +01:00
70-test_tlsextms.t Update copyright year 2018-02-13 13:59:25 +00:00
70-test_verify_extra.t
70-test_wpacket.t
80-test_ca.t Add random serial# support. 2017-08-22 09:00:04 -04:00
80-test_cipherbytes.t
80-test_cipherlist.t Update copyright year 2018-04-03 13:57:12 +01:00
80-test_ciphername.t Support converting cipher name to RFC name and vice versa 2017-07-21 07:20:14 +10:00
80-test_cms.t no-ec2m fixes 2017-08-10 16:48:47 +01:00
80-test_ct.t
80-test_dane.t
80-test_dtls_mtu.t
80-test_dtls.t
80-test_dtlsv1listen.t
80-test_ocsp.t Add OCSP API test executable 2017-11-11 20:03:49 -06:00
80-test_pkcs12.t Update copyright year 2018-02-27 13:59:42 +00:00
80-test_ssl_new.t Fix no-ec 2018-03-14 19:24:54 +00:00
80-test_ssl_old.t Split configuration of TLSv1.3 ciphers from older ciphers 2018-03-14 10:15:50 +00:00
80-test_ssl_test_ctx.t
80-test_sslcorrupt.t
80-test_tsa.t test/recipes/80-test_tsa.t: Don't trust 'OPENSSL_CONF' 2017-07-24 11:50:46 +02:00
80-test_x509aux.t
90-test_asn1_time.t Consolidate to a single asn1_time_from_tm() function 2017-08-04 11:24:03 +10:00
90-test_async.t
90-test_bio_enc.t
90-test_constant_time.t
90-test_fatalerr.t Add a test for CVE-2017-3737 2017-12-06 15:37:49 +00:00
90-test_gmdiff.t
90-test_ige.t
90-test_includes.t CONF inclusion test: Add VMS specific tests 2018-03-12 23:01:02 +01:00
90-test_memleak.t
90-test_overhead.t
90-test_secmem.t
90-test_shlibload.t Add dladdr() for AIX 2018-03-20 21:33:50 -04:00
90-test_srp.t
90-test_sslapi.t Update copyright year 2018-04-17 15:18:40 +02:00
90-test_sslbuffers.t Add support to free/allocate SSL buffers 2017-07-26 11:42:17 -04:00
90-test_store.t Reduce the verbosity of test_store 2018-03-20 16:46:59 +00:00
90-test_sysdefault.t Update copyright year 2018-03-20 13:08:46 +00:00
90-test_threads.t
90-test_time_offset.t Fix time offset calculation. 2017-05-02 10:38:54 +02:00
90-test_tls13ccs.t Don't run the TLSv1.3 CCS tests if TLSv1.3 is not enabled 2017-12-14 15:06:38 +00:00
90-test_tls13encryption.t Update copyright year 2018-02-13 13:59:25 +00:00
90-test_tls13secrets.t
90-test_v3name.t
95-test_external_boringssl.t Rearrange test/recipes/95-test_*.t to use skip_all 2017-05-05 23:10:41 +02:00
95-test_external_krb5.t test/recipes/95-test_*.t : correct skip_all syntax 2017-05-06 10:29:16 +02:00
95-test_external_pyca.t test/recipes/95-test_*.t : correct skip_all syntax 2017-05-06 10:29:16 +02:00
99-test_ecstress.t Add ecstress test 2017-06-21 09:24:01 -04:00
99-test_fuzz.t Update copyright year 2018-04-03 13:57:12 +01:00
ocsp-response.der
tconversion.pl Consolidate the locations where we have our internal perl modules 2017-08-15 11:30:47 +02:00