Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AES XTS asm x64 MSVC #7424

Merged
merged 1 commit into from
May 13, 2024
Merged

AES XTS asm x64 MSVC #7424

merged 1 commit into from
May 13, 2024

Conversation

SparkiDev
Copy link
Contributor

Description

Use assembly code for AES-XTS with MSVC for x64.

Testing

Jenkins

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

@SparkiDev SparkiDev self-assigned this Apr 15, 2024
@SparkiDev SparkiDev force-pushed the aes_xts_x64_msvc branch 6 times, most recently from 58ac50f to 25168e7 Compare April 15, 2024 07:53
@@ -117,6 +117,7 @@
#define HAVE_FFDHE_6144
#define HAVE_FFDHE_8192
#define WOLFSSL_AES_OFB
#define WOLFSSL_AES_XTS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we should enable XTS mode in this section just because this is the default file we reference for the first 2 140-3 submissions as the "allowed" settings but XTS wasn't in either of those submissions. This would be more "ideal" if we want it in this file:

diff --git a/IDE/WIN10/user_settings.h b/IDE/WIN10/user_settings.h
index cc1c34ede..d0b6e727c 100644
--- a/IDE/WIN10/user_settings.h
+++ b/IDE/WIN10/user_settings.h
@@ -119,6 +119,9 @@
         #define WOLFSSL_AES_OFB
         #define FP_MAX_BITS 16384
     #endif /* FIPS v5 */
+    #if defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 7)
+        #define WOLFSSL_AES_XTS
+    #endif
 #else
     /* Enables blinding mode, to prevent timing attacks */
     #define WC_RSA_BLINDING
   #endif /* FIPS v5 */

However for v6 (new submission with XTS) or v7 (fips-ready moving forward) we'll be referring to IDE/WIN-SRTP-KDF-140-3/ (which should already have XTS enabled for v6 or greater).

v5.2.0 -> first 140-3 submission (HAVE_FIPS_VERSION >= 5)
v5.2.1 -> second 140-3 submission (HAVE_FIPS_VERSION >= 5)
v6.0.0 -> third 140-3 submission (HAVE_FIPS_VERSION >= 6)
v7.0.0 -> fips-ready latest version (HAVE_FIPS_VERSION >= 7)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change made as described in diff.

Copy link
Contributor

@douzzer douzzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this has merge conflicts now.

@@ -119,6 +119,9 @@
#define WOLFSSL_AES_OFB
#define FP_MAX_BITS 16384
#endif /* FIPS v5 */
#if defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION >= 7)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be HAVE_FIPS_VERSION >= 6.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

@douzzer douzzer assigned SparkiDev and unassigned wolfSSL-Bot May 9, 2024
Use assembly code for AES-XTS with MSVC for x64.
@SparkiDev
Copy link
Contributor Author

retest this please

@SparkiDev SparkiDev assigned douzzer and wolfSSL-Bot and unassigned SparkiDev May 10, 2024
@douzzer douzzer merged commit 4b81a99 into wolfSSL:master May 13, 2024
115 checks passed
jefferyq2 pushed a commit to jefferyq2/wolfssl that referenced this pull request Jun 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants