pub trait HostWithStore<T>: HasData + Send {
// Required methods
fn import_verifying_key_raw(
accessor: &Accessor<T, Self>,
raw: Vec<u8>,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send;
fn import_verifying_key_spki(
accessor: &Accessor<T, Self>,
spki: Vec<u8>,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send;
fn import_verifying_key_jwk(
accessor: &Accessor<T, Self>,
jwk: String,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send;
}Required Methods§
Sourcefn import_verifying_key_raw(
accessor: &Accessor<T, Self>,
raw: Vec<u8>,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
fn import_verifying_key_raw( accessor: &Accessor<T, Self>, raw: Vec<u8>, ) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
Import a 32-byte raw public key (RFC 8032 encoding). Material of
any other length fails with error.invalid-key; a non-canonical or
small-order encoding is rejected here or at verification, per the
interface’s verification criterion.
Sourcefn import_verifying_key_spki(
accessor: &Accessor<T, Self>,
spki: Vec<u8>,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
fn import_verifying_key_spki( accessor: &Accessor<T, Self>, spki: Vec<u8>, ) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
Import a public key as an X.509 SubjectPublicKeyInfo (DER, RFC
8410 algorithm id 1.3.101.112). The embedded point is subject to
the same strict criterion as import-verifying-key-raw.
Sourcefn import_verifying_key_jwk(
accessor: &Accessor<T, Self>,
jwk: String,
) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
fn import_verifying_key_jwk( accessor: &Accessor<T, Self>, jwk: String, ) -> impl Future<Output = Result<Result<Resource<VerifyingKey>, Error>>> + Send
Import a public key as an RFC 8037 OKP public JWK (kty: "OKP",
crv: "Ed25519", x). jwk is the JWK as JSON text; see
mac-key.export-key-jwk for the package-wide JWK contract. An
alg member, when present, must be "Ed25519" or "EdDSA". The
same strict point criterion applies.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.