TrueCrypt

Fiche logiciel validé
  • Création ou MAJ importante : 29/11/11
  • Correction mineure : 07/02/14
Mots-clés

TrueCrypt : chiffrement de données

Description
Fonctionnalités générales

TrueCrypt est un logiciel de chiffrement de données à la volée. Il permet de créer un disque virtuel chiffré (volume au sens de TrueCrypt). Les données sensibles sont protégées à l'intérieur de conteneurs chiffrés. On en distingue trois types :

  • conteneur fichier, un fichier standard pouvant être stocké sur n'importe quel support de données ;
  • conteneur partition, une partition ou un disque complet ;
  • partition système, une partition contenant le système d'exploitation. Elle contient, en outre, un chargeur de démarrage spécifique qui demande une authentification afin de déverrouiller le disque avant le chargement proprement dit du système.

TrueCrypt demande une authentification avant de monter le disque virtuel chiffré. Une fois monté, celui-ci est vu comme un disque ordinaire et l'accès au système de fichiers inclus est totalement transparent.

TrueCrypt propose différents algorithmes de chiffrement : AES, Twofish, Serpent ou une cascade de deux d'entre eux. Le mode opératoire est XTS.

Autres fonctionnalités

Il est possible d'inclure sur les supports amovibles, outre le conteneur chiffré, le programme de déchiffrement. Toutefois cela ne fonctionne que sous Windows et impose de posséder les droits de l'administrateur.

TrueCrypt permet de mettre en place un système de répudiation crédible basé sur l'utilisation d'un volume TrueCrypt caché et sur le fait qu'un volume TruyeCrypt ne contient aucune forme de signature permettant de l'identifier.

Les "keyfiles" sont des fichiers dont le contenu est combiné avec le mot de passe. Outre le mot de passe, il faut fournir les bons "keyfiles" pour monter un disque chiffré. L'utilisation de "keyfiles" est optionnelle. Un "keyfile" peut résider sur un support amovible comme une clé USB, ce qui permet un authentification à deux éléments (ce que l'on sait, ce que l'on possède). Il est possible d'utiliser comme "keyfile" un support cryptographique respectant le standard PKCS#11 (clé USB ou carte à puce) ; dans ce cas le mot de passe n'est plus nécessaire.

A partir de la version 7, TrueCrypt est capable d'utiliser les nouvelles instruction AES des processeurs récents afin d'accélérer les opérations de chiffrement.

Interopérabilité

Le format du volume ou conteneur chiffré est indépendant du système (Windows, MacOS X ou Linux). Il est donc possible d'échanger des données chiffrées entre ces différents systèmes, sous réserve que le système de fichiers utilisé soit supporté sur la machine destination.

Contexte d'utilisation dans mon laboratoire/service

L'objectif principal est de protéger la confidentialité de l'information en cas de vol ou de perte de la machine ou du support.
Différents usages :

  • Protection d'un ordinateur portable. Sous Windows, TrueCrypt permet de chiffrer l'ensemble du disque, y compris le système d'exploitation ce qui élimine tout souci de fuite d'information que l'on peut rencontrer avec des chiffrements de fichiers ou répertoires (fichier temporaire, nom du fichier, registre, swap, fichier d'hibernation, etc.).
    Si ce n'est la saisie d'un mot de passe au démarrage, l'utilisation est totalement transparente. Sur une machine récente la dégradation des performances n'est pas réellement sensible.
  • Échange sécurisé d' informations à l'aide d'un support amovible. On stocke sur une clé USB formatée en FAT un conteneur chiffré. Celui-ci contient lui-même un système de fichiers FAT. Cela assure une interopérabilité entre Windows, Linux et MacOS X.
  • Protection d'un répertoire contenant des informations sensibles. Il suffit de le mettre dans un conteneur chiffré. Attention cependant aux informations comme des fichiers temporaires qui pourraient se retrouver en dehors.

TrueCrypt a reçu une certification de sécurité de premier niveau de l'ANSSI. C'est un gage de la qualité du produit.

Limitations, difficultés, fonctionnalités importantes non couvertes

Comme avec toute application de chiffrement, il est impératif de prévoir une procédure de recouvrement en cas de perte ou d'oubli du secret qui a servi au chiffrement. Cette organisation doit être étudiée et mise en place avant tout déploiement.

Une fois le disque chiffré monté ou le système démarré (dans le cas du chiffrement du disque système), les données ne sont plus protégées et quiconque a accès à la machine peut récupérer les informations.

L'utilisation de la répudiation crédible demande une analyse de risques approfondie.

