type crypto/elliptic/internal/fiat.P384Element
72 uses
crypto/elliptic/internal/fiat (current package)
p384.go#L17: type P384Element struct {
p384.go#L28: func (e *P384Element) One() *P384Element {
p384.go#L34: func (e *P384Element) Equal(t *P384Element) int {
p384.go#L40: var p384ZeroEncoding = new(P384Element).Bytes()
p384.go#L43: func (e *P384Element) IsZero() int {
p384.go#L49: func (e *P384Element) Set(t *P384Element) *P384Element {
p384.go#L55: func (e *P384Element) Bytes() []byte {
p384.go#L62: func (e *P384Element) bytes(out *[p384ElementLen]byte) []byte {
p384.go#L73: var p384MinusOneEncoding = new(P384Element).Sub(
p384.go#L74: new(P384Element), new(P384Element).One()).Bytes()
p384.go#L79: func (e *P384Element) SetBytes(v []byte) (*P384Element, error) {
p384.go#L101: func (e *P384Element) Add(t1, t2 *P384Element) *P384Element {
p384.go#L107: func (e *P384Element) Sub(t1, t2 *P384Element) *P384Element {
p384.go#L113: func (e *P384Element) Mul(t1, t2 *P384Element) *P384Element {
p384.go#L119: func (e *P384Element) Square(t *P384Element) *P384Element {
p384.go#L125: func (v *P384Element) Select(a, b *P384Element, cond int) *P384Element {
p384_invert.go#L12: func (e *P384Element) Invert(x *P384Element) *P384Element {
p384_invert.go#L36: var z = new(P384Element).Set(e)
p384_invert.go#L37: var t0 = new(P384Element)
p384_invert.go#L38: var t1 = new(P384Element)
p384_invert.go#L39: var t2 = new(P384Element)
p384_invert.go#L40: var t3 = new(P384Element)
crypto/elliptic/internal/nistec
p384.go#L13: var p384B, _ = new(fiat.P384Element).SetBytes([]byte{
p384.go#L35: x, y, z *fiat.P384Element
p384.go#L41: x: new(fiat.P384Element),
p384.go#L42: y: new(fiat.P384Element).One(),
p384.go#L43: z: new(fiat.P384Element),
p384.go#L50: x: new(fiat.P384Element),
p384.go#L51: y: new(fiat.P384Element),
p384.go#L52: z: new(fiat.P384Element),
p384.go#L76: x, err := new(fiat.P384Element).SetBytes(b[1 : 1+p384ElementLength])
p384.go#L80: y, err := new(fiat.P384Element).SetBytes(b[1+p384ElementLength:])
p384.go#L101: func p384CheckOnCurve(x, y *fiat.P384Element) error {
p384.go#L103: x3 := new(fiat.P384Element).Square(x)
p384.go#L106: threeX := new(fiat.P384Element).Add(x, x)
p384.go#L113: y2 := new(fiat.P384Element).Square(y)
p384.go#L136: zinv := new(fiat.P384Element).Invert(p.z)
p384.go#L137: xx := new(fiat.P384Element).Mul(p.x, zinv)
p384.go#L138: yy := new(fiat.P384Element).Mul(p.y, zinv)
p384.go#L151: t0 := new(fiat.P384Element).Mul(p1.x, p2.x) // t0 := X1 * X2
p384.go#L152: t1 := new(fiat.P384Element).Mul(p1.y, p2.y) // t1 := Y1 * Y2
p384.go#L153: t2 := new(fiat.P384Element).Mul(p1.z, p2.z) // t2 := Z1 * Z2
p384.go#L154: t3 := new(fiat.P384Element).Add(p1.x, p1.y) // t3 := X1 + Y1
p384.go#L155: t4 := new(fiat.P384Element).Add(p2.x, p2.y) // t4 := X2 + Y2
p384.go#L160: x3 := new(fiat.P384Element).Add(p2.y, p2.z) // X3 := Y2 + Z2
p384.go#L165: y3 := new(fiat.P384Element).Add(p2.x, p2.z) // Y3 := X2 + Z2
p384.go#L169: z3 := new(fiat.P384Element).Mul(p384B, t2) // Z3 := b * t2
p384.go#L206: t0 := new(fiat.P384Element).Square(p.x) // t0 := X ^ 2
p384.go#L207: t1 := new(fiat.P384Element).Square(p.y) // t1 := Y ^ 2
p384.go#L208: t2 := new(fiat.P384Element).Square(p.z) // t2 := Z ^ 2
p384.go#L209: t3 := new(fiat.P384Element).Mul(p.x, p.y) // t3 := X * Y
p384.go#L211: z3 := new(fiat.P384Element).Mul(p.x, p.z) // Z3 := X * Z
p384.go#L213: y3 := new(fiat.P384Element).Mul(p384B, t2) // Y3 := b * t2
p384.go#L215: x3 := new(fiat.P384Element).Add(y3, y3) // X3 := Y3 + Y3