[][src]Crate sequoia_store

For storing OpenPGP Certificates.

The key store stores OpenPGP Certificates ("Certs") using an arbitrary label. Stored keys are automatically updated from remote sources. This ensures that updates like new subkeys and revocations are discovered in a timely manner.

Security considerations

Storing public keys potentially leaks communication partners. Protecting against adversaries inspecting the local storage is out of scope for Sequoia. Please take the necessary precautions.

Sequoia updates keys in compliance with the network policy used to create the mapping.

Example

let mapping = Mapping::open(&ctx, REALM_CONTACTS, "default")?;

let fp = Fingerprint::from_bytes(b"bbbbbbbbbbbbbbbbbbbb");
let binding = mapping.add("Mister B.", &fp)?;

println!("Binding {:?}", binding.stats()?);
// prints:
// Binding Stats {
//     created: Some(Timespec { tv_sec: 1513704042, tv_nsec: 0 }),
//     updated: None,
//     encryption: Stamps { count: 0, first: None, last: None },
//     verification: Stamps { count: 0, first: None, last: None }
// }

Structs

Binding

Represents an entry in a Mapping.

BundleIter

Iterates over bindings in a mapping.

Key

Represents a key in the store.

KeyIter

Iterates over keys in the common key pool.

Log

Represents a log entry.

LogIter

Iterates over logs.

Mapping

A public key store.

MappingIter

Iterates over mappings.

Stamps

Counter and timestamps.

Stats

Statistics about bindings and stored keys.

Store

The common key pool.

Enums

Error

Errors returned from the store.

Constants

REALM_CONTACTS

Keys used for communications.

REALM_SOFTWARE_UPDATES

Keys used for signing software updates.

Type Definitions

Result

Results for sequoia-store.