<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Привет,</p>
    <p>а в AES-NI поддерживается AES-256? документы говорят, что да, но
      что-то я усомнился:</p>
    <pre>$ openssl speed -elapsed -evp aes-192-cbc aes-256-cbc
OpenSSL 1.1.1f  31 Mar 2020
options:bn(64,64) rc4(16x,int) des(int) aes(partial) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-P_ODHM/openssl-1.1.1f=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_TLS_SECURITY_LEVEL=2 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
<b>type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes</b><b>
</b><b>aes-256 cbc     117572.96k   120516.59k   121244.93k   121397.59k   122634.24k   121438.21k</b><b>
</b><b>aes-192-cbc     334763.02k   405603.16k   419957.16k   423428.10k   424490.33k   424361.98k</b><b>
</b></pre>
    <p>а при отключённом AES-NI цифры выглядят немного по другому:</p>
    <pre>$ OPENSSL_ia32cap="~0x200000200000000" openssl speed -elapsed -evp aes-192-cbc aes-256-cbc
OpenSSL 1.1.1f  31 Mar 2020
built on: Mon Apr 20 11:53:50 2020 UTC
options:bn(64,64) rc4(16x,int) des(int) aes(partial) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-P_ODHM/openssl-1.1.1f=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_TLS_SECURITY_LEVEL=2 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
<b>type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes</b><b>
</b><b>aes-256 cbc     115606.84k   118388.95k   118936.15k   119503.87k   118445.40k   119106.22k</b><b>
</b><b>aes-192-cbc     178179.26k   210933.72k   216861.18k   222834.69k   223677.10k   225585.83k</b><b>
</b></pre>
    <p>Хорошо видно, что производительность AES-192 присела, а вот
      производительность AES-256 при выключенном AES-NI осталась +- на
      том же уровне.</p>
    <p>Или это зависит от CPU? В моём случае это - Intel(R) Xeon(R) CPU
      E5-2658 v2 @ 2.40GHz - может на этом старичке поддержки AES-256
      еще не было в AES-NI, а добавилась позже?<br>
    </p>
    <p>Спасибо.<br>
    </p>
    <pre class="moz-signature" cols="72">-- 
Volodymyr Litovka
  "Vision without Execution is Hallucination." -- Thomas Edison</pre>
  </body>
</html>