Struct ring::signature::EcdsaKeyPair
source · [−]pub struct EcdsaKeyPair { /* private fields */ }Expand description
An ECDSA key pair, used for signing.
Implementations
sourceimpl KeyPair
impl KeyPair
sourcepub fn generate_pkcs8(
alg: &'static Algorithm,
rng: &dyn SecureRandom
) -> Result<Document, Unspecified>
pub fn generate_pkcs8(
alg: &'static Algorithm,
rng: &dyn SecureRandom
) -> Result<Document, Unspecified>
Generates a new key pair and returns the key pair serialized as a PKCS#8 document.
The PKCS#8 document will be a v1 OneAsymmetricKey with the public key
included in the ECPrivateKey structure, as described in
RFC 5958 Section 2 and RFC 5915. The ECPrivateKey structure will
not have a parameters field so the generated key is compatible with
PKCS#11.
sourcepub fn from_pkcs8(
alg: &'static Algorithm,
input: Input<'_>
) -> Result<Self, KeyRejected>
pub fn from_pkcs8(
alg: &'static Algorithm,
input: Input<'_>
) -> Result<Self, KeyRejected>
Constructs an ECDSA key pair by parsing an unencrypted PKCS#8 v1
id-ecPublicKey ECPrivateKey key.
The input must be in PKCS#8 v1 format. It must contain the public key in
the ECPrivateKey structure; from_pkcs8() will verify that the public
key and the private key are consistent with each other. The algorithm
identifier must identify the curve by name; it must not use an
“explicit” encoding of the curve. The parameters field of the
ECPrivateKey, if present, must be the same named curve that is in the
algorithm identifier in the PKCS#8 header.
sourcepub fn from_private_key_and_public_key(
alg: &'static Algorithm,
private_key: Input<'_>,
public_key: Input<'_>
) -> Result<Self, KeyRejected>
pub fn from_private_key_and_public_key(
alg: &'static Algorithm,
private_key: Input<'_>,
public_key: Input<'_>
) -> Result<Self, KeyRejected>
Constructs an ECDSA key pair directly from the big-endian-encoded private key and public key bytes.
This is intended for use by code that deserializes key pairs. It is
recommended to use RsaPubeyPair::from_pkcs8() (with a PKCS#8-encoded
key) instead.
sourcepub fn sign(
&self,
rng: &dyn SecureRandom,
msg: Input<'_>
) -> Result<Signature, Unspecified>
pub fn sign(
&self,
rng: &dyn SecureRandom,
msg: Input<'_>
) -> Result<Signature, Unspecified>
Returns the signature of the message msg using a random nonce
generated by rng.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for KeyPair
impl Send for KeyPair
impl Sync for KeyPair
impl Unpin for KeyPair
impl UnwindSafe for KeyPair
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more