Skip to main content

Crate fp

Crate fp 

Source
Expand description

Finite field arithmetic for the ecrust library.

§Module layout

fp
├── field_ops          - FieldOps trait (the algebraic contract)
├── fp_element         - Base prime field Fp element
└── fp_ext             - Extension prime field Elements

Modules§

f2_element
Binary base field $\mathbb{F}_2$ and its arithmetic. Base binary field element $\mathbb{F}_2 = \mathbb{Z} / 2\mathbb{Z}$
f2_ext
Binary extension fields $\mathbb{F}{2^m}$ built from irreducible polynomials. Generic finary fields $F{2^m} = F_2[x] / (f(x))$
field_ops
Core field traits shared by prime and binary fields. Core trait that every field element in the tower must implement.
fp_element
Prime-field elements over crypto-bigint Montgomery arithmetic. Base prime-field element $\mathbb{F}_p = \mathbb{Z} / p\mathbb{Z}$ backed by crypto-bigint.
fp_ext
Prime-field extension towers and related helper traits. Generic extension field $\mathbb{F}_{p^M} = \mathbb{F}_p[x] / (f(x))$.