Compliance Vault Encryption Overview

How Compliance Vault protects your organisation’s documents.

1. Summary

Compliance Vault encrypts documents using a layered key design. Keys are generated in the client’s browser, and each organisation has its own vault key. Documents are never protected by a single shared key: every file has its own key, and those file keys are in turn protected by the organisation’s vault key.

The vault key can be unlocked in two independent ways: with the client’s passphrase, or with a downloadable recovery key. This gives clients a dependable way back into their vault without relying on a single secret.

2. The key hierarchy

Four kinds of keys work together. The table below shows what each one is and what it protects.

KeyHow it is createdWhat it protects
Vault keyGenerated at random in the client’s browser. One per client organisation.Wraps (protects) every document’s file key.
Passphrase-derived keyDerived from the passphrase the client chooses.Wraps a copy of the vault key (first wrapping).
Recovery keyRandom 256-bit value, downloaded by the client as a file.Wraps a second copy of the vault key (second wrapping).
File keyUnique key generated for each document.Encrypts one document. Itself wrapped by the vault key.

The vault key

When an organisation sets up its vault, the browser generates one random vault key for that client. Every client receives a different vault key, so one organisation’s keys have no relationship to another’s.

Wrapping the vault key twice

“Wrapping” means encrypting one key with another key. The vault key is wrapped twice, producing two protected copies:

  • Passphrase wrapping. A key is derived from the passphrase the client chooses. That derived key wraps the vault key.
  • Recovery wrapping. A random 256-bit recovery key is generated, and the client downloads it as a file. That recovery key wraps the vault key a second time.

Either wrapped copy is enough to unlock the vault key. Having two independent routes means a forgotten passphrase does not lock the organisation out of its own documents.

A separate key for every document

Each document receives its own file key. The file key is wrapped by the vault key. This design has two practical benefits:

  • Documents are isolated from one another. A single file’s key does not unlock any other document.
  • Changing how the vault key is protected, for example setting a new passphrase, only requires re-wrapping the vault key. Documents do not need to be re-encrypted one by one.

3. How it works in practice

Setting up a vault
  • The client opens the vault setup page and chooses a passphrase.
  • The browser generates the vault key and the 256-bit recovery key.
  • The vault key is wrapped with the passphrase-derived key and with the recovery key.
  • The client downloads the recovery key file and stores it somewhere safe.
Uploading a document
  • A new file key is generated for the document.
  • The document is encrypted with that file key.
  • The file key is wrapped with the vault key and stored alongside the document.
Opening a document
  • The client unlocks the vault key using the passphrase (or the recovery key).
  • The vault key unwraps the document’s file key.
  • The file key decrypts the document.

4. Passphrase and recovery key

If a passphrase is forgotten

The client uses the recovery key file to unlock the vault key, then sets a new passphrase. Their documents remain intact because the vault key itself does not change.

If both are lost

The vault key can only be unlocked with the passphrase or the recovery key. If a client loses both, the vault key cannot be recovered and the documents protected by it cannot be opened. For this reason we strongly recommend storing the recovery key in at least two secure, separate locations, such as a password manager, a secure drive, or a printed copy kept in a safe.

5. Recommendations for clients

  • Download the recovery key immediately when the vault is created.
  • Store the recovery key separately from the passphrase.
  • Keep more than one secure copy of the recovery key.
  • Choose a strong, unique passphrase and do not reuse it elsewhere.
  • Limit who in the organisation has access to the recovery key.