Selfhostable notes app that encrypts the files on Disk?
Hey everyone! :)
I am currently looking to replace Obsidian with a self-hostable alternative (that preferably also uses Markdown - but it's not a must) but instead of storing the files directly on disk has a way to have all the files within in an encrypted vault / binary format.
Reason being I have very very sensitive data that needs to be stored (employee & medically related).
I read that Logseq used to support this feature but it has since been deprecated, some light googling didn't surface any results other than that so I would be delighted if anyone had any suggestions!
Thanks so much in advance for any and all help! :)
edit: Forgot to mention that it needs to support Linux as well as Android
After some more research it seems that Joplin only E2E encrypts notes at transport and not at rest[1]? e.g. it only stores plain text files on the harddrive just like Obsidian does? This sadly makes it not viable for my use case :/
They do encryption at rest too. Really good notes app and it's cross platform too. Only missing a “web” client for when you want to access your notes on a computer without Joplin installed (but that defeats the purpose of the E2EE IMO)
This needs to be reiterated. If you need to comply with ANY laws at all do not perform this service yourself. Consult professionals and allow them to assume that risk.
If all you are doing is trying to encrypt notes you are taking then maybe that's a different story. Please just make sure you are not at a legal risk.
In my mind at least this would be solved by the "vault" needing to be decrypted with a password every time notes are accessed/saved with the password acting as the key? I'm not terribly well educated on encryption though.
The problem is how many random characters can you remember in your head?
A good encryption key would be around 32 characters to form a 256 bit encryption key.
You can do a fun game of encrypt the encryption key with a password but that's just another vulnerability in the chain.
I recommend getting a PGP key stored on a yubikey and then encrypt all your notes with it since it's all in markdown, I store my notes on Google drive and keep them decrypted in memory so that I can still use Obsidian.
If you are storing manly on one device and are looking for a relatively "simple" solution for encryption at rest I would suggest to just encrypt the folder/directory/image the data are living in.
Of course, this way you have to decrypt the data while you are using it. However, it separates the responsibility from the note taking app.
This may or may not be a good solution for your use case, but it should be fast and easy to implement.
I used to do this with some mildly sensitive data using a mac encrypted disk image with plain markdowns files inside. I accessed the files with vscode, but I don't see why it wouldn't work with Obsidian. It may just be a bit of a hassle to open the vault each time.
I think this is the best answer. Separation of concerns and all. And OP can keep using whatever notes app he is right now or even switch to another, without the additional encryption requirement.
I wanted to write the same thing. have the notes app do the notes thing and handle encryption elsewhere.
as to apps, I suggest QOwnNotes. it's markdown, highly configurable so you can make it minimalistic AF, stores notes in invidual files and folders. it also has a bunch functionality like syncing to nexctcolud and such, but I'd advise against it, just use it as a notes editor. you don't have to selfhost anything, make it use the e.g. Documents/Notes folder and you can use syncthing to securely replicate it to other devices.