update welcome docs
@@ -24,6 +24,12 @@ protect any digital secret.
Stronghold is a secure database for working with cryptography, which ensures that secrets (like private keys) are never
revealed, but can be used according to best practices.
+Stronghold can be seen as some kind of isolated container for secrets that may be either a private key, or some other bytes of data, that should never be exposed. In order to work with Stronghold one uses so called procedures to either generate new keys, store data into the vault, derive keys or work with the data in place. The difference to a "traditional" password store is, that secret data is never accessed directly but can be worked with the aforementioned procedures. Whenever there is a need to sign some data with a private key, one would be required to call a respective function to work with it.
+
+Generally speaking there are two states where the secret data remains. The runtime operation makes use of Clients. Clients can be thought of as a context-based secure data container with all the functionality to work with sensitive data. In order to persist the runtime data, there are the Snapshot facilities. The Snapshot is actually twofold. At the lowest level, the Snapshot is a highly encrypted file which is being represented by an in-memory instance of Snapshot itself, which itself is encrypted and protected via the same means as the Vault.
+
+Additionally to the secure `Vault` type, Stronghold provides an eviciting cache to store non-sensitive data called the `Store`. Use the `Store` to keep session based configuration data.
+
[![status](https://img.shields.io/badge/Status-Beta-green.svg)](https://github.com/iotaledger/stronghold.rs)
![Audit](https://github.com/iotaledger/stronghold.rs/workflows/Audit/badge.svg?branch=dev)
![Test](https://github.com/iotaledger/stronghold.rs/workflows/Test/badge.svg)
