pub trait SecretKeyTrait: PublicKeyTrait {
    type PublicKey;

    // Required methods
    fn unlock<F, G>(&self, pw: F, work: G) -> Result<(), Error>
       where F: FnOnce() -> String,
             G: FnOnce(&SecretKeyRepr) -> Result<(), Error>;
    fn create_signature<F>(
        &self,
        key_pw: F,
        hash: HashAlgorithm,
        data: &[u8]
    ) -> Result<Vec<Mpi, Global>, Error>
       where F: FnOnce() -> String;
    fn public_key(&self) -> Self::PublicKey;
}

Required Associated Types§

Required Methods§

source

fn unlock<F, G>(&self, pw: F, work: G) -> Result<(), Error>where F: FnOnce() -> String, G: FnOnce(&SecretKeyRepr) -> Result<(), Error>,

source

fn create_signature<F>( &self, key_pw: F, hash: HashAlgorithm, data: &[u8] ) -> Result<Vec<Mpi, Global>, Error>where F: FnOnce() -> String,

source

fn public_key(&self) -> Self::PublicKey

Implementations on Foreign Types§

source§

impl<'a, T> SecretKeyTrait for &'a Twhere T: SecretKeyTrait,

§

type PublicKey = <T as SecretKeyTrait>::PublicKey

source§

fn unlock<F, G>(&self, pw: F, work: G) -> Result<(), Error>where F: FnOnce() -> String, G: FnOnce(&SecretKeyRepr) -> Result<(), Error>,

source§

fn create_signature<F>( &self, key_pw: F, hash: HashAlgorithm, data: &[u8] ) -> Result<Vec<Mpi, Global>, Error>where F: FnOnce() -> String,

source§

fn public_key(&self) -> <&'a T as SecretKeyTrait>::PublicKey

Implementors§