@@ -452,40 +452,50 @@ def test_pkcs1v15_signing(self, backend, subtests):
452452 )
453453 @pytest .mark .supported (
454454 only_if = lambda backend : backend .signature_hash_supported (
455- hashes .SHA1 ()
455+ hashes .SHA256 ()
456456 ),
457- skip_message = "Does not support SHA1 signature." ,
457+ skip_message = "Does not support SHA256 signature." ,
458458 )
459459 def test_pkcs1v15_signing_without_digest (self , backend , subtests ):
460- vectors = _flatten_pkcs1_examples (
461- load_vectors_from_file (
462- os . path . join ( "asymmetric" , "RSA" , "pkcs1v15sign-vectors.txt" ),
463- load_pkcs1_vectors ,
464- )
460+ vectors = load_vectors_from_file (
461+ os . path . join (
462+ "asymmetric" , "RSA" , "FIPS_186-2" , "SigVer15_186-3.rsp"
463+ ) ,
464+ load_rsa_nist_vectors ,
465465 )
466- for private , public , example in vectors :
466+ for params in vectors :
467+ if params ["fail" ] or params ["algorithm" ] != "SHA256" :
468+ continue
467469 with subtests .test ():
470+ dmp1 = rsa .rsa_crt_dmp1 (
471+ params ["private_exponent" ], params ["p" ]
472+ )
473+ dmq1 = rsa .rsa_crt_dmq1 (
474+ params ["private_exponent" ], params ["q" ]
475+ )
476+ iqmp = rsa .rsa_crt_iqmp (params ["p" ], params ["q" ])
477+
468478 private_key = rsa .RSAPrivateNumbers (
469- p = private ["p" ],
470- q = private ["q" ],
471- d = private ["private_exponent" ],
472- dmp1 = private [ " dmp1" ] ,
473- dmq1 = private [ " dmq1" ] ,
474- iqmp = private [ " iqmp" ] ,
479+ p = params ["p" ],
480+ q = params ["q" ],
481+ d = params ["private_exponent" ],
482+ dmp1 = dmp1 ,
483+ dmq1 = dmq1 ,
484+ iqmp = iqmp ,
475485 public_numbers = rsa .RSAPublicNumbers (
476- e = private ["public_exponent" ], n = private ["modulus" ]
486+ e = params ["public_exponent" ], n = params ["modulus" ]
477487 ),
478488 ).private_key (backend , unsafe_skip_rsa_key_validation = True )
479489 signature = private_key .sign (
480490 binascii .unhexlify (
481491 compute_rsa_hash_digest (
482- backend , hashes .SHA1 (), example [ "message " ]
492+ backend , hashes .SHA256 (), params [ "msg " ]
483493 )
484494 ),
485495 padding .PKCS1v15 (),
486496 asym_utils .NoDigestInfo (),
487497 )
488- assert binascii .hexlify (signature ) == example [ "signature " ]
498+ assert binascii .hexlify (signature ) == params [ "s " ]
489499
490500 @pytest .mark .supported (
491501 only_if = lambda backend : backend .rsa_padding_supported (
@@ -1567,12 +1577,12 @@ class TestRSAPKCS1Verification:
15671577 )
15681578 )
15691579
1570- test_rsa_pkcs1v15_verify_sha1_without_digest = pytest .mark .supported (
1580+ test_rsa_pkcs1v15_verify_sha256_without_digest = pytest .mark .supported (
15711581 only_if = lambda backend : (
1572- backend .signature_hash_supported (hashes .SHA1 ())
1582+ backend .signature_hash_supported (hashes .SHA256 ())
15731583 and backend .rsa_padding_supported (padding .PKCS1v15 ())
15741584 ),
1575- skip_message = "Does not support SHA1 and PKCS1v1.5." ,
1585+ skip_message = "Does not support SHA256 and PKCS1v1.5." ,
15761586 )(
15771587 generate_rsa_verification_without_digest_test (
15781588 load_rsa_nist_vectors ,
0 commit comments