SafeCloset is developed by Denys S├ęguret, also known as Canop or dystroy.

Chat

The best place to chat about safecloset, to talk about features or bugs, is the Miaou chat.

Issues

We use GitHub's issue manager.

Before posting a new issue, check your problem hasn't already been raised and in case of doubt please come first discuss it on the chat.

Independant security audit

None has been done yet. I'd welcome help on this topic.

Storage format

The storage format is described to ensure it's possible to replace SafeCloset with another software if needed.

The closet file is a MessagePack encoded structure Closet with the following fields:

The MessagePack serialization preserves field names and allows future additions.

An instance of ClosedDrawer is a structure with the following fields:

The content is the AES-GCM-SIV encryption of the serializied drawer with the included nonce. The key used for this encryption is a 256 bits Argon2 hash of the password with the closet's salt.

The serialized drawer is a MessagePack encoded structure with the following fields:

Instances of Entry contain the following fields:

Instances of DrawerSettings contain for now just one optional field: