# Struct openssl::ecdsa::EcdsaSig [−] [src]

    pub struct EcdsaSig(_);

A low level interface to ECDSA

OpenSSL documentation at `ECDSA_sign`

## Implementations

### `impl EcdsaSig` [src]

#### `pub fn sign<T>(data: &[u8], eckey: &EcKeyRef<T>) -> Result<EcdsaSig, ErrorStack> where
T: HasPrivate,` [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 from_der(der: &[u8]) -> Result<EcdsaSig, ErrorStack>` [src]

Decodes a DER-encoded ECDSA signature.

This corresponds to `d2i_ECDSA_SIG`.

## 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`.

#### `pub fn verify<T>(
&self,
data: &[u8],
eckey: &EcKeyRef<T>
) -> Result<bool, ErrorStack> where
T: HasPublic,` [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 an `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 an `EcdsaSig`. (See X9.62 or FIPS 186-2)

OpenSSL documentation at `ECDSA_SIG_get0`

## Trait Implementations

### `impl AsRef<EcdsaSigRef> for EcdsaSig` [src]

#### `fn as_ref(&self) -> &EcdsaSigRef` [src]

Performs the conversion.

### `impl Borrow<EcdsaSigRef> for EcdsaSig` [src]

#### `fn borrow(&self) -> &EcdsaSigRef` [src]

Immutably borrows from an owned value. Read more

### `impl Deref for EcdsaSig` [src]

#### `type Target = EcdsaSigRef`

The resulting type after dereferencing.

#### `fn deref(&self) -> &EcdsaSigRef` [src]

Dereferences the value.

### `impl DerefMut for EcdsaSig` [src]

#### `fn deref_mut(&mut self) -> &mut EcdsaSigRef` [src]

Mutably dereferences the value.

### `impl Drop for EcdsaSig` [src]

#### `fn drop(&mut self)` [src]

Executes the destructor for this type. Read more

### `impl ForeignType for EcdsaSig` [src]

#### `type CType = ECDSA_SIG`

The raw C type.

#### `type Ref = EcdsaSigRef`

The type representing a reference to this type.

#### `unsafe fn from_ptr(ptr: *mut ECDSA_SIG) -> EcdsaSig` [src]

Constructs an instance of this type from its raw type.

#### `fn as_ptr(&self) -> *mut ECDSA_SIG` [src]

Returns a raw pointer to the wrapped value.

### `impl Send for EcdsaSig` [src]

### `impl Sync for EcdsaSig` [src]

## Auto Trait Implementations

### `impl RefUnwindSafe for EcdsaSig`

### `impl Unpin for EcdsaSig`

### `impl UnwindSafe for EcdsaSig`

## Blanket Implementations

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

#### `pub fn type_id(&self) -> TypeId` [src]

Gets the `TypeId` of `self`. Read more

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

#### `pub fn borrow(&self) -> &T` [src]

Immutably borrows from an owned value. Read more

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

#### `pub fn borrow_mut(&mut self) -> &mut T` [src]

Mutably borrows from an owned value. Read more

### `impl<T> From<T> for T` [src]

#### `pub fn from(t: T) -> T` [src]

Performs the conversion.

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

#### `pub fn into(self) -> U` [src]

Performs the conversion.

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

#### `type Error = Infallible`

The type returned in the event of a conversion error.

#### `pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>` [src]

Performs the conversion.

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

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

The type returned in the event of a conversion error.

#### `pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>` [src]

Performs the conversion.