Encryption: Difference between revisions

From FreeMind
Jump to navigationJump to search
Line 1: Line 1:
<table><tr>
<td valign=top>
{{Navigation_bar}}
<td>&nbsp;
<td width=600>
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==
==Using encryption==


Line 11: Line 4:


To lock or unlock an encrypted branch, select Toggle Crypted/Encrypted from the Tools menu.
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 <code>getkey.getAlgorithm()</code> method in JRE 1.4. The method <code>key.getAlgorithm()</code> returns PBEWithMD5AndDES instead of PBEWithMD5AndTripleDES[source?].
''See also:'' [http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4051143 Bug Nr. 4051143] in Sun bug database.
==File format==
The encrypted branches are stored in FreeMind XML as follows. TODO.
==Implementation==
* Class: [http://freemind.cvs.sourceforge.net/freemind/freemind/freemind/main/Tools.java Tools]
** Inner classes:
*** Class: DesEncrypter
**** ''subclass''
***** Class: SingleDesEncrypter
***** Class: TripleDesEncrypter
* Class: [http://freemind.cvs.sourceforge.net/viewvc/freemind/freemind/freemind/modes/mindmapmode/EncryptedMindMapNode.java?view=log EncryptedMindMapNode]
==Links==
* [http://en.wikipedia.org/wiki/Triple_DES Triple DES] at Wikipedia
* [http://en.wikipedia.org/wiki/Data_Encryption_Standard DES - Data Encryption Standard] at Wikipedia
* [http://en.wikipedia.org/wiki/Symmetric-key_algorithm Symmetric-key algorithm] at Wikipedia
===Implementation===
* [http://java.sun.com/j2se/1.4.2/docs/api/javax/crypto/Cipher.html Cipher] - Java API
* [http://java.sun.com/j2se/1.4.2/docs/guide/security/jce/JCERefGuide.html Java Cryptography Extension (JCE)]  - Reference Guide
* [http://java.sun.com/javase/6/docs/technotes/guides/security/SunProviders.html Java Cryptography Architecture] - Sun Providers Documentation for Java Platform Standard Edition 6
[[Category:Documentation]]

Revision as of 14:04, 28 July 2010

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.