Module secp256kfun::marker[][src]

Expand description

Markers for improved compile time safety, performance and functionality.

Structs

A Normal point which has pre-computed tables for accelerating scalar multiplications. The only example of this is G.

A Normal point whose y coordinate is known to be even.

A Non-normalized Point. Jacobian points are represented internally as three field elements: x,y and z. Most point operations return Jacobian points.

Something marked with NonZero is guaranteed not to be 0.

A Fully Normalized Point. Internally Normal points are represented using affine coordinates with fully normalized x and y field elements.

Indicates that variable time operations may be used on the value.

Indicates that the value is secret and therefore makes core operations executed on it to use constant time versions of the operations.

Something marked with Zero might be 0 i.e. the additive identity

Traits

A trait that is implemented on marker types to indicate that they can mark the type T.

A trait to figure out whether the result of a multiplication should be Zero or NonZero at compile time.

A extension trait to add the mark method to all types so they can be marked with anything that implements ChangeMark against it.

A marker trait that indicates a PointType uses a affine internal representation.

Every T of a Point<T,S,Z> implements the PointType trait.

A marker trait implemented by Secret and Public.

A marker trait implemented by Zero and NonZero.