Struct openssl::crypto::pkey::PKey [-]  [+] [src]

pub struct PKey {
    // some fields omitted
}

Methods

impl PKey

Represents a public key, optionally with a private key attached.

fn new() -> PKey

fn gen(&mut self, keysz: usize)

fn save_pub(&self) -> Vec<u8>

Returns a serialized form of the public key, suitable for load_pub().

fn load_pub(&mut self, s: &[u8])

Loads a serialized form of the public key, as produced by save_pub().

fn save_priv(&self) -> Vec<u8>

Returns a serialized form of the public and private keys, suitable for load_priv().

fn load_priv(&mut self, s: &[u8])

Loads a serialized form of the public and private keys, as produced by save_priv().

fn write_pem(&self, writer: &mut Writer) -> Result<(), SslError>

Stores private key as a PEM

fn size(&self) -> usize

Returns the size of the public key modulus.

fn can(&self, r: Role) -> bool

Returns whether this pkey object can perform the specified role.

fn max_data(&self) -> usize

Returns the maximum amount of data that can be encrypted by an encrypt() call.

fn encrypt_with_padding(&self, s: &[u8], padding: EncryptionPadding) -> Vec<u8>

fn decrypt_with_padding(&self, s: &[u8], padding: EncryptionPadding) -> Vec<u8>

fn encrypt(&self, s: &[u8]) -> Vec<u8>

Encrypts data using OAEP padding, returning the encrypted data. The supplied data must not be larger than max_data().

fn decrypt(&self, s: &[u8]) -> Vec<u8>

Decrypts data, expecting OAEP padding, returning the decrypted data.

fn sign(&self, s: &[u8]) -> Vec<u8>

Signs data, using OpenSSL's default scheme and sha256. Unlike encrypt(), can process an arbitrary amount of data; returns the signature.

fn verify(&self, m: &[u8], s: &[u8]) -> bool

Verifies a signature s (using OpenSSL's default scheme and sha256) on a message m. Returns true if the signature is valid, and false otherwise.

fn sign_with_hash(&self, s: &[u8], hash: HashType) -> Vec<u8>

fn verify_with_hash(&self, m: &[u8], s: &[u8], hash: HashType) -> bool

unsafe fn get_handle(&self) -> *mut EVP_PKEY

Trait Implementations

impl Drop for PKey

fn drop(&mut self)