Struct p384::NistP384 [−][src]
pub struct NistP384;
Expand description
NIST P-384 elliptic curve.
This curve is also known as secp384r1 (SECG) and is specified in FIPS 186-4: Digital Signature Standard (DSS):
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
It’s included in the US National Security Agency’s “Suite B” and is widely used in protocols like TLS and the associated X.509 PKI.
Its equation is y² = x³ - 3x + b
over a ~384-bit prime field where b
is
the “verifiably random”† constant:
b = 2758019355995970587784901184038904809305690585636156852142
8707301988689241309860865136260764883745107765439761230575
† NOTE: the specific origins of this constant have never been fully disclosed (it is the SHA-1 digest of an inexplicable NSA-selected constant)
Trait Implementations
Object Identifier (OID) for this curve
Get the pkcs8::AlgorithmIdentifier
for this curve
ecdsa
and sha384
only.jwk
only.The crv
parameter which identifies a particular elliptic curve
as defined in RFC 7518 Section 6.2.1.1:
https://tools.ietf.org/html/rfc7518#section-6.2.1.1 Read more
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Should point compression be applied by default?
fn validate_public_key(
secret_key: &SecretKey<Self>,
public_key: &EncodedPoint<Self>
) -> Result<(), Error>
[src]
fn validate_public_key(
secret_key: &SecretKey<Self>,
public_key: &EncodedPoint<Self>
) -> Result<(), Error>
[src]Validate that the given EncodedPoint
is a valid public key for the
provided secret value. Read more
Auto Trait Implementations
impl RefUnwindSafe for NistP384
impl UnwindSafe for NistP384
Blanket Implementations
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self