X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=gost3410%2Fvko2012.go;h=08461add919502fc1dce4c9d4975fa656372f575;hb=a575c072e60b46d792d31e665683e9fdd91f0bad;hp=01f3e85770df3c7c14769845baea846b850cba82;hpb=c40d1e5634cf6d540d908a57423f4b504e39f186;p=gogost.git diff --git a/gost3410/vko2012.go b/gost3410/vko2012.go index 01f3e85..08461ad 100644 --- a/gost3410/vko2012.go +++ b/gost3410/vko2012.go @@ -1,5 +1,5 @@ // GoGOST -- Pure Go GOST cryptographic functions library -// Copyright (C) 2015-2020 Sergey Matveev +// Copyright (C) 2015-2021 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 @@ -18,8 +18,8 @@ package gost3410 import ( "math/big" - "go.cypherpunks.ru/gogost/v4/gost34112012256" - "go.cypherpunks.ru/gogost/v4/gost34112012512" + "go.cypherpunks.ru/gogost/v5/gost34112012256" + "go.cypherpunks.ru/gogost/v5/gost34112012512" ) // RFC 7836 VKO GOST R 34.10-2012 256-bit key agreement function. @@ -30,7 +30,9 @@ func (prv *PrivateKey) KEK2012256(pub *PublicKey, ukm *big.Int) ([]byte, error) return nil, err } h := gost34112012256.New() - h.Write(key) + if _, err = h.Write(key); err != nil { + return nil, err + } return h.Sum(key[:0]), nil } @@ -42,6 +44,8 @@ func (prv *PrivateKey) KEK2012512(pub *PublicKey, ukm *big.Int) ([]byte, error) return nil, err } h := gost34112012512.New() - h.Write(key) + if _, err = h.Write(key); err != nil { + return nil, err + } return h.Sum(key[:0]), nil }