A Linux 7.3 ciklusba ezen a héten olvasztották be azokat az új library API-kat, amelyek a kernel-ben használt AES titkosítási módokat kezelik, például az ECB, CBC, CBC-CTS, CTR, XCTR, XTS, GCM és CCM módokat. Biggers a beolvasztási kérelemben így foglalta össze ezt a kezdeményezést:
"Ezeknek az AES módoknak sok kernel-beli felhasználója van, amelyek jelenleg a crypto_skcipher vagy a crypto_aead API-kat használják. A meglévő API-k nehezen használhatók és nem hatékonyak. Eddig az jelentette a fő hiányosságot a crypto library-ben, hogy ezekhez nem volt megfelelő library-támogatás.
Ez a módosításcsomag ennek a következő lépése:
- Az új API-k megvalósítása a library meglévő, egyblokkos AES-t támogató funkcióira építve.
- Az új API-k teljes körű dokumentálása.
- Az egyetlen felhasználó átállítása a régi AES-GCM library API-ról az új, rugalmasabb API-ra, majd a régi API és a hozzá tartozó megvalósítás eltávolítása.
- Az új API-k összekötése a hagyományos crypto API-val, crypto_skcipher és crypto_aead algoritmusok hozzáadásával.
Így az új API-kra is kiterjednek a hagyományos crypto API önellenőrzései. Emellett máris ténylegesen használják őket azokon a rendszereken, ahol ezekhez a módokhoz nincs architektúra-optimalizált kód.
A legfontosabb azonban, hogy ez előfeltétele annak, hogy az ezekhez az AES módokhoz készült architektúra-optimalizált kódot (azaz az arch//crypto/aes fájlokat) áthelyezzük a library-be, ami szokás szerint rengeteg felesleges „ragasztó” kódot fog megszüntetni.
Megjegyzendő, hogy ellentétben néhány más, már a library-be áthelyezett algoritmussal, például a SHA-512-vel, ezeknél az AES módoknál túl sok feladat gyűlt össze ahhoz, hogy egyetlen ciklusban el lehessen végezni. Annak sem lett volna értelme, hogy ezeket a módokat egyesével kezeljük, mert általában összetartoznak vagy egymástól függenek, különösen az architektúra-optimalizált AES kódban.
Ezért a legtöbb előny (a kódsorok számának csökkenése, a teljesítmény javulása stb.) csak a későbbi ciklusokban jelentkezik majd, amikor az architektúra-optimalizált kódot is áthelyezzük a library-be, és a crypto_skcipher, illetve crypto_aead felhasználókat átállítjuk az új API-k használatára."
Az új AES titkosítási API-k tehát nemcsak letisztultabbak, hanem lehetővé teszik az architektúra-optimalizált kódra való átállást, további teljesítmény-fejlesztéseket, és segítenek megszüntetni a duplikált kódrészeket. Ezt a munkát már beolvasztották, így a következő Linux kernel verzióba, amely akár az idei év LTS kernel verziója is lehet.

