diff --git a/IDE/WIN-SRTP-KDF-140-3/README.txt b/IDE/WIN-SRTP-KDF-140-3/README.txt
new file mode 100644
index 000000000..4ef0a1454
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/README.txt
@@ -0,0 +1,118 @@
+# Notes on the wolfssl-fips project
+
+First, if you did not get the FIPS files with your archive, you must contact
+wolfSSL to obtain them.
+
+The IDE/WIN10/wolfssl-fips.sln solution is for the FIPS 140-3 certificate or later.
+
+# Building the wolfssl-fips project
+
+The wolfCrypt FIPS library for Windows is a part of the wolfSSL library. It
+must be built as a static library, for the moment.
+
+The library project is built with Whole Program Optimization disabled. This is
+required so that necessary components of the library are not optimized away.
+There are two functions added to the library that are used as markers in
+memory for the in-core memory check of the code. WPO consolidates them into a
+single function. WPO also optimizes away the automatic FIPS entry function.
+
+Each of the source files inside the FIPS boundary defines their own code and
+constant section. The code section names start with ".fipsA$" and the constant
+section names start with ".fipsB$". Each subsection has a letter to organize
+them in a specific order. This specific ordering puts marker functions and
+constants on either end of the boundary so it can be hashed.
+
+
+# In Core Memory Test
+
+The In Core Memory test calculates a checksum (HMAC-SHA256) of the wolfCrypt
+FIPS library code and constant data and compares it with a known value in
+the code.
+
+The following wolfCrypt FIPS project linker settings are required for the DLL Win32 configuration:
+1) The [Randomized Base Address setting (ASLR)](https://learn.microsoft.com/en-us/cpp/build/reference/dynamicbase-use-address-space-layout-randomization?view=msvc-170)
+needs to be disabled on all builds as the feature throws off the in-core memory calculation causing the test to fail.
+2) The [Incremental Link](https://learn.microsoft.com/en-us/cpp/build/reference/incremental-link-incrementally?view=msvc-170)
+option need turned off so function pointers go to actual code, not a jump instruction.
+3) The [FixedBaseAddress](https://learn.microsoft.com/en-us/cpp/build/reference/fixed-fixed-base-address?view=msvc-170)
+option to YES, which disables the support for ASLR.
+
+The "verifyCore" check value in the source fips_test.c needs to be updated when
+building the code. The POS performs this check and the default failure callback
+will print out the calculated checksum. When developing your code, copy this
+value and paste it back into your code in the verifyCore initializer then
+rebuild the code. When statically linking, you may have to recalculate your
+check value when changing your application.
+
+# Build Options
+
+The default build options should be the proper default set of options:
+
+ * HAVE_FIPS
+ * HAVE_FIPS_VERSION=5
+ * HAVE_FIPS_VERSION_MINOR=1 (Also for FIPS Ready)
+ * HAVE_THREAD_LS
+ * WOLFSSL_KEY_GEN
+ * HAVE_AESGCM
+ * HAVE_HASHDRBG
+ * WOLFSSL_SHA384
+ * WOLFSSL_SHA512
+ * NO_PSK
+ * NO_RC4
+ * NO_DSA
+ * NO_MD4
+ * WOLFSSL_SHA224
+ * WOLFSSL_SHA3
+ * WC_RSA_PSS
+ * WC_RSA_NO_PADDING
+ * HAVE_ECC
+ * ECC_SHAMIR
+ * HAVE_ECC_CDH
+ * ECC_TIMING_RESISTANT
+ * TFM_TIMING_RESISTANT
+ * WOLFSSL_AES_COUNTER
+ * WOLFSSL_AES_DIRECT
+ * HAVE_AES_ECB
+ * HAVE_AESCCM
+ * WOLFSSL_CMAC
+ * HAVE_HKDF
+ * WOLFSSL_VALIDATE_ECC_IMPORT
+ * WOLFSSL_VALIDATE_FFC_IMPORT
+ * HAVE_FFDHE_Q
+ * NO_DES
+ * NO_DES3
+ * NO_MD5
+ * NO_OLD_TLS
+ * WOLFSSL_TLS13
+ * HAVE_TLS_EXTENSIONS
+ * HAVE_SUPPORTED_CURVES
+ * GCM_TABLE_4BIT
+ * WOLFSSL_NO_SHAKE256
+ * WOLFSSL_VALIDATE_ECC_KEYGEN
+ * WOLFSSL_ECDSA_SET_K
+ * WOLFSSL_WOLFSSH
+ * WOLFSSL_PUBLIC_MP
+ * WC_RNG_SEED_CB
+ * TFM_ECC256
+ * ECC_USER_CURVES
+ * HAVE_ECC192
+ * HAVE_ECC224
+ * HAVE_ECC256
+ * HAVE_ECC384
+ * HAVE_ECC521
+ * HAVE_FFDHE_2048
+ * HAVE_FFDHE_3072
+ * HAVE_FFDHE_4096
+ * HAVE_FFDHE_6144
+ * HAVE_FFDHE_8192
+ * FP_MAX_BITS 16384
+
+The "NO" options explicitly disable algorithms that are not allowed in
+FIPS mode.
+
+Additionally one may enable:
+
+ * WOLFSSL_AESNI
+ * OPENSSL_EXTRA
+
+These settings are defined in IDE/WIN10/user_settings.h.
diff --git a/IDE/WIN-SRTP-KDF-140-3/include.am b/IDE/WIN-SRTP-KDF-140-3/include.am
new file mode 100644
index 000000000..c6b281bab
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/include.am
@@ -0,0 +1,11 @@
+# vim:ft=automake
+# included from Top Level Makefile.am
+# All paths should be given relative to the root
+
+EXTRA_DIST+= IDE/WIN10/README.txt
+EXTRA_DIST+= IDE/WIN10/test.vcxproj
+EXTRA_DIST+= IDE/WIN10/wolfssl-fips.sln
+EXTRA_DIST+= IDE/WIN10/wolfssl-fips.vcxproj
+EXTRA_DIST+= IDE/WIN10/user_settings.h
+EXTRA_DIST+= IDE/WIN10/resource.h
+EXTRA_DIST+= IDE/WIN10/wolfssl-fips.rc
diff --git a/IDE/WIN-SRTP-KDF-140-3/resource.h b/IDE/WIN-SRTP-KDF-140-3/resource.h
new file mode 100644
index 000000000..e92769c50
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/resource.h
@@ -0,0 +1,14 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by wolfssl-fips.rc
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 101
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif
diff --git a/IDE/WIN-SRTP-KDF-140-3/test.vcxproj b/IDE/WIN-SRTP-KDF-140-3/test.vcxproj
new file mode 100644
index 000000000..a41ff9ac4
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/test.vcxproj
@@ -0,0 +1,277 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ DLL Debug
+ Win32
+
+
+ DLL Debug
+ x64
+
+
+ DLL Release
+ Win32
+
+
+ DLL Release
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}
+ Win32Proj
+
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+ Application
+ v142
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>11.0.61030.0
+
+
+ $(SolutionDir)$(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\$(ProjectName)_obj\
+ false
+
+
+
+ Disabled
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+ Level3
+ ProgramDatabase
+
+
+ true
+ Console
+ MachineX86
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ false
+
+
+
+
+ Disabled
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+ Level3
+ ProgramDatabase
+
+
+ true
+ Console
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+
+
+
+
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+
+ Level3
+ ProgramDatabase
+ true
+
+
+ true
+ Console
+ MachineX86
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+ true
+ UseLinkTimeCodeGeneration
+ false
+
+
+
+
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+
+ Level3
+ ProgramDatabase
+ true
+
+
+ true
+ Console
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+ true
+ UseLinkTimeCodeGeneration
+
+
+
+
+ Disabled
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+ Level3
+ ProgramDatabase
+ false
+
+
+ true
+ Console
+ MachineX86
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+
+
+
+
+ Disabled
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;CYASSL_DLL;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+ Level3
+ ProgramDatabase
+ false
+
+
+ true
+ Console
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ false
+
+
+
+
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+
+ Level3
+ ProgramDatabase
+
+
+ true
+ Console
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+ true
+ MachineX86
+ UseLinkTimeCodeGeneration
+ true
+
+
+
+
+ .\;..\..\;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;HAVE_FIPS;HAVE_FIPS_VERSION=5;HAVE_FIPS_VERSION_MINOR=1;USE_CERT_BUFFERS_2048;USE_CERT_BUFFERS_256;WOLFSSL_USER_SETTINGS;WOLFSSL_DLL;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+
+ Level3
+ ProgramDatabase
+
+
+ true
+ Console
+ ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ true
+ true
+ UseLinkTimeCodeGeneration
+ true
+
+
+
+
+
+
+
+ {73973223-5ee8-41ca-8e88-1d60e89a237b}
+ false
+
+
+
+
+
+
\ No newline at end of file
diff --git a/IDE/WIN-SRTP-KDF-140-3/user_settings.h b/IDE/WIN-SRTP-KDF-140-3/user_settings.h
new file mode 100644
index 000000000..78c16335f
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/user_settings.h
@@ -0,0 +1,168 @@
+#ifndef _WIN_USER_SETTINGS_H_
+#define _WIN_USER_SETTINGS_H_
+
+/* For FIPS 140-2 3389 build set to "#if 1" */
+#if 0
+#undef HAVE_FIPS
+#define HAVE_FIPS
+#undef HAVE_FIPS_VERSION
+#define HAVE_FIPS_VERSION 2
+#undef HAVE_FIPS_VERSION_MINOR
+#define HAVE_FIPS_VERSION_MINOR 0
+#endif
+
+/* Set the following to 1 for WCv5.0-RC12 build. */
+#if 1
+#undef HAVE_FIPS
+#define HAVE_FIPS
+#undef HAVE_FIPS_VERSION
+#define HAVE_FIPS_VERSION 6
+#undef HAVE_FIPS_VERSION_MAJOR
+#define HAVE_FIPS_VERSION_MAJOR 6
+#undef HAVE_FIPS_VERSION_MINOR
+#define HAVE_FIPS_VERSION_MINOR 0
+#undef HAVE_FIPS_VERSION_PATCH
+#define HAVE_FIPS_VERSION_PATCH 0
+#endif
+
+/* For FIPS Ready, uncomment the following: */
+/* #define WOLFSSL_FIPS_READY */
+#ifdef WOLFSSL_FIPS_READY
+ #undef HAVE_FIPS
+ #define HAVE_FIPS
+ #undef HAVE_FIPS_VERSION
+ #define HAVE_FIPS_VERSION 5
+ #undef HAVE_FIPS_VERSION_MINOR
+ #define HAVE_FIPS_VERSION_MINOR 3
+#endif
+
+
+/* Verify this is Windows */
+#ifndef _WIN32
+#error This user_settings.h header is only designed for Windows
+#endif
+
+/* Configurations */
+#if defined(HAVE_FIPS)
+ /* FIPS */
+ #define OPENSSL_EXTRA
+ #define HAVE_THREAD_LS
+ #define WOLFSSL_KEY_GEN
+ #define HAVE_AESGCM
+ #define HAVE_HASHDRBG
+ #define WOLFSSL_SHA384
+ #define WOLFSSL_SHA512
+ #define NO_PSK
+ #define NO_RC4
+ #define NO_DSA
+ #define NO_MD4
+
+ #if defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 2)
+ #define WOLFSSL_SHA224
+ #define WOLFSSL_SHA3
+ #define WC_RSA_PSS
+ #define WC_RSA_NO_PADDING
+ #define HAVE_ECC
+ #define HAVE_ECC384
+ #define HAVE_ECC521
+ #define HAVE_SUPPORTED_CURVES
+ #define HAVE_TLS_EXTENSIONS
+ #define ECC_SHAMIR
+ #define HAVE_ECC_CDH
+ #define ECC_TIMING_RESISTANT
+ #define TFM_TIMING_RESISTANT
+ #define WOLFSSL_AES_COUNTER
+ #define WOLFSSL_AES_DIRECT
+ #define HAVE_AES_ECB
+ #define HAVE_AESCCM
+ #define WOLFSSL_CMAC
+ #define HAVE_HKDF
+ #define WOLFSSL_VALIDATE_ECC_IMPORT
+ #define WOLFSSL_VALIDATE_FFC_IMPORT
+ #define HAVE_FFDHE_Q
+ #define HAVE_PUBLIC_FFDHE
+ #ifdef _WIN64
+ #define WOLFSSL_AESNI
+ #define HAVE_INTEL_RDSEED
+ #endif
+ #define FORCE_FAILURE_RDSEED
+ #endif /* FIPS v2 */
+ #if defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 5)
+ #undef WOLFSSL_AESNI /* Comment out if using PAA */
+ #undef HAVE_INTEL_RDSEED
+ #undef FORCE_FAILURE_RDSEED
+ #undef HAVE_PUBLIC_FFDHE
+
+ #define NO_DES
+ #define NO_DES3
+ #define NO_MD5
+ #define NO_OLD_TLS
+
+ #define WOLFSSL_TLS13
+ #define HAVE_TLS_EXTENSIONS
+ #define HAVE_SUPPORTED_CURVES
+ #define GCM_TABLE_4BIT
+ #define WOLFSSL_NO_SHAKE256
+ #define WOLFSSL_VALIDATE_ECC_KEYGEN
+ #define WOLFSSL_ECDSA_SET_K
+ #define WOLFSSL_WOLFSSH
+ #define WOLFSSL_PUBLIC_MP
+ #define WC_RNG_SEED_CB
+ #define TFM_ECC256
+ #define ECC_USER_CURVES
+ #define HAVE_ECC192
+ #define HAVE_ECC224
+ #define HAVE_ECC256
+ #define HAVE_ECC384
+ #define HAVE_ECC521
+ #define HAVE_FFDHE_2048
+ #define HAVE_FFDHE_3072
+ #define HAVE_FFDHE_4096
+ #define HAVE_FFDHE_6144
+ #define HAVE_FFDHE_8192
+ #define WOLFSSL_AES_OFB
+ #define FP_MAX_BITS 16384
+ #endif /* FIPS v5 */
+ #if defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 6)
+ #define HAVE_ED25519
+ #define HAVE_ED448
+ #define WOLFSSL_SHAKE256
+ #define WOLFSSL_SHAKE128
+ #define WOLFSSL_AES_CFB
+ #define WOLFSSL_AES_XTS
+ #define HAVE_AES_KEYWRAP
+ #define WC_SRTP_KDF
+ #define HAVE_PBKDF2
+ //#define WOLFCRYPT_FIPS_CORE_HASH_VALUE
+ #endif /* FIPS v6 */
+#else
+ /* Enables blinding mode, to prevent timing attacks */
+ #define WC_RSA_BLINDING
+
+ #if defined(WOLFSSL_LIB)
+ /* The lib */
+ #define OPENSSL_EXTRA
+ #define WOLFSSL_RIPEMD
+ #define NO_PSK
+ #define HAVE_EXTENDED_MASTER
+ #define WOLFSSL_SNIFFER
+ #define HAVE_SECURE_RENEGOTIATION
+
+ #define HAVE_AESGCM
+ #define WOLFSSL_SHA384
+ #define WOLFSSL_SHA512
+
+ #define HAVE_SUPPORTED_CURVES
+ #define HAVE_TLS_EXTENSIONS
+
+ #define HAVE_ECC
+ #define ECC_SHAMIR
+ #define ECC_TIMING_RESISTANT
+ #else
+ /* The servers and clients */
+ #define OPENSSL_EXTRA
+ #define NO_PSK
+ #endif
+#endif /* HAVE_FIPS */
+
+#endif /* _WIN_USER_SETTINGS_H_ */
diff --git a/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.rc b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.rc
new file mode 100644
index 000000000..956269fb6
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.rc
@@ -0,0 +1,100 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "winres.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (United States) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""winres.h""\r\n"
+ "\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 5,7,0,0
+ PRODUCTVERSION 5,7,0,0
+ FILEFLAGSMASK 0x3fL
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x40004L
+ FILETYPE 0x7L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "CompanyName", "wolfSSL Inc."
+ VALUE "FileDescription", "The wolfSSL FIPS embedded SSL library is a lightweight, portable, C-language-based SSL/TLS library targeted at IoT, embedded, and RTOS environments primarily because of its size, speed, and feature set."
+ VALUE "FileVersion", "5.7.0.0"
+ VALUE "InternalName", "wolfssl-fips"
+ VALUE "LegalCopyright", "Copyright (C) 2023"
+ VALUE "OriginalFilename", "wolfssl-fips.dll"
+ VALUE "ProductName", "wolfSSL FIPS"
+ VALUE "ProductVersion", "5.7.0.0"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+END
+
+#endif // English (United States) resources
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.sln b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.sln
new file mode 100644
index 000000000..1609e6d91
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.sln
@@ -0,0 +1,61 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.32510.428
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wolfssl-fips", "wolfssl-fips.vcxproj", "{73973223-5EE8-41CA-8E88-1D60E89A237B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test", "test.vcxproj", "{D04BDF66-664A-4D59-BEAC-8AB2D5809C21}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ DLL Debug|Win32 = DLL Debug|Win32
+ DLL Debug|x64 = DLL Debug|x64
+ DLL Release|Win32 = DLL Release|Win32
+ DLL Release|x64 = DLL Release|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|Win32.Build.0 = Debug|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|x64.ActiveCfg = Debug|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Debug|x64.Build.0 = Debug|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Debug|x64.Build.0 = DLL Debug|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|Win32.Build.0 = DLL Release|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|x64.ActiveCfg = DLL Release|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.DLL Release|x64.Build.0 = DLL Release|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|Win32.ActiveCfg = Release|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|Win32.Build.0 = Release|Win32
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|x64.ActiveCfg = Release|x64
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}.Release|x64.Build.0 = Release|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|Win32.Build.0 = Debug|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|x64.ActiveCfg = Debug|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Debug|x64.Build.0 = Debug|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Debug|x64.Build.0 = DLL Debug|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|Win32.Build.0 = DLL Release|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|x64.ActiveCfg = DLL Release|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.DLL Release|x64.Build.0 = DLL Release|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|Win32.ActiveCfg = Release|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|Win32.Build.0 = Release|Win32
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|x64.ActiveCfg = Release|x64
+ {D04BDF66-664A-4D59-BEAC-8AB2D5809C21}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {0CFCC869-45D3-42AD-BA73-29938093A38F}
+ EndGlobalSection
+EndGlobal
diff --git a/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.vcxproj b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.vcxproj
new file mode 100644
index 000000000..88980d7ee
--- /dev/null
+++ b/IDE/WIN-SRTP-KDF-140-3/wolfssl-fips.vcxproj
@@ -0,0 +1,377 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ DLL Debug
+ Win32
+
+
+ DLL Debug
+ x64
+
+
+ DLL Release
+ Win32
+
+
+ DLL Release
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {73973223-5EE8-41CA-8E88-1D60E89A237B}
+ wolfssl-fips
+ Win32Proj
+
+
+
+ StaticLibrary
+ v142
+ Unicode
+ true
+
+
+ DynamicLibrary
+ v142
+ Unicode
+ true
+
+
+ StaticLibrary
+ v142
+ Unicode
+ true
+
+
+ DynamicLibrary
+ v142
+ Unicode
+ true
+
+
+ StaticLibrary
+ v142
+ Unicode
+
+
+ DynamicLibrary
+ v142
+ Unicode
+
+
+ StaticLibrary
+ v142
+ Unicode
+
+
+ DynamicLibrary
+ v142
+ Unicode
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(SolutionDir)$(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\$(ProjectName)_obj\
+
+
+ false
+
+
+ false
+
+
+ false
+
+
+ false
+
+
+
+ Disabled
+ ./;../../;%(AdditionalIncludeDirectories)
+ WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ Level4
+ ProgramDatabase
+ 4206;4214;4706;%(DisableSpecificWarnings)
+
+
+
+
+ Disabled
+ ./;../../;%(AdditionalIncludeDirectories)
+ BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ Level4
+ ProgramDatabase
+ 4206;4214;4706;%(DisableSpecificWarnings)
+
+
+ ws2_32.lib;%(AdditionalDependencies)
+ 0x5A000000
+ false
+ false
+ true
+
+
+
+
+ Disabled
+ ./;../../;%(AdditionalIncludeDirectories)
+ WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ Level4
+ ProgramDatabase
+ 4206;4214;4706;%(DisableSpecificWarnings)
+
+
+
+
+ Disabled
+ ./;../../;%(AdditionalIncludeDirectories)
+ BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+ Level4
+ ProgramDatabase
+ 4206;4214;4706;%(DisableSpecificWarnings)
+
+
+ ws2_32.lib;%(AdditionalDependencies)
+ 0x5A000000
+ false
+ false
+ true
+
+
+
+
+ MaxSpeed
+ true
+ ./;../../;%(AdditionalIncludeDirectories)
+ WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+ true
+ Level3
+ ProgramDatabase
+ false
+
+
+
+
+ MaxSpeed
+ true
+ ./;../../;%(AdditionalIncludeDirectories)
+ BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+ true
+ Level3
+ ProgramDatabase
+
+
+ ws2_32.lib;%(AdditionalDependencies)
+ false
+ 0x5A000000
+ true
+
+
+
+
+ MaxSpeed
+ true
+ ./;../../;%(AdditionalIncludeDirectories)
+ WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+ true
+ Level3
+ ProgramDatabase
+ false
+
+
+
+
+ MaxSpeed
+ true
+ ./;../../;%(AdditionalIncludeDirectories)
+ BUILDING_WOLFSSL;WOLFSSL_DLL;WOLFSSL_USER_SETTINGS;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+ true
+ Level3
+ ProgramDatabase
+
+
+ ws2_32.lib;%(AdditionalDependencies)
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ false
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+ false
+ false
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+
+
+
+
+ false
+ false
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+ false
+ false
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+
+
+
+
+
+
+
+
+
+
+
+ false
+ false
+ false
+ false
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ ml64.exe /DHAVE_FIPS /DHAVE_FIPS_VERSION=5 /DHAVE_FIPS_VERSION_MINOR=1 /c /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+ $(IntDir)%(Filename).obj
+
+
+
+
+
+
\ No newline at end of file
diff --git a/wolfcrypt/src/aes_asm.asm b/wolfcrypt/src/aes_asm.asm
index 1531748da..ef4e4b9cf 100644
--- a/wolfcrypt/src/aes_asm.asm
+++ b/wolfcrypt/src/aes_asm.asm
@@ -40,7 +40,7 @@ IFDEF HAVE_FIPS
ENDIF
IF fips_version GE 2
- fipsAbc SEGMENT ALIAS(".fipsA$bc") 'CODE'
+ fipsAb SEGMENT ALIAS(".fipsA$b") 'CODE'
ELSE
_text SEGMENT
ENDIF
@@ -1523,7 +1523,7 @@ MAKE_RK256_b:
IF fips_version GE 2
- fipsAbc ENDS
+ fipsAb ENDS
ELSE
_text ENDS
ENDIF
diff --git a/wolfcrypt/src/ed25519.c b/wolfcrypt/src/ed25519.c
index e5572c377..3dd1d8c4a 100644
--- a/wolfcrypt/src/ed25519.c
+++ b/wolfcrypt/src/ed25519.c
@@ -41,8 +41,8 @@
#define FIPS_NO_WRAPPERS
#ifdef USE_WINDOWS_API
- #pragma code_seg(".fipsA$fa")
- #pragma const_seg(".fipsB$fa")
+ #pragma code_seg(".fipsA$f")
+ #pragma const_seg(".fipsB$f")
#endif
#endif
diff --git a/wolfcrypt/src/ed448.c b/wolfcrypt/src/ed448.c
index 2c746860a..727ca810e 100644
--- a/wolfcrypt/src/ed448.c
+++ b/wolfcrypt/src/ed448.c
@@ -43,8 +43,8 @@
#define FIPS_NO_WRAPPERS
#ifdef USE_WINDOWS_API
- #pragma code_seg(".fipsA$fb")
- #pragma const_seg(".fipsB$fb")
+ #pragma code_seg(".fipsA$f")
+ #pragma const_seg(".fipsB$f")
#endif
#endif
diff --git a/wolfcrypt/src/pwdbased.c b/wolfcrypt/src/pwdbased.c
index cfebea2f1..5ca98cb0f 100644
--- a/wolfcrypt/src/pwdbased.c
+++ b/wolfcrypt/src/pwdbased.c
@@ -33,8 +33,8 @@
#define FIPS_NO_WRAPPERS
#ifdef USE_WINDOWS_API
- #pragma code_seg(".fipsA$ha")
- #pragma const_seg(".fipsB$ha")
+ #pragma code_seg(".fipsA$h")
+ #pragma const_seg(".fipsB$h")
#endif
#endif
diff --git a/wolfcrypt/test/test.c b/wolfcrypt/test/test.c
index c0b688be4..d5e9b10d7 100644
--- a/wolfcrypt/test/test.c
+++ b/wolfcrypt/test/test.c
@@ -34812,7 +34812,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t ed448_test(void)
WOLFSSL_SMALL_STACK_STATIC const byte* sigs[] = {sig1, sig2, sig3, sig4, sig5, sig6};
#define SIGSZ sizeof(sig1)
- PEDANTIC_EXTENSION WOLFSSL_SMALL_STACK_STATIC const byte msg1[] = { };
+ PEDANTIC_EXTENSION WOLFSSL_SMALL_STACK_STATIC const byte msg1[] = { 0 };
WOLFSSL_SMALL_STACK_STATIC const byte msg2[] = { 0x03 };
WOLFSSL_SMALL_STACK_STATIC const byte msg3[] = { 0x64, 0xa6, 0x5f, 0x3c, 0xde, 0xdc, 0xdd,
0x66, 0x81, 0x1e, 0x29, 0x15 };