Re: [FFmpeg-devel] [PATCH 08/10] tools/crypto_bench: add AES-192 and AES-256

2015-10-14 Thread Nicolas George
Le primidi 21 vendémiaire, an CCXXIV, Rodger Combs a écrit :
> ---
>  tools/crypto_bench.c | 82 
> 
>  1 file changed, 82 insertions(+)

LGTM

Regards,

-- 
  Nicolas George


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 08/10] tools/crypto_bench: add AES-192 and AES-256

2015-10-12 Thread Rodger Combs
---
 tools/crypto_bench.c | 82 
 1 file changed, 82 insertions(+)

diff --git a/tools/crypto_bench.c b/tools/crypto_bench.c
index b3b24a6..ad20f95 100644
--- a/tools/crypto_bench.c
+++ b/tools/crypto_bench.c
@@ -118,6 +118,24 @@ static void run_lavu_aes128(uint8_t *output,
 av_aes_crypt(aes, output, input, size >> 4, NULL, 0);
 }
 
+static void run_lavu_aes192(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+static struct AVAES *aes;
+if (!aes && !(aes = av_aes_alloc()))
+fatal_error("out of memory");
+av_aes_init(aes, hardcoded_key, 192, 0);
+av_aes_crypt(aes, output, input, size >> 4, NULL, 0);
+}
+
+static void run_lavu_aes256(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+static struct AVAES *aes;
+if (!aes && !(aes = av_aes_alloc()))
+fatal_error("out of memory");
+av_aes_init(aes, hardcoded_key, 256, 0);
+av_aes_crypt(aes, output, input, size >> 4, NULL, 0);
+}
+
 static void run_lavu_blowfish(uint8_t *output,
   const uint8_t *input, unsigned size)
 {
@@ -218,6 +236,28 @@ static void run_crypto_aes128(uint8_t *output,
 AES_encrypt(input + i, output + i, );
 }
 
+static void run_crypto_aes192(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+AES_KEY aes;
+unsigned i;
+
+AES_set_encrypt_key(hardcoded_key, 192, );
+size -= 15;
+for (i = 0; i < size; i += 16)
+AES_encrypt(input + i, output + i, );
+}
+
+static void run_crypto_aes256(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+AES_KEY aes;
+unsigned i;
+
+AES_set_encrypt_key(hardcoded_key, 256, );
+size -= 15;
+for (i = 0; i < size; i += 16)
+AES_encrypt(input + i, output + i, );
+}
+
 static void run_crypto_blowfish(uint8_t *output,
 const uint8_t *input, unsigned size)
 {
@@ -297,6 +337,24 @@ static void run_gcrypt_aes128(uint8_t *output,
 gcry_cipher_encrypt(aes, output, size, input, size);
 }
 
+static void run_gcrypt_aes192(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+static gcry_cipher_hd_t aes;
+if (!aes)
+gcry_cipher_open(, GCRY_CIPHER_AES192, GCRY_CIPHER_MODE_ECB, 0);
+gcry_cipher_setkey(aes, hardcoded_key, 24);
+gcry_cipher_encrypt(aes, output, size, input, size);
+}
+
+static void run_gcrypt_aes256(uint8_t *output, const uint8_t *input, unsigned 
size)
+{
+static gcry_cipher_hd_t aes;
+if (!aes)
+gcry_cipher_open(, GCRY_CIPHER_AES256, GCRY_CIPHER_MODE_ECB, 0);
+gcry_cipher_setkey(aes, hardcoded_key, 32);
+gcry_cipher_encrypt(aes, output, size, input, size);
+}
+
 static void run_gcrypt_blowfish(uint8_t *output,
 const uint8_t *input, unsigned size)
 {
@@ -379,6 +437,28 @@ static void run_tomcrypt_aes128(uint8_t *output,
 aes_ecb_encrypt(input + i, output + i, );
 }
 
+static void run_tomcrypt_aes192(uint8_t *output, const uint8_t *input, 
unsigned size)
+{
+symmetric_key aes;
+unsigned i;
+
+aes_setup(hardcoded_key, 24, 0, );
+size -= 15;
+for (i = 0; i < size; i += 16)
+aes_ecb_encrypt(input + i, output + i, );
+}
+
+static void run_tomcrypt_aes256(uint8_t *output, const uint8_t *input, 
unsigned size)
+{
+symmetric_key aes;
+unsigned i;
+
+aes_setup(hardcoded_key, 32, 0, );
+size -= 15;
+for (i = 0; i < size; i += 16)
+aes_ecb_encrypt(input + i, output + i, );
+}
+
 static void run_tomcrypt_blowfish(uint8_t *output,
   const uint8_t *input, unsigned size)
 {
@@ -521,6 +601,8 @@ struct hash_impl implementations[] = {
 IMPL(tomcrypt, "RIPEMD-128", ripemd128, "9ab8bfba2ddccc5d99c9d4cdfb844a5f")
 IMPL_ALL("RIPEMD-160", ripemd160, 
"62a5321e4fc8784903bb43ab7752c75f8b25af00")
 IMPL_ALL("AES-128",aes128,"crc:ff6bc888")
+IMPL_ALL("AES-192",aes192,"crc:1022815b")
+IMPL_ALL("AES-256",aes256,"crc:792e4e8a")
 IMPL_ALL("CAMELLIA",   camellia,  "crc:7abb59a7")
 IMPL_ALL("CAST-128",   cast128,   "crc:456aa584")
 IMPL_ALL("BLOWFISH",   blowfish,  "crc:33e8aa74")
-- 
2.6.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel