November 21, 2024 •Alex Zaslavsky
Search
Technology
November 21, 2024 •Alex Zaslavsky
To achieve FIPS compliance, many enterprises rely on OpenSSL 1.X-compatible libraries, even though these versions have reached end of life (EOL). The latest OpenSSL releases (3.x) bring significant architectural changes and streamlined FIPS support. However, migrating to OpenSSL 3.x often requires extensive codebase modifications, particularly in critical areas like encryption. For enterprises with complex codebases or legacy systems, such changes introduce potential risks and demand rigorous testing, making immediate migration challenging. As a result, many organizations are opting to continue using OpenSSL 1.x, despite its EOL status.
On iOS, supporting FIPS-compliant OpenSSL 1.x presents unique challenges. The FIPS library is typically statically linked, and the application is cross-compiled, which requires embedding the FIPS module runtime signature into the application.
Here are several important guidelines to maintain FIPS Compliance with OpenSSL 1.x on iOS:
#define HMAC_SHA1_SIG "f1022ef5682e5d708ee5921e13f3051bbbb1a8c0"
nm <ios_app> | grep FIPS_rodata_start
By following these steps, you can ensure that your iOS application maintains FIPS compliance while using OpenSSL 1.X.
Alex is a Lead Software Engineer with SafeLogic.