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 bitsliced implementation added #6854

Merged
merged 1 commit into from
Nov 11, 2023

Conversation

SparkiDev
Copy link
Contributor

@SparkiDev SparkiDev commented Oct 10, 2023

Description

AES bitsliced implementation that is cache attack safe. Configure with:
--enable-aes-bitsliced
or define:
WC_AES_BITSLICED
HAVE_AES_ECB
HAVE_AES_DIRECT
Very slow for CBC, CFB, OFB and any mode that uses a previous encrypt block to calculate current.
CTR, GCM, XTS can parallelize the data and be much faster.

Added AES-ECB test to test.c.

  • Update: The correct spelling is WC_AES_BITSLICED and --enable-aes-bitsliced

Fixes zd#

Testing

--enable-aes-bitsliced

Checklist

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

@SparkiDev SparkiDev self-assigned this Oct 10, 2023
@SparkiDev SparkiDev force-pushed the aes_bit_sliced branch 5 times, most recently from e918432 to 73f3269 Compare October 10, 2023 08:20
@SparkiDev SparkiDev force-pushed the aes_bit_sliced branch 3 times, most recently from 63670c9 to f7f84fb Compare November 2, 2023 11:26
AES bitsliced implementation that is cache attack safe.
Configure with:
  --enable-aes-bitslice
or define:
  WC_AES_BITSLICE
  HAVE_AES_ECB
  HAVE_AES_DIRECT
Very slow for CBC, CFB, OFB and any mode that uses a previous encrypt
block to calculate current.
CTR, GCM, XTS can parallelize the data and be much faster.

Added AES-ECB test to test.c.
@JacobBarthelmeh JacobBarthelmeh merged commit c903a8c into wolfSSL:master Nov 11, 2023
102 checks passed
kp-mariappan-ramasamy added a commit to expressvpn/wolfssl-rs that referenced this pull request Jan 3, 2024
- Removed patch list to apply since it is not needed.
- Enabled `aes-bitsliced` which enables bit-sliced aes implementation to avoid cache attack
  Ref:
    https://github.com/wolfSSL/wolfssl/blob/master/README.md#wolfssl-release-566-dec-19-2023
    wolfSSL/wolfssl#6854
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.

None yet

3 participants