internal/gost34112012/hash.go | 19 +++++++++---------- diff --git a/internal/gost34112012/hash.go b/internal/gost34112012/hash.go index 79ac513027f5c86ad0baf1b8af3005a1779b042a4dd48c59adc38467cca3965b..b17397f38408986b2f5bcd61289dc3fa11614974e44bfb07d36d7984a03c6697 100644 --- a/internal/gost34112012/hash.go +++ b/internal/gost34112012/hash.go @@ -431,16 +431,15 @@ } func l(out, data []byte) []byte { for i := 0; i < 8; i++ { - res64 := uint64(0) - res64 ^= cache[0][data[8*i+0]] - res64 ^= cache[1][data[8*i+1]] - res64 ^= cache[2][data[8*i+2]] - res64 ^= cache[3][data[8*i+3]] - res64 ^= cache[4][data[8*i+4]] - res64 ^= cache[5][data[8*i+5]] - res64 ^= cache[6][data[8*i+6]] - res64 ^= cache[7][data[8*i+7]] - binary.LittleEndian.PutUint64(out[i*8:i*8+8], res64) + binary.LittleEndian.PutUint64(out[i*8:i*8+8], + cache[0][data[8*i+0]]^ + cache[1][data[8*i+1]]^ + cache[2][data[8*i+2]]^ + cache[3][data[8*i+3]]^ + cache[4][data[8*i+4]]^ + cache[5][data[8*i+5]]^ + cache[6][data[8*i+6]]^ + cache[7][data[8*i+7]]) } return out }