TWc full encryption

52 views
Skip to first unread message

Wolfgang

unread,
Oct 6, 2025, 2:30:22 AMOct 6
to TiddlyWikiClassic
Hi all,
is there any full encryption (not tiddler-wise like in EncryptionPlugin) for TWc?
In standard TW5 you can optionally set a pwd which fully encrypts the TW. Opening an encrypted TW5 first only shows a small dialog to enter pwd and if correct decrypts the TW5...
Many thanks,
Wolfgang

Roma

unread,
Oct 6, 2025, 3:14:42 AMOct 6
to TiddlyWikiClassic
Will probably not fulfill everyone's needs, but for information: some OS propose encryption. I'm satisfied with Pop OS (Linux, Ubuntu base), process is straightforward. But it is for the entite hard drive. Otherwise, there are softwares to encrypt folders. I am personnaly not fond of them...

Yakov

unread,
Oct 6, 2025, 4:36:13 AMOct 6
to TiddlyWikiClassic
Hi Wolfgang, I don't think there's any other non-outdated plugins for encryption (except for TiddlerEncryptionPlugin, recently updated by Sam to use AES).

EncryptionPlugin, on the other hand, is not tiddler-wise in terms of storage (i.e. one can't see the titles until the TW is unencrypted). The only limitation is, it doesn't support encrypting plugins in a way that they are started after unencrypting.

The question is, do you need a "more strict UI" (i.e. until unencrypted, TW only shows the login form), a "more strict storage" (i.e. allow to encrypt plugins and start them after unencrypting), both, or something else.

For the UI part, EncryptionPlugin provides the ifLocked/ifUnlocked macros, so you can get something similar, although that will require some efforts (and probably hacks, since it doesn't do much about DefaultTiddlers, and using these macros in PageTemplate is complicated, it's easier to put them into main menu and sidebar directly). Let me know if you need some help with the configuring the UI.

понедельник, 6 октября 2025 г. в 10:14:42 UTC+3, Roma:

Wolfgang

unread,
Oct 6, 2025, 4:57:47 AMOct 6
to TiddlyWikiClassic
Hi Yakov,
I think that encrypting in bulk should be much faster than encrypting ~20K tiddler by tiddler.
Furthermore, it's hard for me to decide, which tiddlers should be encrypted and which could be clear. It's also a bit schizophrenic...
The way it is implemented in TW5 would be ideal for me (login > decrypt, save only encrypted)...
Best regards,
Wolfgang

Yakov

unread,
Oct 9, 2025, 4:57:00 AMOct 9
to TiddlyWikiClassic
Right. The first concern is not relevant to EncryptionPlugin, the tiddlers are encrypted in bulk ("externalized" into html and then encrypted), so the real question is: do you currently have performance problems with EP? Or are you expecting them in the future?

As for deciding which tiddlers to encrypt, isn't the default option good enough? All tiddlers except for plugins are encrypted, so unless you created some very custom plugins that contain sensitive data inside it, this shouldn't be an issue.

I agree than we that the UI part is not well-polished, perhaps a separate screen would be nicer. Not sure if I'll have time for this soon, though, especially given that I didn't get much feedback on v2, which should be tested in more details to continue active development. If anybody is willing to help with this task, I'd gladly collaborate.

понедельник, 6 октября 2025 г. в 11:57:47 UTC+3, Wolfgang:

Wolfgang

unread,
Oct 10, 2025, 3:32:18 AMOct 10
to TiddlyWikiClassic
Hi Yakov,

I again tried EncryptionPlugin with my ~20K tiddlers and default settings (a dozen tiddlers in  ListUnencrypted): 
  • unlock takes >10s which is much better than previously but still not useable for me
  • save takes 4-5s which is (nearly) acceptable
I currently use a modified EncryptedVaultPlugin which encrypts only those tiddlers tagged with a particular keyword:
  • unlock takes 3-4s
  • save takes 4-5s
Both not high speed but accepted by me.
A polished UI is not my concern...

Many thanks,
Wolfgang

Wolfgang

unread,
Oct 10, 2025, 3:34:18 AMOct 10
to TiddlyWikiClassic
Forgot: "references" hangs for any tiddler using  EncryptionPlugin...

Yakov

unread,
Oct 10, 2025, 6:11:15 AMOct 10
to TiddlyWikiClassic
Ah, now I see. Before doing any optimizations, could you check the timing in your case? I've prepared a version of EP that alerts with timing on encrypting/decrypting, let's see the numbers.

The most promising way to accelerate is to use non-JS cryptography, most likely subtle crypto. However, it is only supposed to work over https: (not sure about file:), while most TW server savers (like MTS) don't provide https by themselves, so this can be of limited use (which saver do you use?).

As for "references", sounds like it is an entirely different issue. Did I get you right that the references button on any tiddler hangs in the big TW with EP, while if you disable EP, it works fine?

пятница, 10 октября 2025 г. в 10:34:18 UTC+3, Wolfgang:

Wolfgang

unread,
Oct 11, 2025, 2:57:43 AMOct 11
to TiddlyWikiClassic
Hi Yakov,

with Palemoon/Tiddlymoon:
  • unlock: loading from vault: decrypting took 11.106s, deserializing took 4.676s
  • save: updating vault: serializing took 2.868s, encrypting took 4.692s
with Firefox/Timimi:
  • unlock: loading from vault: decrypting took 3.794s, deserializing took 0.684s
  • save: updating vault: serializing took 0.473s, encrypting took 2.886s
Firefox/Timimi seams to be much quicker. 
But in case of saving you have to wait the 7-8s untill it is effectively written to disc. If I close the tab too early, all the changes are lost. That's the reason I do not use Timimi...

Exactly: "references" work fine without EP resp. with my modified EncryptedVaultPlugin and hangs using EP both in Palemoon/Tiddlymoon and  Firefox/Timimi...

Best regards,
Wolfgang

Yakov

unread,
Oct 15, 2025, 3:48:05 AMOct 15
to TiddlyWikiClassic
Right, I'll return to the optimization a bit later (good to know that you're using savers that work via file: schema, I'll check if subtle crypto works in this context, at least in FF);

for now, please check this:
>  If I close the tab too early, all the changes are lost. That's the reason I do not use Timimi...
in fact, as far as I know, the changes are not lost: they are just not written yet. If you refresh the page, they look lost indeed – that's because browser has loaded the old version (as saving is not done yet). Try a little experiment: do some change, quickly refresh the page so that the change is "lost", wait several seconds, and refresh the page again: you'll probably see that the changes are "restored".

суббота, 11 октября 2025 г. в 09:57:43 UTC+3, Wolfgang:

Wolfgang

unread,
Oct 16, 2025, 1:01:08 AMOct 16
to TiddlyWikiClassic
Hi Yakov,
you're right. Timimi completes saving in the background even when I close FF. But, it's at least a bit misleading, when TWc says "saved" though it is not (yet).
PS: besides "references" the Javascript of TWc is also "hanging" after "new tiddler" > "done" (probably related to >20K tiddlers)...
Regards,
Wolfgang
Reply all
Reply to author
Forward
0 new messages