Skip to content

TrueCrypt 7.1a on macOS 10.14 Mojave

Even though development on TrueCrypt has ended, I still use it on both Windows and macOS computers. While Truecrypt 7.1a works without any issues on Windows 10, it has two issues on macOS 10.14 Mojave.

Note: Truecrypt 7.1a is the last version to support the write function; Truecrypt 7.2 is read-only.

Cannot Install TrueCrypt

When attempting to install TrueCrypt 7.1a on macOS 10.10 Yosemite and later versions (including macOS 10.14 Mojave), the installer will fail with an error message, “TrueCrypt requires Mac OS X 10.4 or later”.

The cause is a version check that no longer works starting with Yosemite. The workaround is to remove that version check:

  1. Open the “TrueCrypt 7.1a Mac OS X.dmg” image.
  2. Copy the “TrueCrypt 7.1a.mpkg” file to your desktop (or other folder).
  3. Right-click on the copied file and select “Show Package Contents”.
  4. Open the Contents folder.
  5. Edit the “distribution.dist” file and remove the contents of the “pm_install_check” function (lines 13 thru 18):
    12 function pm_install_check() {
    13   if(!(system.version.ProductVersion >= '10.4.0')) {
    14     my.result.title = 'Error';
    15     my.result.message = 'TrueCrypt requires Mac OS X 10.4 or later.';
    16     my.result.type = 'Fatal';
    17     return false;
    18   }
    19   return true;
    20 }

    The result will be:

    12 function pm_install_check() {
    19   return true;
    20 }
  6. Save the changes to the file.

Run the modified “TrueCrypt 7.1a.mpkg” and the installation should proceed without a version error.

OSXFUSE Mount Error

When attempting to mount a file or volume for the first time, Truecrypt will fail with an error, “the OSXFUSE file system is not available”.

OSXFUSE (currently known as “FUSE for macOS”) extends macOS’s native file handling capabilities via third-party file systems, such as Truecrypt. Beginning with macOS 10.13 High Sierra, macOS requires the user’s approval before loading newly-installed third-party kernel extensions (including third-party file systems).

Usually, the user is prompted to open the “Security & Privacy” settings to allow the blocked software in question to load. Unfortunately, this does not happen automatically for TrueCrypt.

The workaround is to manually force the user approval request to appear:

  1. Mount a file or volume in TrueCrypt. Get the OSXFUSE error.
  2. Open Settings, “Security & Privacy”, and the General tab.
  3. Look for a message, with text like “System software from developer ‘Legacy Developer: GitHub’ was blocked from loading”, near the bottom and click the Allow button.
  4. If you do not see the message, do the following:
    1. Open the Terminal application and type the following to manually load the FUSE file system extension:
      sudo kextutil -v /Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
    2. Check “Security & Privacy” to see if the message is visible and if so, click the Allow button.
    3. If you still don’t see the message, reboot and repeat starting from step 1.
  5. Attempt to mount a file or volume again.

Subsequent TrueCrypt mount operations will no longer require user approval.

Some info derived from:
truecrypt 7.1a requires Mac OS X 10.4 or later on Yosemite 10.10
Truecrypt 7.1a provided OSXFUSE gives error OSXFUSE file system is not available (71)
Unable to load kext on High Sierra (10.13) #777

2 Comments

  1. rehmke

    Have you tried to use TrueCrypt 7.1a with Catalina?

    • Chanh

      Not yet. I’m not ready to give up 32bit applications. When I do try TrueCrypt with Catalina, I will update this post or write a new one.

Leave a Reply

Your email address will not be published. Required fields are marked *