crypto/rsa.PrivateKey.Precomputed (field)
21 uses
crypto/rsa (current package)
rsa.go#L107: Precomputed PrecomputedValues
rsa.go#L459: if priv.Precomputed.Dp != nil {
rsa.go#L463: priv.Precomputed.Dp = new(big.Int).Sub(priv.Primes[0], bigOne)
rsa.go#L464: priv.Precomputed.Dp.Mod(priv.D, priv.Precomputed.Dp)
rsa.go#L466: priv.Precomputed.Dq = new(big.Int).Sub(priv.Primes[1], bigOne)
rsa.go#L467: priv.Precomputed.Dq.Mod(priv.D, priv.Precomputed.Dq)
rsa.go#L469: priv.Precomputed.Qinv = new(big.Int).ModInverse(priv.Primes[1], priv.Primes[0])
rsa.go#L472: priv.Precomputed.CRTValues = make([]CRTValue, len(priv.Primes)-2)
rsa.go#L475: values := &priv.Precomputed.CRTValues[i-2]
rsa.go#L531: if priv.Precomputed.Dp == nil {
rsa.go#L535: m = new(big.Int).Exp(c, priv.Precomputed.Dp, priv.Primes[0])
rsa.go#L536: m2 := new(big.Int).Exp(c, priv.Precomputed.Dq, priv.Primes[1])
rsa.go#L541: m.Mul(m, priv.Precomputed.Qinv)
rsa.go#L546: for i, values := range priv.Precomputed.CRTValues {
crypto/x509
pkcs1.go#L119: Dp: key.Precomputed.Dp,
pkcs1.go#L120: Dq: key.Precomputed.Dq,
pkcs1.go#L121: Qinv: key.Precomputed.Qinv,
pkcs1.go#L124: priv.AdditionalPrimes = make([]pkcs1AdditionalRSAPrime, len(key.Precomputed.CRTValues))
pkcs1.go#L125: for i, values := range key.Precomputed.CRTValues {