Comment by apantel
2 years ago
I have a private note app that I wrote for personal notes to keep them off the cloud.
This is the one problem I don’t know how to go about solving for tens of thousands of notes.
If anyone has any solutions, please share.
One simple way to get around this is to use some sort of labelling system for your notes.
Then you can hash the labels and keep an index of the hash. You can also symmetrically encrypt the hash, or slugify it first. The index can be a file, or many, that you load in memory and keep updated / synced on changes.
You can then do label-based searches on your notes by first hashing the input string and searching for an exact match in the index.
For something like full text search on encrypted data, I guess you'd need to use a database that already does that.
is it possible you create a vector index on the open documents and that index basically has searchable value but doesn't leak anything vital? if it were just English you were searching for, then it wouldn't need encryption.