[]Struct openssl::ecdsa::EcdsaSig

pub struct EcdsaSig(_);

A low level interface to ECDSA

OpenSSL documentation at ECDSA_sign

Methods

impl EcdsaSig[src]

pub fn sign(
    data: &[u8],
    eckey: &EcKeyRef<Private>
) -> Result<EcdsaSig, ErrorStack>
[src]

Computes a digital signature of the hash value data using the private EC key eckey.

OpenSSL documentation at ECDSA_do_sign

pub fn from_private_components(
    r: BigNum,
    s: BigNum
) -> Result<EcdsaSig, ErrorStack>
[src]

Returns a new EcdsaSig by setting the r and s values associated with a ECDSA signature.

OpenSSL documentation at ECDSA_SIG_set0

pub fn verify(
    &self,
    data: &[u8],
    eckey: &EcKeyRef<Public>
) -> Result<bool, ErrorStack>
[src]

Verifies if the signature is a valid ECDSA signature using the given public key.

OpenSSL documentation at ECDSA_do_verify

pub fn r(&self) -> &BigNumRef[src]

Returns internal component: r of a EcdsaSig. (See X9.62 or FIPS 186-2)

OpenSSL documentation at ECDSA_SIG_get0

pub fn s(&self) -> &BigNumRef[src]

Returns internal components: s of a EcdsaSig. (See X9.62 or FIPS 186-2)

OpenSSL documentation at ECDSA_SIG_get0

pub fn from_der(der: &[u8]) -> Result<EcdsaSig, ErrorStack>[src]

Decodes a DER-encoded ECDSA signature.

This corresponds to [d2i_ECDSA_SIG]: https://www.openssl.org/docs/man1.1.0/crypto/d2i_ECDSA_SIG.html

Methods from Deref<Target = EcdsaSigRef>

pub fn to_der(&self) -> Result<Vec<u8>, ErrorStack>[src]

Serializes the ECDSA signature into a DER-encoded ECDSASignature structure.

This corresponds to [i2d_ECDSA_SIG]: https://www.openssl.org/docs/man1.1.0/crypto/i2d_ECDSA_SIG.html

Trait Implementations

impl Drop for EcdsaSig

impl AsRef<EcdsaSigRef> for EcdsaSig

impl Sync for EcdsaSig[src]

impl Send for EcdsaSig[src]

impl DerefMut for EcdsaSig

impl Deref for EcdsaSig

type Target = EcdsaSigRef

The resulting type after dereferencing.

impl Borrow<EcdsaSigRef> for EcdsaSig

impl ForeignType for EcdsaSig

type CType = ECDSA_SIG

The raw C type.

type Ref = EcdsaSigRef

The type representing a reference to this type.

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]