Being an user of single file encrypted wikis on a daily basis and after recently trying the TW5-CSEncryption plugin, which provides global tiddlers encryption for Node.js [WARNING: Tiddler titles are still stored in plain text!], I wondered what happens if in each of these scenarios the user tries to export all the tiddlers to JSON from the Tools
tab. I wondered if the result is similar to what can be seen in a single file encrypted wiki stored in a HTML file. I went to read https://tiddlywiki.com/static/How%20to%20export%20tiddlers.html , which didn’t provide any insights on the topic. So I had to find the answer experimentally.
Alas, in both scenarios, export all
produces a JSON file with content that is not encrypted! Given that it exports everything, I’d say this is a major leak point of all the private data from an encrypted wiki, thus a security risk.
I can think of a two step strategy for dealing with this problem:
-
The documentation page about exporting all tiddlers linked above must state this risk explicitly. It must warn that data loaded from an encrypted wiki into the browser gets leaked to plain text when tiddlers are exported. Make this warning bold styled, make it even colored in red (unless you consider this aesthetical visual extremism).
-
When clicking the “export all” button in TiddlyWiki (and very likely when exporting a single tiddler as well) an annoying modal dialog must be displayed and the user must explicitly confirm that exported data will be saved to disk not encrypted.