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