summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crypto/ripemd.h17
-rw-r--r--crypto/rmd128.c16
-rw-r--r--crypto/rmd160.c20
3 files changed, 35 insertions, 18 deletions
diff --git a/crypto/ripemd.h b/crypto/ripemd.h
index 2858e22..c57a2d4 100644
--- a/crypto/ripemd.h
+++ b/crypto/ripemd.h
@@ -17,10 +17,27 @@
#define RMD320_DIGEST_SIZE 40
#define RMD320_BLOCK_SIZE 64
+/* initial values */
#define RMD_H0 0x67452301UL
#define RMD_H1 0xefcdab89UL
#define RMD_H2 0x98badcfeUL
#define RMD_H3 0x10325476UL
#define RMD_H4 0xc3d2e1f0UL
+#define RMD_H5 0x76543210UL
+#define RMD_H6 0xfedcba98UL
+#define RMD_H7 0x89abcdefUL
+#define RMD_H8 0x01234567UL
+#define RMD_H9 0x3c2d1e0fUL
+
+/* constants */
+#define RMD_K1 0x00000000UL
+#define RMD_K2 0x5a827999UL
+#define RMD_K3 0x6ed9eba1UL
+#define RMD_K4 0x8f1bbcdcUL
+#define RMD_K5 0xa953fd4eUL
+#define RMD_K6 0x50a28be6UL
+#define RMD_K7 0x5c4dd124UL
+#define RMD_K8 0x6d703ef3UL
+#define RMD_K9 0x7a6d76e9UL
#endif
diff --git a/crypto/rmd128.c b/crypto/rmd128.c
index 22cc13b..f72d2ce8 100644
--- a/crypto/rmd128.c
+++ b/crypto/rmd128.c
@@ -29,14 +29,14 @@ struct rmd128_ctx {
u32 buffer[16];
};
-#define K1 0x00000000UL
-#define K2 0x5a827999UL
-#define K3 0x6ed9eba1UL
-#define K4 0x8f1bbcdcUL
-#define KK1 0x50a28be6UL
-#define KK2 0x5c4dd124UL
-#define KK3 0x6d703ef3UL
-#define KK4 0x00000000UL
+#define K1 RMD_K1
+#define K2 RMD_K2
+#define K3 RMD_K3
+#define K4 RMD_K4
+#define KK1 RMD_K6
+#define KK2 RMD_K7
+#define KK3 RMD_K8
+#define KK4 RMD_K1
#define F1(x, y, z) (x ^ y ^ z) /* XOR */
#define F2(x, y, z) (z ^ (x & (y ^ z))) /* x ? y : z */
diff --git a/crypto/rmd160.c b/crypto/rmd160.c
index a8a9d3d..80d647a 100644
--- a/crypto/rmd160.c
+++ b/crypto/rmd160.c
@@ -29,16 +29,16 @@ struct rmd160_ctx {
u32 buffer[16];
};
-#define K1 0x00000000UL
-#define K2 0x5a827999UL
-#define K3 0x6ed9eba1UL
-#define K4 0x8f1bbcdcUL
-#define K5 0xa953fd4eUL
-#define KK1 0x50a28be6UL
-#define KK2 0x5c4dd124UL
-#define KK3 0x6d703ef3UL
-#define KK4 0x7a6d76e9UL
-#define KK5 0x00000000UL
+#define K1 RMD_K1
+#define K2 RMD_K2
+#define K3 RMD_K3
+#define K4 RMD_K4
+#define K5 RMD_K5
+#define KK1 RMD_K6
+#define KK2 RMD_K7
+#define KK3 RMD_K8
+#define KK4 RMD_K9
+#define KK5 RMD_K1
#define F1(x, y, z) (x ^ y ^ z) /* XOR */
#define F2(x, y, z) (z ^ (x & (y ^ z))) /* x ? y : z */
OpenPOWER on IntegriCloud