Module kl

Source
Available on x86 or x86-64 only.
Expand description

AES Key Locker Intrinsics

The Intrinsics here correspond to those in the keylockerintrin.h C header.

Structsยง

AesOutput ๐Ÿ”’
EncodeKey128Output ๐Ÿ”’
EncodeKey256Output ๐Ÿ”’
WideAesOutput ๐Ÿ”’

Functionsยง

aesdec128kl ๐Ÿ”’ โš 
aesdec256kl ๐Ÿ”’ โš 
aesdecwide128kl ๐Ÿ”’ โš 
aesdecwide256kl ๐Ÿ”’ โš 
aesenc128kl ๐Ÿ”’ โš 
aesenc256kl ๐Ÿ”’ โš 
aesencwide128kl ๐Ÿ”’ โš 
aesencwide256kl ๐Ÿ”’ โš 
encodekey128 ๐Ÿ”’ โš 
encodekey256 ๐Ÿ”’ โš 
loadiwkey ๐Ÿ”’ โš 
_mm_aesdec128kl_u8โš Experimentalkl
Decrypt 10 rounds of unsigned 8-bit integers in input using 128-bit AES key specified in the 384-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesdec256kl_u8โš Experimentalkl
Decrypt 14 rounds of unsigned 8-bit integers in input using 256-bit AES key specified in the 512-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesdecwide128kl_u8โš Experimentalwidekl
Decrypt 10 rounds of 8 groups of unsigned 8-bit integers in input using 128-bit AES key specified in the 384-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesdecwide256kl_u8โš Experimentalwidekl
Decrypt 14 rounds of 8 groups of unsigned 8-bit integers in input using 256-bit AES key specified in the 512-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesenc128kl_u8โš Experimentalkl
Encrypt 10 rounds of unsigned 8-bit integers in input using 128-bit AES key specified in the 384-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesenc256kl_u8โš Experimentalkl
Encrypt 14 rounds of unsigned 8-bit integers in input using 256-bit AES key specified in the 512-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesencwide128kl_u8โš Experimentalwidekl
Encrypt 10 rounds of 8 groups of unsigned 8-bit integers in input using 128-bit AES key specified in the 384-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_aesencwide256kl_u8โš Experimentalwidekl
Encrypt 14 rounds of 8 groups of unsigned 8-bit integers in input using 256-bit AES key specified in the 512-bit key handle handle. Store the resulting unsigned 8-bit integers into the corresponding elements of output. Returns 0 if the operation was successful, and 1 if the operation failed due to a handle violation.
_mm_encodekey128_u32โš Experimentalkl
Wrap a 128-bit AES key into a 384-bit key handle and stores it in handle. Returns the control parameter used to create the IWKey.
_mm_encodekey256_u32โš Experimentalkl
Wrap a 256-bit AES key into a 512-bit key handle and stores it in handle. Returns the control parameter used to create the IWKey.
_mm_loadiwkeyโš Experimentalkl
Load internal wrapping key (IWKey). The 32-bit unsigned integer control specifies IWKeyโ€™s KeySource and whether backing up the key is permitted. IWKeyโ€™s 256-bit encryption key is loaded from key_lo and key_hi.