Trait KeySpecifier

Source
pub trait KeySpecifier {
    // Required methods
    fn arti_path(&self) -> StdResult<ArtiPath, ArtiPathUnavailableError>;
    fn ctor_path(&self) -> Option<CTorPath>;
    fn keypair_specifier(&self) -> Option<Box<dyn KeySpecifier>>;
}
Expand description

The “specifier” of a key, which identifies an instance of a key.

KeySpecifier::arti_path() should uniquely identify an instance of a key.

Required Methods§

Source

fn arti_path(&self) -> StdResult<ArtiPath, ArtiPathUnavailableError>

The location of the key in the Arti key store.

This also acts as a unique identifier for a specific key instance.

Source

fn ctor_path(&self) -> Option<CTorPath>

The location of the key in the C Tor key store (if supported).

This function should return None for keys that are recognized by Arti’s key stores, but not by C Tor’s key store (such as HsClientIntroAuthKeypair).

Source

fn keypair_specifier(&self) -> Option<Box<dyn KeySpecifier>>

If this is the specifier for a public key, the specifier for the corresponding (secret) keypair from which it can be derived

Implementors§