diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-11-04 07:38:00 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-11-04 07:38:10 +0100 |
commit | fc38bb90abd9785e686e5e986ffe916753961f1c (patch) | |
tree | a8d03d8494a775d66ee9711b1a1253865bbf0877 /java/ConcurrentSHA3.java | |
parent | derp (diff) | |
download | sha3sum-fc38bb90abd9785e686e5e986ffe916753961f1c.tar.gz sha3sum-fc38bb90abd9785e686e5e986ffe916753961f1c.tar.bz2 sha3sum-fc38bb90abd9785e686e5e986ffe916753961f1c.tar.xz |
whoops, error in non-python version when hashing with a wordsize below 64 bits
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to 'java/ConcurrentSHA3.java')
-rw-r--r-- | java/ConcurrentSHA3.java | 100 |
1 files changed, 50 insertions, 50 deletions
diff --git a/java/ConcurrentSHA3.java b/java/ConcurrentSHA3.java index 622feb5..90569f8 100644 --- a/java/ConcurrentSHA3.java +++ b/java/ConcurrentSHA3.java @@ -471,31 +471,31 @@ public class ConcurrentSHA3 else for (int i = 0; i < len; i += rr) { - this.S[ 0] ^= this.toLane(n, ww, i + 0 ); - this.S[ 5] ^= this.toLane(n, ww, i + w); - this.S[10] ^= this.toLane(n, ww, i + 2 * w); - this.S[15] ^= this.toLane(n, ww, i + 3 * w); - this.S[20] ^= this.toLane(n, ww, i + 4 * w); - this.S[ 1] ^= this.toLane(n, ww, i + 5 * w); - this.S[ 6] ^= this.toLane(n, ww, i + 6 * w); - this.S[11] ^= this.toLane(n, ww, i + 7 * w); - this.S[16] ^= this.toLane(n, ww, i + 8 * w); - this.S[21] ^= this.toLane(n, ww, i + 9 * w); - this.S[ 2] ^= this.toLane(n, ww, i + 10 * w); - this.S[ 7] ^= this.toLane(n, ww, i + 11 * w); - this.S[12] ^= this.toLane(n, ww, i + 12 * w); - this.S[17] ^= this.toLane(n, ww, i + 13 * w); - this.S[22] ^= this.toLane(n, ww, i + 14 * w); - this.S[ 3] ^= this.toLane(n, ww, i + 15 * w); - this.S[ 8] ^= this.toLane(n, ww, i + 16 * w); - this.S[13] ^= this.toLane(n, ww, i + 17 * w); - this.S[18] ^= this.toLane(n, ww, i + 18 * w); - this.S[23] ^= this.toLane(n, ww, i + 19 * w); - this.S[ 4] ^= this.toLane(n, ww, i + 20 * w); - this.S[ 9] ^= this.toLane(n, ww, i + 21 * w); - this.S[14] ^= this.toLane(n, ww, i + 22 * w); - this.S[19] ^= this.toLane(n, ww, i + 23 * w); - this.S[24] ^= this.toLane(n, ww, i + 24 * w); + this.S[ 0] ^= this.toLane(n, ww, i + 0 ); + this.S[ 5] ^= this.toLane(n, ww, i + ww); + this.S[10] ^= this.toLane(n, ww, i + 2 * ww); + this.S[15] ^= this.toLane(n, ww, i + 3 * ww); + this.S[20] ^= this.toLane(n, ww, i + 4 * ww); + this.S[ 1] ^= this.toLane(n, ww, i + 5 * ww); + this.S[ 6] ^= this.toLane(n, ww, i + 6 * ww); + this.S[11] ^= this.toLane(n, ww, i + 7 * ww); + this.S[16] ^= this.toLane(n, ww, i + 8 * ww); + this.S[21] ^= this.toLane(n, ww, i + 9 * ww); + this.S[ 2] ^= this.toLane(n, ww, i + 10 * ww); + this.S[ 7] ^= this.toLane(n, ww, i + 11 * ww); + this.S[12] ^= this.toLane(n, ww, i + 12 * ww); + this.S[17] ^= this.toLane(n, ww, i + 13 * ww); + this.S[22] ^= this.toLane(n, ww, i + 14 * ww); + this.S[ 3] ^= this.toLane(n, ww, i + 15 * ww); + this.S[ 8] ^= this.toLane(n, ww, i + 16 * ww); + this.S[13] ^= this.toLane(n, ww, i + 17 * ww); + this.S[18] ^= this.toLane(n, ww, i + 18 * ww); + this.S[23] ^= this.toLane(n, ww, i + 19 * ww); + this.S[ 4] ^= this.toLane(n, ww, i + 20 * ww); + this.S[ 9] ^= this.toLane(n, ww, i + 21 * ww); + this.S[14] ^= this.toLane(n, ww, i + 22 * ww); + this.S[19] ^= this.toLane(n, ww, i + 23 * ww); + this.S[24] ^= this.toLane(n, ww, i + 24 * ww); this.keccakF(this.S); n += rr; } @@ -795,31 +795,31 @@ public class ConcurrentSHA3 else for (int i = 0; i < len; i += rr) { - this.S[ 0] ^= this.toLane(n, ww, i + 0 ); - this.S[ 5] ^= this.toLane(n, ww, i + w); - this.S[10] ^= this.toLane(n, ww, i + 2 * w); - this.S[15] ^= this.toLane(n, ww, i + 3 * w); - this.S[20] ^= this.toLane(n, ww, i + 4 * w); - this.S[ 1] ^= this.toLane(n, ww, i + 5 * w); - this.S[ 6] ^= this.toLane(n, ww, i + 6 * w); - this.S[11] ^= this.toLane(n, ww, i + 7 * w); - this.S[16] ^= this.toLane(n, ww, i + 8 * w); - this.S[21] ^= this.toLane(n, ww, i + 9 * w); - this.S[ 2] ^= this.toLane(n, ww, i + 10 * w); - this.S[ 7] ^= this.toLane(n, ww, i + 11 * w); - this.S[12] ^= this.toLane(n, ww, i + 12 * w); - this.S[17] ^= this.toLane(n, ww, i + 13 * w); - this.S[22] ^= this.toLane(n, ww, i + 14 * w); - this.S[ 3] ^= this.toLane(n, ww, i + 15 * w); - this.S[ 8] ^= this.toLane(n, ww, i + 16 * w); - this.S[13] ^= this.toLane(n, ww, i + 17 * w); - this.S[18] ^= this.toLane(n, ww, i + 18 * w); - this.S[23] ^= this.toLane(n, ww, i + 19 * w); - this.S[ 4] ^= this.toLane(n, ww, i + 20 * w); - this.S[ 9] ^= this.toLane(n, ww, i + 21 * w); - this.S[14] ^= this.toLane(n, ww, i + 22 * w); - this.S[19] ^= this.toLane(n, ww, i + 23 * w); - this.S[24] ^= this.toLane(n, ww, i + 24 * w); + this.S[ 0] ^= this.toLane(n, ww, i + 0 ); + this.S[ 5] ^= this.toLane(n, ww, i + ww); + this.S[10] ^= this.toLane(n, ww, i + 2 * ww); + this.S[15] ^= this.toLane(n, ww, i + 3 * ww); + this.S[20] ^= this.toLane(n, ww, i + 4 * ww); + this.S[ 1] ^= this.toLane(n, ww, i + 5 * ww); + this.S[ 6] ^= this.toLane(n, ww, i + 6 * ww); + this.S[11] ^= this.toLane(n, ww, i + 7 * ww); + this.S[16] ^= this.toLane(n, ww, i + 8 * ww); + this.S[21] ^= this.toLane(n, ww, i + 9 * ww); + this.S[ 2] ^= this.toLane(n, ww, i + 10 * ww); + this.S[ 7] ^= this.toLane(n, ww, i + 11 * ww); + this.S[12] ^= this.toLane(n, ww, i + 12 * ww); + this.S[17] ^= this.toLane(n, ww, i + 13 * ww); + this.S[22] ^= this.toLane(n, ww, i + 14 * ww); + this.S[ 3] ^= this.toLane(n, ww, i + 15 * ww); + this.S[ 8] ^= this.toLane(n, ww, i + 16 * ww); + this.S[13] ^= this.toLane(n, ww, i + 17 * ww); + this.S[18] ^= this.toLane(n, ww, i + 18 * ww); + this.S[23] ^= this.toLane(n, ww, i + 19 * ww); + this.S[ 4] ^= this.toLane(n, ww, i + 20 * ww); + this.S[ 9] ^= this.toLane(n, ww, i + 21 * ww); + this.S[14] ^= this.toLane(n, ww, i + 22 * ww); + this.S[19] ^= this.toLane(n, ww, i + 23 * ww); + this.S[24] ^= this.toLane(n, ww, i + 24 * ww); this.keccakF(this.S); n += rr; } |