Module field

Module field 

Source
Expand description

Field arithmetic modulo p = 2^{384} − 2^{128} − 2^{96} + 2^{32} − 1

Arithmetic implementations are extracted Rust code from the Coq fiat-crypto libraries.

§License

Copyright (c) 2015-2020 the fiat-crypto authors

fiat-crypto is distributed under the terms of the MIT License, the Apache License (Version 2.0), and the BSD 1-Clause License; users may pick which license to apply.

Modules§

field_impl 🔒
fiat-crypto output postprocessed by fiat-constify: https://github.com/rustcrypto/utils Autogenerated: ‘src/ExtractionOCaml/word_by_word_montgomery’ –lang Rust –inline p384 64 ‘2^384 - 2^128 - 2^96 + 2^32 - 1’ mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp curve description: p384 machine_wordsize = 64 (from “64”) requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp m = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff (from “2^384 - 2^128 - 2^96 + 2^32 - 1”)

Structs§

FieldElement
Element of the secp384r1 base field used for curve coordinates.

Constants§

MODULUS 🔒
Constant representing the modulus p = 2^{384} − 2^{128} − 2^{96} + 2^{32} − 1