Crate engine

source ·
Expand description

A system for securely managing secrets.

This top-level crate contains references to the others that make up the IOTA Stronghold’s low-level crates known as “Stronghold-Engine”.


This framework is divided into the following crates:

  • vault: logic and abstractions for the storage layer
  • snapshot: method for storing the state of the vault in a file
  • store: a simple unencrypted storage protocol


This library has not yet been audited for security, so use at your own peril. Until a formal third-party security audit has taken place, the IOTA Foundation makes no guarantees to the fitness of this library for any purposes.


pub use runtime;


This crate defines and implements the encrypted offline storage format used by the Stronghold ecosystem.
This crate contains a key/value cache for the stronghold engine. Data is stored in key-value pairs and an expiration timestamp can be set. The data is stored in a structured format and can be quickly retrieved at will. Along with the Vault, this crate is used to store general unencrypted data.
Vault is an in-memory database specification which is designed to work without a central server. Only the user which holds the associated id and key may modify the data in a vault. Another owner can take control over the data if they know the id and the key.


A macro for defining functions whose return values will wrapped in a Cache.