VeraCrypt est un logiciel libre et open-source de chiffrement à la volée (On-The-Fly Encryption ou OTFE). Il permet de sécuriser des données en les chiffrant de manière transparente, de sorte que les données ne peuvent être lues ou écrites que si elles sont authentifiées par un mot de passe, une phrase secrète ou une clé de chiffrement matérielle.
Il est considéré comme le standard de facto pour le chiffrement de données locales sur les systèmes de bureau, succédant au célèbre (et aujourd’hui disparu) TrueCrypt.
VeraCrypt est un fork de TrueCrypt, un projet qui a été brutalement abandonné par ses développeurs en 2014. L’équipe de développement de VeraCrypt (principalement animée par la société française IDRIX) a repris le code pour corriger des failles de sécurité identifiées dans TrueCrypt et améliorer considérablement sa résistance aux attaques modernes.
2. Fonctionnalités Principales
VeraCrypt opère à trois niveaux distincts selon les besoins de l’utilisateur :
- Conteneurs de fichiers (Disques virtuels) : Il crée un fichier conteneur qui, une fois « monté » avec le bon mot de passe, se comporte exactement comme un disque dur virtuel (une clé USB ou un disque supplémentaire) dans le système d’exploitation. L’utilisateur y glisse ses fichiers, et ils sont chiffrés en temps réel.
- Chiffrement de partitions ou de disques non-système : Il peut chiffrer intégralement une partition de disque dur, une clé USB ou un disque externe. Le disque apparaît alors comme un espace de stockage formaté et utilisable uniquement après authentification.
- Chiffrement du système d’exploitation (Windows) : Il chiffre l’intégralité de la partition où réside Windows. Cela impose une authentification pré-démarrage (pre-boot authentication) : l’utilisateur doit taper son mot de passe avant même que le système d’exploitation ne commence à charger.
3. Spécificités Techniques et Sécurité
- Algorithmes robustes : Il supporte des algorithmes de chiffrement standards et reconnus (AES, Serpent, Twofish, Camellia, Kuznyechik) ainsi que des algorithmes de hachage (SHA-256, SHA-512, Whirlpool, Streebog). Il permet également de créer des cascades d’algorithmes (ex: AES-Twofish-Serpent) pour une sécurité théorique maximale.
- Améliorations anti-brute-force : Par rapport à TrueCrypt, VeraCrypt a considérablement augmenté le nombre d’itérations lors de la dérivation de la clé (PBKDF2). Cela rend les attaques par force brute ou par dictionnaire exponentiellement plus lentes et coûteuses en temps de calcul.
- Déni plausible (Plausible Deniability) : C’est une caractéristique unique de la famille TrueCrypt/VeraCrypt. Il permet de créer des volumes cachés à l’intérieur d’un volume chiffré principal. Si l’utilisateur est contraint de divulguer son mot de passe, il peut donner celui du volume « leurres » (qui contient des données sans importance), sans qu’aucune analyse technique ne puisse prouver l’existence du volume caché principal.
4. Cas d’usage opérationnels
- Archivage sécurisé : Stocker des conteneurs VeraCrypt sur des services de Cloud (Dropbox, OneDrive, etc.) pour y placer des données sensibles à l’abri de la curiosité du fournisseur de service.
- Transport de données : Sécuriser une clé USB contenant des documents professionnels, des mots de passe ou des données personnelles (RGPD) en cas de perte ou de vol du support physique.
- Protection de machines : Sécuriser un ordinateur portable contre le vol physique en chiffrant le disque système.
5. Limites et Points de vigilance
- Irréversibilité en cas d’oubli : Il n’existe aucun mécanisme de « mot de passe oublié » ou de récupération de données. Si le mot de passe ou la clé de chiffrement (fichier keyfile) est perdu, les données sont cryptographiquement perdues à jamais.
- Support système hétérogène : Le chiffrement du système d’exploitation (pré-démarrage) n’est supporté que sur Windows. Sur macOS et Linux, VeraCrypt ne peut être utilisé que pour monter des conteneurs de fichiers ou chiffrer des disques/partitions non-système.
- Performances : Bien que très optimisé, le chiffrement à la volée consomme des ressources CPU. Sur des machines très anciennes ou avec des cascades d’algorithmes lourdes, on peut observer un léger ralentissement des opérations d’écriture/lecture intensives.