From 31534a1b651d821129e8861645d7d8f531069d31bb4b516f8d0e66c4f9cf666a Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Fri, 14 Feb 2025 10:40:46 +0300 Subject: [PATCH] Modern rand.Read never fails --- go/cm/cmd/enctool/main.go | 9 ++------- go/cm/sign/gost/kp.go | 6 +----- go/junk_test.go | 8 ++------ 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/go/cm/cmd/enctool/main.go b/go/cm/cmd/enctool/main.go index c9c12fd..42d79a3 100644 --- a/go/cm/cmd/enctool/main.go +++ b/go/cm/cmd/enctool/main.go @@ -409,10 +409,7 @@ func main() { } var kems []cmenc.KEM cek = make([]byte, chacha20poly1305.KeySize+chacha20poly1305.NonceSize) - _, err = io.ReadFull(rand.Reader, cek) - if err != nil { - log.Fatal(err) - } + rand.Read(cek) if *passphrase { passwd := readPasswd("Passphrase:") { @@ -422,9 +419,7 @@ func main() { } } bSalt := make([]byte, cmenc.BalloonSaltLen) - if _, err = io.ReadFull(rand.Reader, bSalt); err != nil { - log.Fatal(err) - } + rand.Read(bSalt) kem := cmenc.KEM{ A: cmenc.BalloonBLAKE2bHKDF, Salt: &bSalt, diff --git a/go/cm/sign/gost/kp.go b/go/cm/sign/gost/kp.go index 2f9334b..39abcbc 100644 --- a/go/cm/sign/gost/kp.go +++ b/go/cm/sign/gost/kp.go @@ -18,7 +18,6 @@ package gost import ( "crypto/rand" "errors" - "io" "go.cypherpunks.su/gogost/v6/gost3410" ) @@ -30,10 +29,7 @@ func NewKeypair(algo string) (signer *Signer, prv, pub []byte, err error) { return } prv = make([]byte, curve.PointSize()) - _, err = io.ReadFull(rand.Reader, prv) - if err != nil { - return - } + rand.Read(prv) var pk *gost3410.PrivateKey pk, err = gost3410.NewPrivateKeyBE(curve, prv) if err != nil { diff --git a/go/junk_test.go b/go/junk_test.go index 7072a99..77d27f9 100644 --- a/go/junk_test.go +++ b/go/junk_test.go @@ -28,14 +28,10 @@ var ( func init() { var seed [32]byte - _, err := io.ReadFull(crand.Reader, seed[:]) - if err != nil { - panic(err) - } + crand.Read(seed[:]) PRNG = rand.NewChaCha8(seed) Junk = make([]byte, 1+rand.UintN(7)) - _, err = io.ReadFull(PRNG, Junk) - if err != nil { + if _, err := io.ReadFull(PRNG, Junk); err != nil { panic(err) } } -- 2.50.0