Bonjour All,
I had successfully compiled FIPS complaint OpenSSL and got
libeayfips32.lib & ssleay32.lib with the complete module on the path
C:\usr\local\ssl\fips2.0\. I followed these steps:
==========================
1. Compile openssl-fips2.0
==========================
Open Visual Studio 2008 Command Prompt.
cd openssl-fips2.0\
ms\do_fips [no-asm]
Compiled FIPS module is located at C:\usr\local\ssl\fips-2.0
=======================================================
2. Integrate compiled openssl-fips2.0 in openssl-1.0.1e
=======================================================
Open Visual Studio 2008 Command Prompt.
cd openssl-1.0.1e\
perl Configure VC-WIN32 fips --with-fipslibdir=C:\usr\local\ssl\fips-2.0
ms\do_nasm
nmake -f ms\nt.mak
nmake -f ms\nt.mak install
Compiled FIPS compliant OpenSSL exe is located at C:\usr\local\ssl\bin\openssl.exe
Compiled FIPS compliant OpenSSL libeay32.lib & ssleay32.lib are located at C:\usr\local\ssl\lib\
Compiled FIPS compliant OpenSSL libeay32.dll & ssleay32.dll are located at C:\usr\local\ssl\bin\
but i am facing issues in using them with VisualC++ in
Visual Studio 2005. Normal versions of libeay32.lib & ssleay32.lib
work 100% fine with me. I want to simulate the tests and want to compile
the source (C:\openssl-fips-2.0\fips\sha\fips_shatest.C) in my VC++
VC2005 console application.
Create a new VC++ win32 console application project. In the
resource files, add the compiled fips module files libeayfips32.lib
& ssleay32.lib from C:\usr\local\ssl\fips2.0\lib\.
In the Source files, add the code file from the source code of
C:\openssl-fips-2.0\fips\sha\fips_shatest.C. Right click on the source
file and click properties. In the General section add the include files
path and set them to C:\usr\local\ss\include\ and
C:\usr\local\ssl\fips2.0\include\ and i am not using the precompiled
headers option.
When i compile the application i get the following lost list of errors:
error LNK2001: unresolved external symbol _FIPS_digestfinal libeayfips32.lib
error LNK2001: unresolved external symbol _FIPS_drbg_set_callbacks libeayfips32.lib
error LNK2001: unresolved external symbol _FIPS_md_ctx_cleanup libeayfips32.lib
........................................................................................
........................................................................................
........................................................................................
........................................................................................
error LNK2001: unresolved external symbol _EC_KEY_generate_key libeayfips32.lib
Microsoft
states that error LNK2001 occurs when Code references something (such
as a function, variable, or label) that the linker can't find in the
libraries and object files.
It means there is certainly some issue in FIPS complied
libeayfips32.lib & ssleay32.lib files. Kindly help me in this
regard.
Regards
Scott Thomas