Hi,
We're upgrading from OpenSSL 3.0.9 (FIPS 140-2) to OpenSSL 3.1.2 (FIPS 140-3) and need help with mixed environment compatibility.
Migration Scenarios:
1. FIPS 140-2 Client communicates with FIPS 140-3 Server
Will handshake fail ? if the FIPS 140-2 client's offered cipher suites are all deemed unacceptable by the FIPS 140-3 server (e.g., they don't meet key length requirements, or use prohibited algorithms), as For FIPS 140-3, SHA-1 is not allowed for cryptographic hashing, and triple DES (3DES) is not allowed.
2. FIPS 140-3 Client communicates with FIPS 140-2 Server
Will handshake fail?, if the FIPS 140-2 server's available cipher suites are all considered weak or non-compliant by the FIPS 140-3 client (e.g., they use disallowed algorithms or insufficient key lengths).
Question:
How does OpenSSL recommend handling the interoperability issues between FIPS 140-2 and FIPS 140-3 clients and servers, given the possible handshake failures and incompatibilities in cipher suite negotiation? Are there best practices or bridging strategies to facilitate successful connections, or is it a requirement to have matching FIPS levels on both client and server to avoid these failures?