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§
Sourcefn arti_path(&self) -> StdResult<ArtiPath, ArtiPathUnavailableError>
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.
Sourcefn ctor_path(&self) -> Option<CTorPath>
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).
Sourcefn keypair_specifier(&self) -> Option<Box<dyn KeySpecifier>>
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
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".