S         E       C      U      R     I    X

 Secure hosting and network services



Back to Main Page

I have ported Truecrypt 5.1a to the Maemo platform.

Version 5.1a is significantly different than the previous version 4 series. The biggest difference is that the Linux version uses the same GUI that the Windows version uses. The GUI is generated graphically using a library called wxWidgets. Although the GUI version does compile for Maemo, it is scaled for viewing on a fairly standard PC monitor and does not work well on a small tablet screen in 800x480 resolution.

I have been trying to recode some of the graphics in the source code to make the program fit, but it will take some time to figure out all the libraries and functions.

So for now, I will probably modify EasyCrypt to work with 5.1a. Although there are some changes to the command line format, it should not be too hard to modify EasyCrypt to work with 5.1a.

Another big difference is that to make Truecrypt adaptable to more platforms, 5.1a is no longer tied to a version-specific kernel module that has to be rebuilt with every new kernel version. Rather, 5.1a relies on FUSE or Filesystem in User SpacE. FUSE uses the /dev/loop device rather than the DM module.  

In addition, for 5.1a to compile and work properly, I had to use Scratch box2 and gcc-4.2.1 rather than the standard gcc-3.3 that comes with Scratchbox Apophis. As a result, 5.1a needs a newer version of the  libstdc++.so.6 library. OS2008 comes with 6.0.3 but 5.1.a needs 6.0.9.

One solution is to compile the library statically into the binary. The other is to simply link the newer library in /usr/lib and hope nothing breaks, which is what I have been testing.

And the last major difference in 5.1a is that CBC and LRW modes are no longer supported. Instead, 5.1a uses XTS mode, which is supposed to be more secure. As a result, any volumes encrypted with older versions of Truecrypt, such as 4.3a will open in version 5.1a. But if you create a brand new volume using 5.1a, you will not be able to open it with an older version of Truecrypt, such as 4.3a.

So if anyone would like to try the 5.1a COMMAND LINE BINARY only on their Nokia N800 or N810 tablets, you can download it here.


You will also need libstdc++.so.6.0.9 which you will need to put in /usr/lib and create a symbolic link to libstdc++.so.6.

For example:
N800# cd /usr/lib
N800# rm libstdc++.so.6
N800# ln -s libstdc++.so.6.0.9 libstdc++.so.6

If you don't have it, download it here.


And finally, you will need to install the FUSE 2.7.3 package, which is available as an installable .deb file here (thanks to ukki for the build).


It goes without saying that this is extremely experimental software and using it or changing your libraries around might break your device. Try at your own risk!