/stronghold.rs

Stronghold is a secret management engine written in rust.

Primary LanguageRustApache License 2.0Apache-2.0

banner

Contributors Forks Stargazers Issues Apache 2.0 license Discord StackExchange


Stronghold

A Rust library to build a secure software storage for sensitive data.
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

IOTA Stronghold is a secure software implementation with the sole purpose of isolating digital secrets from exposure to hackers and accidental leaks. It uses encrypted snapshots that can be easily backed up and securely shared between devices. It is written in stable rust and has strong guarantees of memory safety and process integrity.

(back to top)

Built With

(back to top)

Getting Started

Prerequisites

To build Stronghold, you need a recent version of Rust installed.

Building

The library comes with examples but has no executables on its own. You can use the following instructions to build the library:

  1. Clone the repo:
    git clone https://github.com/iotaledger/stronghold.rs.git
  2. Build the library
    cargo build --release

(back to top)

Usage

An easy way to get acquainted with Stronghold is by checking out the examples section. Examples can be run from the command line interface. Stronghold comes with a simple CLI example, that showcases all features in brief. To run the example change into the client directory, and run

cargo run --example cli

This should print the help of the example with all commands and options.

(back to top)

Roadmap

Components

  • Engine
  • Client (with dual interfaces)
  • peer-to-peer communications
  • Secure runtime zone
  • Integration with crypto.rs
  • Integration with Firefly
  • Integration with Identity

Documentation and Specification

  • User Handbooks
  • Specification Documentation
  • Tutorials

Performance and Testing

  • Unit Tests
  • Lowlevel Library Fuzzing
  • Multiplatform benchmarks
  • Continuous Fuzzing
  • Realworld tests

Applications

  • CLI binary
  • Dynamic high-performance store
  • C FFI bindings
  • Napi Bindings

Hardware Integrations

  • Hardware Abstraction Layer (HAL) API

See the open issues for a full list of proposed features (and known issues).

(back to top)

Security Audit(s)

Stronghold has been audited for security vulnerabilities. This process is meant to be continuously regulated as soon as new security relevant features are shipped with a new version.

Date Branch Commit # Document By
04-05-2022 dev-refactor #eb07c4a4 2022-05-04-IOTA-Stronghold-statement-of-work-performed-1 WITH Secure

Contributing

Contributions make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion to improve this, please create an RFC following the Stronghold Enhancement Proposal(SEP) process. Do not forget to give the project a star! Thanks again!

(back to top)

License

Distributed under the Apache License. See LICENSE for more information.

(back to top)

Contact

Project Link: https://github.com/iotaledger/stronghold.rs

(back to top)