[−][src]Trait sequoia_openpgp::crypto::Signer
Creates a signature.
Used in the streaming Signer
, the methods binding components
to certificates (e.g. UserID::bind
), SignatureBuilder
's
signing functions (e.g. SignatureBuilder::sign_standalone
),
and likely many more places.
This is a low-level mechanism to produce an arbitrary OpenPGP signature. Using this trait allows Sequoia to perform all operations involving signing to use a variety of secret key storage mechanisms (e.g. smart cards).
A signer consists of the public key and a way of creating a
signature. This crate implements Signer
for KeyPair
, which
is a tuple containing the public and unencrypted secret key in
memory. Other crates may provide their own implementations of
Signer
to utilize keys stored in various places. Currently, the
following implementations exist:
KeyPair
: In-memory keys.sequoia_rpc::gnupg::KeyPair
: Connects to thegpg-agent
.
Required methods
pub fn public(&self) -> &Key<PublicParts, UnspecifiedRole>
[src]
Returns a reference to the public key.
pub fn sign(
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
[src]
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
Creates a signature over the digest
produced by hash_algo
.
Implementations on Foreign Types
impl Signer for Box<dyn Signer>
[src]
pub fn public(&self) -> &Key<PublicParts, UnspecifiedRole>
[src]
pub fn sign(
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
[src]
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
impl Signer for Box<dyn Signer + Send + Sync>
[src]
pub fn public(&self) -> &Key<PublicParts, UnspecifiedRole>
[src]
pub fn sign(
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
[src]
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
Implementors
impl Signer for KeyPair
[src]
pub fn public(&self) -> &Key<PublicParts, UnspecifiedRole>
[src]
pub fn sign(
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>
[src]
&mut self,
hash_algo: HashAlgorithm,
digest: &[u8]
) -> Result<Signature>