Trait elliptic_curve::sec1::ModulusSize

source ·
pub trait ModulusSize:
    'static
    + ArraySize
    + Copy
    + Debug {
    type CompressedPointSize: 'static + ArraySize + Copy + Debug + Add<Self, Output = Self::UncompressedPointSize>;
    type UncompressedPointSize: 'static + ArraySize + Copy + Debug;
    type UntaggedPointSize: 'static + ArraySize + Copy + Debug + Add<UInt<UTerm, B1>, Output = Self::UncompressedPointSize> + Sub<Self, Output = Self>;
}
Available on crate feature sec1 only.
Expand description

Trait for supported modulus sizes which precomputes the typenums for various point encodings so they don’t need to be included as bounds.

Required Associated Types§

source

type CompressedPointSize: 'static + ArraySize + Copy + Debug + Add<Self, Output = Self::UncompressedPointSize>

Size of a compressed point for the given elliptic curve when encoded using the SEC1 Elliptic-Curve-Point-to-Octet-String algorithm (including leading 0x02 or 0x03 tag byte).

source

type UncompressedPointSize: 'static + ArraySize + Copy + Debug

Size of an uncompressed point for the given elliptic curve when encoded using the SEC1 Elliptic-Curve-Point-to-Octet-String algorithm (including leading 0x04 tag byte).

source

type UntaggedPointSize: 'static + ArraySize + Copy + Debug + Add<UInt<UTerm, B1>, Output = Self::UncompressedPointSize> + Sub<Self, Output = Self>

Size of an untagged point for given elliptic curve, i.e. size of two serialized base field elements when concatenated.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl ModulusSize for UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B1>, B0>

source§

impl ModulusSize for UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>

source§

impl ModulusSize for UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B0>

source§

impl ModulusSize for UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>

source§

impl ModulusSize for UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>

Implementors§