Help us shape the future of Go! Take the 2026 Go Developer Survey

fp448

package
v1.6.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2026 License: BSD-3-Clause Imports: 5 Imported by: 5

Documentation

Overview

Package fp448 provides prime field arithmetic over GF(2^448-2^224-1).

Index

Constants

View Source
const Size = 56

Size in bytes of an element.

Variables

This section is empty.

Functions

func Add

func Add(z, x, y *Elt)

Add calculates z = x+y mod p.

func AddSub

func AddSub(x, y *Elt)

AddSub calculates (x,y) = (x+y mod p, x-y mod p).

func Cmov

func Cmov(x, y *Elt, n uint)

Cmov assigns y to x if n is 1.

func Cswap

func Cswap(x, y *Elt, n uint)

Cswap interchanges x and y if n is 1.

func Inv

func Inv(z, x *Elt)

Inv calculates z = 1/x mod p.

func InvSqrt added in v1.1.0

func InvSqrt(z, x, y *Elt) (isQR bool)

InvSqrt calculates z = sqrt(x/y) iff x/y is a quadratic-residue. If so, isQR = true; otherwise, isQR = false, since x/y is a quadratic non-residue, and z = sqrt(-x/y).

func IsOne added in v1.1.0

func IsOne(x *Elt) bool

IsOne returns true if x is equal to 1.

func IsZero

func IsZero(x *Elt) bool

IsZero returns true if x is equal to 0.

func Modp

func Modp(z *Elt)

Modp ensures that z is between [0,p-1].

func Mul

func Mul(z, x, y *Elt)

Mul calculates z = x*y mod p.

func Neg

func Neg(z, x *Elt)

Neg calculates z = -x.

func SetOne

func SetOne(x *Elt)

SetOne assigns x=1.

func Sqr

func Sqr(z, x *Elt)

Sqr calculates z = x^2 mod p.

func Sub

func Sub(z, x, y *Elt)

Sub calculates z = x-y mod p.

func ToBytes

func ToBytes(b []byte, x *Elt) error

ToBytes stores in b the little-endian byte representation of x.

Types

type Elt

type Elt [Size]byte

Elt is a prime field element.

func One added in v1.1.0

func One() (x Elt)

One returns the 1 element.

func P

func P() Elt

P returns the prime modulus 2^448-2^224-1.

func (Elt) String

func (e Elt) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL