Patch-sæt til at accelerere AES-GCM kryptering/dekryptering

Patch-sæt til at accelerere AES-GCM kryptering/dekryptering

Den 2. juni præsenterede Eric Biggers (ingeniør fra Google) nye implementeringer af AES-XTS for langt højere ydeevne på Intel/AMD-processorer ved hjælp af de nye instruktionssæt AES-NI + AVX, VAES + AVX2, VAES + AVX10/256 og VAES + AVX10/512.

AES-NI GCM-koden erstatter den tidligere kode skrevet af Intel og løser eksisterende identificerede problemer:

"Dette sæt opdateringer tilføjer AES-GCM-implementering (Galois/Counter-tilstand) i VAES og AVX512/AVX10, hvilket forbedrer ydeevnen af AES-GCM med op til 162%. Derudover erstatter det den gamle AES-NI GCM-kode fra Intel med en ny, der er en smule hurtigere og løser en række problemer, herunder den enorme størrelse på den binære fil, som overstiger 250 KB. Se detaljer i rettelserne."

Den endelige tilstand af x86_64 AES-GCM assemblerkode er, at vi får to assemblerfiler: den ene genererer AES-NI-kode med eller uden AVX, og den anden genererer VAES-kode med AVX512/AVX10 med 256-bit eller 512-bit vektorer. Den understøtter ikke enkelt VAES (uden AVX512/AVX10). Dette adskiller sig lidt fra, hvad jeg lavede med AES-XTS, hvor én fil genererer AVX- og AVX512/AVX10-kode, inklusive kode, der kun bruger VAES (uden AVX512/AVX10), mens den anden fil kun genererer kode forskellig fra AVX. Men indtil videre ser dette ud til at være det rigtige valg for hver specifik algoritme, givet at begrænsningen på 16 SIMD-registre og 128-bit vektorer har ført til nogle markant forskellige designbeslutninger i AES-GCM, men ikke så meget for AES-XTS. Processorer der kun leveres med VAES, ser også ud til at være et midlertidigt fænomen, så vi bør måske ikke overanstrenge os for at understøtte denne kombination."

Kilde: linux.org.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster