aboutsummaryrefslogtreecommitdiff
path: root/src/crypto/rsa/boring.go
diff options
context:
space:
mode:
authorFilippo Valsorda <filippo@golang.org>2018-05-15 11:24:57 -0400
committerFilippo Valsorda <filippo@golang.org>2018-05-18 15:13:45 +0000
commit019a994e32ce0b1766311753add7d5ee1e434772 (patch)
treea168504af9ff14355529805b0a3ad12e0951d6dc /src/crypto/rsa/boring.go
parenta3f9ce3313af58d6f6d904875893b60d929ebd9c (diff)
downloadgo-019a994e32ce0b1766311753add7d5ee1e434772.tar.gz
go-019a994e32ce0b1766311753add7d5ee1e434772.zip
[dev.boringcrypto] crypto/rsa: fix boringFakeRandomBlind to work with (*big.Int).ModInverse
http://golang.org/cl/108996 removed the local modInverse and its call in decrypt in favor of (*big.Int).ModInverse. boringFakeRandomBlind copies decrypt, so it needs to be updated as well. Change-Id: I59a6c17c2fb9cc7f38cbb59dd9ed11846737d220 Reviewed-on: https://go-review.googlesource.com/113676 Run-TryBot: Filippo Valsorda <filippo@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src/crypto/rsa/boring.go')
-rw-r--r--src/crypto/rsa/boring.go5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/crypto/rsa/boring.go b/src/crypto/rsa/boring.go
index f25f4a5274..0ddff014e6 100644
--- a/src/crypto/rsa/boring.go
+++ b/src/crypto/rsa/boring.go
@@ -147,6 +147,7 @@ func boringFakeRandomBlind(random io.Reader, priv *PrivateKey) {
boring.UnreachableExceptTests()
// Copied from func decrypt.
+ ir := new(big.Int)
for {
r, err := rand.Int(random, priv.N)
if err != nil {
@@ -155,8 +156,8 @@ func boringFakeRandomBlind(random io.Reader, priv *PrivateKey) {
if r.Cmp(bigZero) == 0 {
r = bigOne
}
- _, ok := modInverse(r, priv.N)
- if ok {
+ ok := ir.ModInverse(r, priv.N)
+ if ok != nil {
break
}
}