FreeBSD krypterar direkt i processorn
Med nya versionen av FreeBSD 8.2 så stödjs AESNI vilket är ett antal nya instruktioner för att genomföra AES kryptoberäkningar direkt i processorn:
The FreeBSD crypto(4) framework (opencrypto) now supports XTS-AES (XEX-TCB-CTS, or XEX-based Tweaked Code Book mode with CipherText Stealing), which is defined in IEEE Std. 1619-2007.[r214254]
De nya instruktionerna är:
AESENC | Perform one round of an AES encryption flow |
AESENCLAST | Perform the last round of an AES encryption flow |
AESDEC | Perform one round of an AES decryption flow |
AESDECLAST | Perform the last round of an AES decryption flow |
AESKEYGENASSIST | Assist in AES round key generation |
AESIMC | Assist in AES Inverse Mix Columns |
PCLMULQDQ | Carryless multiply (CLMUL). [2 |
Prestandan med dessa nya instruktioner kan beskrivas enligt följande: ”28.0 cycles per byte to 3.5 cycles per byte” vilket blir ungefär nio gånger bättre prestanda. Se källa
Vi skrev även om detta 2008: