Expand description
vti-secrets — pluggable secret-store backends + the integration
onboarding flow, shared across the Verifiable Trust Infrastructure
workspace and external integrations.
§What this crate provides
SeedStore— the storage trait (re-exported fromvti-common) for BIP-32 master seeds / raw secret key material.- The concrete backends ([
AwsSeedStore], [GcpSeedStore], [AzureSeedStore], [VaultSeedStore], [K8sSeedStore], [KeyringSeedStore], [PlaintextSeedStore], and the TEE [kms_tee] backend), each behind the same feature flag the VTA uses. create_seed_store— the feature-aware factory that picks a backend from aSecretsConfig.SecretsConfig— the[secrets]config shape.- (feature
onboarding) [onboarding::IntegrationOnboarding] — the ephemeral-did:key→ ACL-grant → auto-rotate cold-start flow, wrappingvta-sdk’sSessionStore.
§Why a shared crate
These backends + the factory previously lived inside vta-service, so an
external VTI integration (e.g. vti-message-bridge) could not reuse them
without depending on the whole service binary crate. Lifting them here lets
an integration persist its identity seed + per-connector credentials via the
exact same pluggable backends the VTA uses, and onboard the exact same way.
vta-service depends on this crate and re-exports it from
keys::seed_store, so existing call sites are unchanged — this is a pure
extraction with no behavioural change.
Re-exports§
pub use config::SecretBackend;pub use config::SecretsConfig;pub use seed_store::create_seed_store;
Modules§
- config
- Secret-store configuration.
- discovery
- Secret enumeration for setup wizards.
- seed_
store
Traits§
- Seed
Store - Backend for storing and retrieving secret key material.