Encryption

From FreeMind
Jump to navigationJump to search

In FreeMind, the whole map or single branches may be encrypted. An encrypted branch has a padlock icon. Encryption is available since FreeMind 0.8.0.

Using encryption

To insert an encrypted branch, select Insert Encrypted Node from the Tools menu. It is not possible to encrypt an existing node, though you can move an existing node to an encrypted branch once you have created it.

To lock or unlock an encrypted branch, select Toggle Crypted/Encrypted from the Tools menu.

Menu

  • File > Created Encrypted map...
  • Tools > Insert Encrypted Node
  • Tools > Toggle Crypted/Encrypted

Encryption algorithm

The encryption algorithm used in FreeMind 0.8.0, FreeMind 0.8.1 and in the last beta and RC versions of 0.9.0 is Single DES.

Tripple DES is not supported.

Both Single DES and Tripple DES are symmetric-key algorithms built in Java.

Troubleshooting

Problem: Mind maps encrypted with FreeMind running on Java Runtime Environment JRE 1.4 and JRE 1.5 cannot be opened with FreeMind running on Java Runtime Environment JRE 1.6.

Concerned operating systems: Linux, Windows, and possibly other.

Concerned FreeMind versions: 0.8.0, 0.9.0 beta 9. The bug should not appear in FreeMind 0.8.1 and in latest 0.9.0 RC releases.

Solution: A provisional solution is to stick with Java Runtime Environment JRE 1.4 or JRE 1.5.

Detail: There is a bug in the PBE key getkey.getAlgorithm() method in JRE 1.4. The method key.getAlgorithm() returns PBEWithMD5AndDES instead of PBEWithMD5AndTripleDES[source?].

See also: Bug Nr. 4051143 in Sun bug database.

File format

The encrypted branches are stored in FreeMind XML as follows. TODO.

Implementation

  • Class: Tools
    • Inner classes:
      • Class: DesEncrypter
        • subclass
          • Class: SingleDesEncrypter
          • Class: TripleDesEncrypter
  • Class: EncryptedMindMapNode

Links

Implementation