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)