package mec
Install
Dune Dependency
Authors
Maintainers
Sources
md5=7c68b531c8011b5d032f0a0d8523e8c5
sha512=f428751c5f2b7c7fc07548551bea0277c9c8c32c1052aecf22787188e7678939dbb091844e29178b2819d724cf843c65774d9211c0a0ede5bf71caff3f2dd1bc
doc/mec_curve_utils/Mec_curve_utils/Ec/MakeAffineMontgomery/index.html
Module Ec.MakeAffineMontgomery
Source
Parameters
module Params : sig ... end
Signature
by^2 = x3 + ax^2 + x with b * (a^2 - 4) != 0
include Mec_curve_sig.Ec_sig.MontgomeryT
with type Scalar.t = Fp.t
with type Base.t = Fq.t
include Mec_curve_sig.Ec_sig.BASE
with type Scalar.t = Fp.t
with type Base.t = Fq.t
Represents an element on the curve. In the case of a curve with a cofactor, the element is not necessarily in the prime subgroup.
The size of a point representation, in bytes
Check if a point, represented as a byte array, is on the curve *
Attempt to construct a point from a byte array. Raise Not_on_curve
if the point is not on the curve
Generate a random element
is_on_curve ~x ~y
returns true
if the coordinates (x, y)
represents a point on the curve. It does not check the point is in the prime subgroup.
is_in_prime_subgroup ~x ~y
returns true
if the coordinates (x, y)
represents a point in the prime subgroup. The coordinates must be a point on the curve
val to_weierstrass_curve_parameters :
unit ->
(Base.t * Base.t * Z.t * (Base.t * Base.t)) option
Build a point from the affine coordinates. If the point is not on the curve and in the subgroup, returns None
Build a point from the affine coordinates. If the point is not on the curve and in the subgroup, raise Not_on_curve
.
Build a point from a compressed representation. It supposes the base field leaves at least a free bit in the last byte to encode the sign. Raise Not_on_curve
if the bytes do not represent a point on the curve and in the prime subgroup.
Same than of_compressed_bytes_exn
but returns an option instead of raising an exception