How to convert all notes to AES256

Joplin2.11.11 already supports E2EE using AES256 encryption
May I ask how all the original notes and resources will be converted to use AES256?
Is there any action required? Or will Joplin automatically convert all data to AES256 when it finds that all devices support AES256?

Curious, will the mobile device be much slower in encryption and decryption or not slower?

1 Like

New data will be encrypted using AES256. Old data by default stays as it is to prevent having to reencrypt and reupload/redownload everything. If you want this however, you can force it by exporting all your data as JEX, deleting all your notebooks, and then re-importing the JEX file.


If I choose "re-upload local data", can I achieve my goal?

I'm not entirely sure that would work

Thank you for your pointers, exporting JEX and re-importing can indeed trigger all notebooks and resource files to be converted to AES256
I also accidentally found that the UUID of the resource will change when it is re-imported. I was worried about whether it would not be converted to AES256 because of the repeated UUID. It seems that there is no such problem.
I first export jex and then import it directly. After checking that there is no problem, I delete the existing one, and then remove the word "(1)" from the new notebook name.
This method seems to be good, you can less worry about problems when JEX remits back or there are few data

1 Like

Old notebook. New note. Is that note new data or old data?

AFAIK by re-importing as JEX, you'll be losing all older versions of your notes (if note history is >0 days). In my use case that wouldn't make much difference, but YMMD.

There's actually a function to reencrypt all the data but it's currently hidden. I'll look at making it visible again


new note will use aes256
if old note no any change will not convert to aes256, so if you have any change then new data will use aes256


It just entered my mind that I had the intention to change my encryption password for quite some time - but feared the consequence of having to modify and hence up-/download each and every note by that process.

I'm not sure what would be the best way to go about it (password change), but maybe that's kind of a workaround for those who want to re-encrypt everything using the newer AES standard.


1 Like

New data will use aes256, or new data will trigger that note (the whole note) to be re-encrypted with aes256?

If you make a change to a note, it's going to be re-encrypted using AES-256

1 Like

Is there any action that can be mass-applied that would trigger a re-encryption?

On a sample set of notes, I tested adding tags, moving to a different notebook (ordinary notebook now, shared notebook may have different outcome), and switching note types. These actions can be easily reversed. But I think the subsequent syncs were too quick to reflect re-encrypted notes being uploaded. I'm guessing these changes make an associated change in the database, but don't actually affect the note.

There is but it's currently hidden: Show button to reencrypt data · Issue #8380 · laurent22/joplin · GitHub

Moving to a different notebook should change the parent ID property which should trigger a reencryption

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.