Encryption: Difference between revisions

From FreeMind
Jump to navigationJump to search
m (Reverted edit of Yvyfyjeh, changed back to last version by Dan Polansky)
(-navigation bar: moved to MediaWiki:Sidebar)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
<table><tr>
<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 4: Line 8:


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]]

Latest revision as of 11:29, 25 February 2011

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