3 releases (breaking)

0.25.0 Jul 14, 2022
0.24.0 Dec 6, 2021
0.23.0 Jan 21, 2021

#587 in Cryptography

Download history 116/week @ 2022-06-08 93/week @ 2022-06-15 32/week @ 2022-06-22 188/week @ 2022-06-29 24/week @ 2022-07-06 63/week @ 2022-07-13 55/week @ 2022-07-20 236/week @ 2022-07-27 71/week @ 2022-08-03 97/week @ 2022-08-10 46/week @ 2022-08-17 24/week @ 2022-08-24 141/week @ 2022-08-31 49/week @ 2022-09-07 86/week @ 2022-09-14 79/week @ 2022-09-21

355 downloads per month
Used in 6 crates (4 directly)

LGPL-2.0-or-later

4.5MB
55K SLoC

Discovering and publishing OpenPGP certificates over the network.

This crate provides access to keyservers using the HKP protocol, and searching and publishing Web Key Directories.


lib.rs:

Discovering and publishing OpenPGP certificates over the network.

This crate provides access to keyservers using the HKP protocol, and searching and publishing Web Key Directories.

Additionally the pks module exposes private key operations using the PKS protocol.

Examples

This example demonstrates how to fetch a certificate from the default key server:

# use sequoia_openpgp::KeyID;
# use sequoia_net::{KeyServer, Policy, Result};
# async fn f() -> Result<()> {
let mut ks = KeyServer::keys_openpgp_org(Policy::Encrypted)?;
let keyid: KeyID = "31855247603831FD".parse()?;
println!("{:?}", ks.get(keyid).await?);
# Ok(())
# }

This example demonstrates how to fetch a certificate using WKD:

# async fn f() -> sequoia_net::Result<()> {
let certs = sequoia_net::wkd::get("juliett@example.org").await?;
# Ok(()) }

Dependencies

~11–19MB
~381K SLoC