type crypto/ed25519/internal/edwards25519/field.Element
99 uses
crypto/ed25519/internal/edwards25519/field (current package)
fe.go#L22: type Element struct {
fe.go#L36: var feZero = &Element{0, 0, 0, 0, 0}
fe.go#L39: func (v *Element) Zero() *Element {
fe.go#L44: var feOne = &Element{1, 0, 0, 0, 0}
fe.go#L47: func (v *Element) One() *Element {
fe.go#L53: func (v *Element) reduce() *Element {
fe.go#L86: func (v *Element) Add(a, b *Element) *Element {
fe.go#L100: func (v *Element) Subtract(a, b *Element) *Element {
fe.go#L112: func (v *Element) Negate(a *Element) *Element {
fe.go#L119: func (v *Element) Invert(z *Element) *Element {
fe.go#L122: var z2, z9, z11, z2_5_0, z2_10_0, z2_20_0, z2_50_0, z2_100_0, t Element
fe.go#L184: func (v *Element) Set(a *Element) *Element {
fe.go#L194: func (v *Element) SetBytes(x []byte) *Element {
fe.go#L220: func (v *Element) Bytes() []byte {
fe.go#L227: func (v *Element) bytes(out *[32]byte) []byte {
fe.go#L248: func (v *Element) Equal(u *Element) int {
fe.go#L257: func (v *Element) Select(a, b *Element, cond int) *Element {
fe.go#L268: func (v *Element) Swap(u *Element, cond int) {
fe.go#L288: func (v *Element) IsNegative() int {
fe.go#L293: func (v *Element) Absolute(u *Element) *Element {
fe.go#L294: return v.Select(new(Element).Negate(u), u, u.IsNegative())
fe.go#L298: func (v *Element) Multiply(x, y *Element) *Element {
fe.go#L304: func (v *Element) Square(x *Element) *Element {
fe.go#L310: func (v *Element) Mult32(x *Element, y uint32) *Element {
fe.go#L335: func (v *Element) Pow22523(x *Element) *Element {
fe.go#L336: var t0, t1, t2 Element
fe.go#L386: var sqrtM1 = &Element{1718705420411056, 234908883556509,
fe.go#L394: func (r *Element) SqrtRatio(u, v *Element) (rr *Element, wasSquare int) {
fe.go#L395: var a, b Element
fe_amd64.go#L9: func feMul(out *Element, a *Element, b *Element)
fe_amd64.go#L13: func feSquare(out *Element, a *Element)
fe_arm64_noasm.go#L9: func (v *Element) carryPropagate() *Element {
fe_generic.go#L34: func feMulGeneric(v, a, b *Element) {
fe_generic.go#L161: *v = Element{rr0, rr1, rr2, rr3, rr4}
fe_generic.go#L165: func feSquareGeneric(v, a *Element) {
fe_generic.go#L244: *v = Element{rr0, rr1, rr2, rr3, rr4}
fe_generic.go#L250: func (v *Element) carryPropagateGeneric() *Element {
crypto/ed25519/internal/edwards25519
edwards25519.go#L15: X, Y, Z, T field.Element
edwards25519.go#L19: X, Y, Z field.Element
edwards25519.go#L31: x, y, z, t field.Element
edwards25519.go#L42: if p.x == (field.Element{}) && p.y == (field.Element{}) {
edwards25519.go#L49: YplusX, YminusX, Z, T2d field.Element
edwards25519.go#L53: YplusX, YminusX, T2d field.Element
edwards25519.go#L125: var zInv, x, y field.Element
edwards25519.go#L135: var feOne = new(field.Element).One()
edwards25519.go#L157: y := new(field.Element).SetBytes(x)
edwards25519.go#L164: y2 := new(field.Element).Square(y)
edwards25519.go#L165: u := new(field.Element).Subtract(y2, feOne)
edwards25519.go#L168: vv := new(field.Element).Multiply(y2, d)
edwards25519.go#L172: xx, wasSquare := new(field.Element).SqrtRatio(u, vv)
edwards25519.go#L178: xxNeg := new(field.Element).Negate(xx)
edwards25519.go#L189: func copyFieldElement(buf *[32]byte, v *field.Element) []byte {
edwards25519.go#L227: var d = new(field.Element).SetBytes([]byte{
edwards25519.go#L232: var d2 = new(field.Element).Add(d, d)
edwards25519.go#L247: var invZ field.Element
edwards25519.go#L274: var YplusX, YminusX, PP, MM, TT2d, ZZ2 field.Element
edwards25519.go#L294: var YplusX, YminusX, PP, MM, TT2d, ZZ2 field.Element
edwards25519.go#L314: var YplusX, YminusX, PP, MM, TT2d, Z2 field.Element
edwards25519.go#L333: var YplusX, YminusX, PP, MM, TT2d, Z2 field.Element
edwards25519.go#L354: var XX, YY, ZZ2, XplusYsq field.Element
edwards25519.go#L387: var t1, t2, t3, t4 field.Element
edwards25519.go#L418: v.T2d.Select(new(field.Element).Negate(&v.T2d), &v.T2d, cond)
edwards25519.go#L425: v.T2d.Select(new(field.Element).Negate(&v.T2d), &v.T2d, cond)