Dans le cas courant de protection uniquement d'un répertoire sensible sur la machine, il faut protéger la mémoire virtuelle + la mémoire d'hibernation sur les portables, car ces 2 zones peuvent contenir de l'information en clair :
1) Désactivation de la pagination ou à défaut remise à zéro de la mémoire virtuelle à chaque arrêt de l'ordinateur (Windows XP) : mettre à 1 la clé de registre HKey_Local_Machine/System/Current Control Set/Control/Session Manager/Memory Management/ClearPageFileAtShutdown.
2) Supprimer le mécanisme d'hibernation (Windows XP) : Panneau de configuration -> options d'alimentation -> décocher la mise en veille prolongée.

Lorsque la partition système est chiffrée, le mot de passe demandé par le chargeur TrueCrypt avant le démarrage proprement dit de Windows correspond à la disposition d'un clavier américain. Cela n'a aucune incidence pour l'utilisateur qui peut parfaitement mémoriser le mot de passe comme s'il avait été saisi avec un clavier français. Par contre lorsque l'on veut accéder à cette partition à partir d'un autre système (dual boot, par exemple), il faut en tenir compte.

Contrairement à d'autres produits de chiffrement intégral du disque, il n'est pas possible d'avoir une authentification unique. Il est donc nécessaire de saisir un premier mot de passe pour déverrouiller le disque puis un deuxième pour ouvrir la session Windows.

Le chiffrement du fichier d'hibernation de Windows n'est vraiment garanti qu'à partir de la version 7 de TrueCrypt et uniquement pour Vista, 7, 2008 (lié à la disponibilité d'une API Windows).

Environnement du logiciel
Plates-formes

Windows 8/7/XP/2000
Windows Server 2003/2008 (32, 64bits)
MacOS X à partir de 10.4
Linux (à partir du noyau 2.4)

Autres logiciels aux fonctionnalités équivalentes

BitLocker : Windows Vista, 7 (versions intégrale et entreprise) et Windows Server 2008, chiffrement de disques
ZoneCentral : Windows, chiffrement de répertoires
PGP Whole Disk Encryption : Windows, MacOS X, chiffrement de disques
McAfee Endpoint Encryption : Windows, chiffrement de disques et chiffrement de répertoires
dm-crypt, LUKS : intégré au noyau Linux, compatibilité FreeOTFE, chiffrement de disques
FreeOTFE : Windows, PDA, chiffrement de disques
Symantec Endpoint Encryption : Windows, chiffrement de disques

La production de disques qui intègrent un chiffrement au niveau du matériel se développe rapidement. C'est une solution à considérer. Il existe aussi des clé USB chiffrées au niveau du matériel.

Environnement de développement
Type de structure associée au développement

Fondation : TrueCrypt Foundation.

Eléments de pérennité

La première version (1.0) de TrueCrypt date de 2004, elle était basée sur E4M (Encryption for the Masses). Depuis de nouvelles versions apparaissent régulièrement.

Références d'utilisateurs institutionnels

Au moins utilisé par le contributeur de cette fiche et par 2 enseignants du Cnam de Versailles pour protéger les données sensibles sur les ordinateurs portables.
TrueCrypt fait partie des solutions recommandées au CNRS pour la protection des portables.
Ce produit a reçu un certificat de sécurité de premier niveau (CSPN) ayant donné lieu au rapport de certification (DCSSI-CSPN-2008/03). Il a été qualifié au niveau élémentaire le 17 août 2009 (n° 2088/SGDN/ANSSI/SR).

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums
Documentation utilisateur

Commentaires

Licence True Crypt

Effectivement la licence TrueCrypt n'est pas une licence GPL et en particulier la modification du code est interdite. Cependant les sources sont disponibles et l'ANSSI a qualifié ce logiciel ce qui accroit bien entendu sa crédibilité en matière de sécurité :

http://www.ssi.gouv.fr/fr/produits-et-prestataires...

Licence

La licence de TrueCrypt (version actuelle de la licence 3.0 en nov. 2012) n'est pas libre ni compatible open source : elle n'apparaît pas dans la liste des licences libres de la FSF http://www.gnu.org/licenses/license-list.html ni de la OSI http://opensource.org/licenses/alphabetical.

Si les termes de la licence sont respectés, il est possible d'utiliser TrueCrypt et de faire et de distribuer des copies de TrueCrypt non modifiées, il faut lire la licence en détail pour d'autres modifications et distributions de ce logiciel.

Complement

La distribution Fedora indique dans son site :
https://fedoraproject.org/wiki/Forbidden_items?rd=...

Fedora Suggests: tcplay (https://github.com/bwalex/tc-play) is an independently developed TrueCrypt-compatible program under the BSD license. It is available in the official Fedora repository. It is recommended if you need TrueCrypt compatibility.