ED25519 public key method.
[openssl.git] / crypto / include / internal / aria.h
index 4d37189ae4521c1d7a38152ad72f745e3d0524eb..116f3ce9741eac02776f6f3e99396bf6fc767e9f 100644 (file)
@@ -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
 
 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;
+
+typedef unsigned char ARIA_c128[ARIA_BLOCK_SIZE];
 
 struct aria_key_st {
-    unsigned int rounds;
     ARIA_u128 rd_key[ARIA_MAX_KEYS];
+    unsigned int rounds;
 };
 typedef struct aria_key_st ARIA_KEY;