mirror of
https://git.suyu.dev/suyu/mbedtls.git
synced 2025-12-24 00:06:32 +01:00
Document what the SSL async sign callback needs to do with RSA
Document how the SSL async sign callback must treat its md_alg and hash parameters when doing an RSA signature: sign-the-hash if md_alg is nonzero (TLS 1.2), and sign-the-digestinfo if md_alg is zero (TLS <= 1.1). In ssl_server2, don't use md_alg=MBEDTLS_MD_NONE to indicate that ssl_async_resume must perform an encryption, because md_alg is also MBEDTLS_MD_NONE in TLS <= 1.1. Add a test case to exercise this case (signature with MBEDTLS_MD_NONE).
This commit is contained in:
parent
ceb541b7de
commit
d3268834f3
3 changed files with 70 additions and 19 deletions
|
|
@ -4088,6 +4088,18 @@ run_test "SSL async private: sign, delay=1" \
|
|||
-s "Async resume (slot [0-9]): call 0 more times." \
|
||||
-s "Async resume (slot [0-9]): sign done, status=0"
|
||||
|
||||
# Test that the async callback correctly signs the 36-byte hash of TLS 1.0/1.1
|
||||
# with RSA PKCS#1v1.5 as used in TLS 1.0/1.1.
|
||||
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
||||
requires_config_enabled MBEDTLS_SSL_PROTO_TLS1_1
|
||||
run_test "SSL async private: sign, RSA, TLS 1.1" \
|
||||
"$P_SRV key_file=data_files/server2.key crt_file=data_files/server2.crt \
|
||||
async_operations=s async_private_delay1=0 async_private_delay2=0" \
|
||||
"$P_CLI force_version=tls1_1" \
|
||||
0 \
|
||||
-s "Async sign callback: using key slot " \
|
||||
-s "Async resume (slot [0-9]): sign done, status=0"
|
||||
|
||||
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
||||
run_test "SSL async private: decrypt, delay=0" \
|
||||
"$P_SRV \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue