This PR adds a baseline SymCrypt provider + digest implementation for OpenSSL 3. It also prepared the existing SymCrypt engine code for further refactoring into common ScOSSL code.
Added SymCryptProvider to the project
Added digest implementation for the following algorithms using the default provider as a model
MD5 (for app compat and parity with SymCrypt engine)
SHA1 (for app compat and parity with SymCrypt engine)
SHA2 (256, 384, and 512)
SHA3 (256, 384, and 512) New
Added dispatch table generation macros for additional provider functions (subject to change as implemented)
Refactored SymCrypt engine
Prefixed engine-specific functions to distinguish from the provider and common functions
Moved common functionality to ScosslCommon
Added deprecation warning ignore, as most engine code has been marked for deprecation in OpenSSL 3.
This PR adds a baseline SymCrypt provider + digest implementation for OpenSSL 3. It also prepared the existing SymCrypt engine code for further refactoring into common ScOSSL code.