Skip to content

Commit 60abd9e

Browse files
committed
Merged PR 10540579: Add OpenSSL implementation for RSA PSS test
## Description: ## Admin Checklist: - [ ] You have updated documentation in symcrypt.h to reflect any changes in behavior - [ ] You have updated CHANGELOG.md to reflect any changes in behavior - [ ] You have updated symcryptunittest to exercise any new functionality - [ ] If you have introduced any symbols in symcrypt.h you have updated production and test dynamic export symbols (exports.ver / exports.def / symcrypt.src) and tested the updated dynamic modules with symcryptunittest - [ ] If you have introduced functionality that varies based on CPU features, you have manually tested with and without relevant features - [ ] If you have made significant changes to a particular algorithm, you have checked that performance numbers reported by symcryptunittest are in line with expectations - [ ] If you have added new algorithms/modes, you have updated the status indicator text for the associated modules if necessary
1 parent f8950ca commit 60abd9e

File tree

5 files changed

+388
-3
lines changed

5 files changed

+388
-3
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ prior to the creation of a new release, based on the changes contained in that r
77

88
- Add SymCryptEntropyAccumulator to Windows kernel module
99
- Fix tweak lower 64 bit overflow calculation in SYMCRYPT_XtsAesXxx
10-
- Add OpenSSL implementation for XtsAes to symcryptunittest
10+
- Add OpenSSL implementation for XtsAes and AesGcm to symcryptunittest
11+
- Add OpenSSL implementation for RSA PSS to symcryptunittest
1112
- Add Windows user mode DLL
1213
- Fixed debug assertion failure in AES-GCM with nonce < 12 bytes when ASM is disabled
1314

cmake-configs/OpenSSL.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ if(OPENSSL_BUILD_FROM_SOURCE)
2222
WORKING_DIRECTORY ${OPENSSL_BUILD_ROOT})
2323
endif()
2424
endif()
25-
2625
if(NOT EXISTS "${OPENSSL_BUILD_ROOT}/OpenSSLConfig.cmake")
2726
set(ENV{LANG} C)
2827
set(ENV{LC_ALL} C)

unittest/inc/algorithm_base.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -663,6 +663,8 @@ typedef struct _RSAKEY_TESTBLOB {
663663
BYTE abModulus[RSAKEY_MAXKEYSIZE];
664664
BYTE abPrime1[RSAKEY_MAXKEYSIZE];
665665
BYTE abPrime2[RSAKEY_MAXKEYSIZE];
666+
// Only set in OpenSSL implementation right now.
667+
BYTE abPrivateExp[RSAKEY_MAXKEYSIZE];
666668

667669
// And some fields to make debugging easier
668670
const char * pcstrSource; // Where did this key come from

unittest/inc/openssl_implementations.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,12 @@ class AuthEncImpState<ImpOpenssl, AlgAes, ModeGcm> {
3232
BOOLEAN inComputation;
3333
};
3434

35+
template<>
36+
class RsaSignImpState<ImpOpenssl, AlgRsaSignPss> {
37+
public:
38+
EVP_PKEY *pkey;
39+
EVP_PKEY_CTX *pkey_ctx;
40+
};
41+
3542
VOID
3643
addOpensslAlgs();

0 commit comments

Comments
 (0)