vendor/golang.org/x/crypto/curve25519/internal/field.Element.Multiply (method)
36 uses
vendor/golang.org/x/crypto/curve25519/internal/field (current package)
fe.go#L127: z9.Multiply(&t, z) // 9
fe.go#L128: z11.Multiply(&z9, &z2) // 11
fe.go#L130: z2_5_0.Multiply(&t, &z9) // 31 = 2^5 - 2^0
fe.go#L136: z2_10_0.Multiply(&t, &z2_5_0) // 2^10 - 2^0
fe.go#L142: z2_20_0.Multiply(&t, &z2_10_0) // 2^20 - 2^0
fe.go#L148: t.Multiply(&t, &z2_20_0) // 2^40 - 2^0
fe.go#L154: z2_50_0.Multiply(&t, &z2_10_0) // 2^50 - 2^0
fe.go#L160: z2_100_0.Multiply(&t, &z2_50_0) // 2^100 - 2^0
fe.go#L166: t.Multiply(&t, &z2_100_0) // 2^200 - 2^0
fe.go#L172: t.Multiply(&t, &z2_50_0) // 2^250 - 2^0
fe.go#L180: return v.Multiply(&t, &z11) // 2^255 - 21
fe.go#L298: func (v *Element) Multiply(x, y *Element) *Element {
fe.go#L341: t1.Multiply(x, &t1) // x^9
fe.go#L342: t0.Multiply(&t0, &t1) // x^11
fe.go#L344: t0.Multiply(&t1, &t0) // x^31
fe.go#L349: t0.Multiply(&t1, &t0) // x^1023 -> 1023 = 2^10 - 1
fe.go#L354: t1.Multiply(&t1, &t0) // 2^20 - 1
fe.go#L359: t1.Multiply(&t2, &t1) // 2^40 - 1
fe.go#L364: t0.Multiply(&t1, &t0) // 2^50 - 1
fe.go#L369: t1.Multiply(&t1, &t0) // 2^100 - 1
fe.go#L374: t1.Multiply(&t2, &t1) // 2^200 - 1
fe.go#L379: t0.Multiply(&t1, &t0) // 2^250 - 1
fe.go#L382: return v.Multiply(&t0, x) // 2^252 - 3 -> x^(2^252-3)
fe.go#L399: uv3 := b.Multiply(u, b.Multiply(v2, v))
fe.go#L400: uv7 := a.Multiply(uv3, a.Square(v2))
fe.go#L401: r.Multiply(uv3, r.Pow22523(uv7))
fe.go#L403: check := a.Multiply(v, a.Square(r)) // check = v * r^2
fe.go#L408: flippedSignSqrtI := check.Equal(uNeg.Multiply(uNeg, sqrtM1))
fe.go#L410: rPrime := b.Multiply(r, sqrtM1) // r_prime = SQRT_M1 * r
vendor/golang.org/x/crypto/curve25519
curve25519.go#L49: z3.Multiply(&tmp0, &x2)
curve25519.go#L50: z2.Multiply(&z2, &tmp1)
curve25519.go#L55: x2.Multiply(&tmp1, &tmp0)
curve25519.go#L62: z3.Multiply(&x1, &z2)
curve25519.go#L63: z2.Multiply(&tmp1, &tmp0)
curve25519.go#L70: x2.Multiply(&x2, &z2)