[openssl-dev] [openssl.org #4221] [PATCH] Accelerating Multi Block (MB) CBC SHA256 on architectures that support AVX512 instructions set

Gueron, Shay via RT rt at openssl.org
Thu Jan 7 02:26:19 UTC 2016


Hello all,

This patch is a contribution to OpenSSL.

It concerns the Multi Block (MB) CBC SHA256 implementation
(the function "tls1_1_multi_block_encrypt" and "aesni_cbc_hmac_sha256_ctrl" in "e_aes_cbc_hmac_sha256.c").

The patch extends the number of blocks (currently 8) to 16, when detecting an architecture that supports AVX512.

This enhances the performance of parallelized hashing, and as a byproduct speeds up MB CBC SHA256 (AES CBC with HMAC SHA256). The performance gains can be observed by invoking "openssl speed -mb -evp aes-128-cbc-hmac-sha256", when running on a (future) processor with AVX512. Significant improvement can be expected.

This patch extends over the previous patch [1] (that efficiently generates random IV's), and incorporates it as well.



[1] Patch #3850 - Improved performance  Multi Block CBC-SHA1 and CBC-SHA256.
https://mta.openssl.org/pipermail/openssl-dev/2015-May/001417.html

Developers and authors:
***************************************************************************
Shay Gueron (1, 2), Regev Shemy (2)
(1) University of Haifa, Israel
(2) Intel Corporation, Israel Development Center, Haifa, Israel
***************************************************************************



---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: sha256_MB_AVX512.PATCH
Type: application/octet-stream
Size: 228344 bytes
Desc: not available
URL: <http://mta.openssl.org/pipermail/openssl-dev/attachments/20160107/cfb7106e/attachment-0001.obj>
-------------- next part --------------
_______________________________________________
openssl-bugs-mod mailing list
openssl-bugs-mod at openssl.org
https://mta.openssl.org/mailman/listinfo/openssl-bugs-mod


More information about the openssl-dev mailing list