]> git.ipfire.org Git - thirdparty/openssl.git/commit
riscv: Implement AES-192
authorArd Biesheuvel <ardb@google.com>
Mon, 24 Jul 2023 14:41:17 +0000 (16:41 +0200)
committerHugo Landau <hlandau@openssl.org>
Thu, 26 Oct 2023 14:55:49 +0000 (15:55 +0100)
commit94474e02fa217c037ece9d819a9b12025f65cdb9
treefff8d61da5b1245163f93f71dbf2e64197daac8f
parentf20ee1f4908f1da9ebc072043b3cfbb90eba2508
riscv: Implement AES-192

Even though the RISC-V vector instructions only support AES-128 and
AES-256 for key generation, the round instructions themselves can
easily be used to implement AES-192 too - we just need to fallback to
the generic key generation routines in this case.

Note that the vector instructions use the encryption key schedule (but
in reverse order) so we need to generate the encryption key schedule
even when doing decryption using the vector instructions.

Signed-off-by: Ard Biesheuvel <ardb@google.com>
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Hugo Landau <hlandau@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/21923)
crypto/aes/asm/aes-riscv64-zvkned.pl
providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc
providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc
providers/implementations/ciphers/cipher_aes_hw_rv64i.inc
providers/implementations/ciphers/cipher_aes_ocb_hw.c
providers/implementations/ciphers/cipher_aes_xts_hw.c