X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=mgm%2Fmul128.go;h=a72ad26e177e83e90d9eba5548c70a3bd1208a86;hb=285c03431192ff6ffbfa7470652fd545f06e0b00;hp=e612ca3d16e9b1302d8c85c3b01309d9858874b1;hpb=5fc90f4d05f0515cc91dd9feceb813e2b753cbb7;p=gogost.git diff --git a/mgm/mul128.go b/mgm/mul128.go index e612ca3..a72ad26 100644 --- a/mgm/mul128.go +++ b/mgm/mul128.go @@ -1,5 +1,5 @@ // GoGOST -- Pure Go GOST cryptographic functions library -// Copyright (C) 2015-2022 Sergey Matveev +// Copyright (C) 2015-2023 Sergey Matveev // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -45,7 +45,8 @@ func (mul *mul128) Mul(x, y []byte) []byte { x0 := binary.BigEndian.Uint64(x[8:]) y1 := binary.BigEndian.Uint64(y[:8]) y0 := binary.BigEndian.Uint64(y[8:]) - t, x0, x1, z0, z1 := gf128half(64, y0, x0, x1, 0, 0) + var t uint64 + _, x0, x1, z0, z1 := gf128half(64, y0, x0, x1, 0, 0) t, x0, x1, z0, z1 = gf128half(63, y1, x0, x1, z0, z1) if t&1 > 0 { z0, z1 = z0^x0, z1^x1