]> Cypherpunks repositories - gostls13.git/commitdiff
crypto/ecdsa, crypto/rsa: use io.ReadFull to read from random source.
authorDmitry Chestnykh <dchest@gmail.com>
Tue, 5 Apr 2011 21:11:31 +0000 (17:11 -0400)
committerAdam Langley <agl@golang.org>
Tue, 5 Apr 2011 21:11:31 +0000 (17:11 -0400)
R=golang-dev, agl1
CC=golang-dev
https://golang.org/cl/4316057

src/pkg/crypto/ecdsa/ecdsa.go
src/pkg/crypto/rsa/pkcs1v15.go

index 1f37849c5d5ee1b467e8e297f6a0a3d03202ea3d..7bce1bc967538102504bba204ec6d9a5b0017ddf 100644 (file)
@@ -37,7 +37,7 @@ var one = new(big.Int).SetInt64(1)
 // curve using the procedure given in [NSA] A.2.1.
 func randFieldElement(c *elliptic.Curve, rand io.Reader) (k *big.Int, err os.Error) {
        b := make([]byte, c.BitSize/8+8)
-       _, err = rand.Read(b)
+       _, err = io.ReadFull(rand, b)
        if err != nil {
                return
        }
index 2eaadee24c2e964d042e1d94109d5a4fc1ff3762..9a7184127db0689533a87351623524ee50b75eef 100644 (file)
@@ -127,7 +127,7 @@ func nonZeroRandomBytes(s []byte, rand io.Reader) (err os.Error) {
 
        for i := 0; i < len(s); i++ {
                for s[i] == 0 {
-                       _, err = rand.Read(s[i : i+1])
+                       _, err = io.ReadFull(rand, s[i:i+1])
                        if err != nil {
                                return
                        }