提交 dc99b885 编写于 作者: L letrhee-nsr 提交者: Andy Polyakov

Add ARIA 32-bit implementation

Modified code from http://seed.kisa.or.kr to human readable code.
Previous 8-bit code is available with -DOPENSSL_SMALL_FOOTPRINT.
New code is >2x faster.
Reviewed-by: NAndy Polyakov <appro@openssl.org>
Reviewed-by: NRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3242)
上级 6e64c560
此差异已折叠。
......@@ -11,6 +11,8 @@
* Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved.
*/
/* Copyright (c) 2017 National Security Resarch Institute. All rights reserved. */
#ifndef HEADER_ARIA_H
# define HEADER_ARIA_H
......@@ -20,8 +22,6 @@
# error ARIA is disabled.
# endif
# include <stddef.h>
# define ARIA_ENCRYPT 1
# define ARIA_DECRYPT 0
......@@ -32,11 +32,14 @@
extern "C" {
# endif
typedef unsigned char ARIA_u128[ARIA_BLOCK_SIZE];
typedef union {
unsigned char c[ARIA_BLOCK_SIZE];
unsigned int u[ARIA_BLOCK_SIZE / sizeof(unsigned int)];
} ARIA_u128;
struct aria_key_st {
unsigned int rounds;
ARIA_u128 rd_key[ARIA_MAX_KEYS];
unsigned int rounds;
};
typedef struct aria_key_st ARIA_KEY;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册