# Vault

This module implements a vault for secrets and files using end-to-end-encryption. The encryption and decryption happens in the browser using a vault specific shared master key. The master keys are encrypted using asymmetrically. For this the user has to enter a second password on the first login or if he needs to access data in a vault. The asymmetric keys are stored for a certain time in the browser storage.

The server can never access the secrets with the information available. Only people registered in the vault can decrypt or encrypt values in a vault. The meta data isn’t encrypted to be able to search/filter for entries more easily.

This modules requires a secure context for the browser to work properly and therefore HTTPS support is required.

The vault-recovery project focuses on disaster recovery in case of an incident to recover secrets from old database backups or old exports.

Table of contents

- Known issues / Roadmap
- Bug Tracker
- Credits
  - Authors
  - Contributors
  - Maintainers

# Known issues / Roadmap

- Field and file history for restoration
- Import improvement

> - Support challenge-response/FIDO2
> - Support for argon2 and kdbx v4

- When changing an entry from one vault to another existing vault, the values added on this entry cannot be accessed, so the field vault is going to be readonly when it is defined.

  If you want to move entries between vaults you can use the export -> import option.

- HTTPS or localhost (secure browser context) is required for the client side encryption

# Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

# Credits

## Authors

- initOS GmbH

## Contributors

- Florian Kantelberg <florian.kantelberg@initos.com>
- Tecnativa:
  - Carlos Roca

## Maintainers

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/server-auth project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.