dimanche 21 février 2010

Protéger sa clé USB avec un CoffreFort

La clé USB permet de transporter rapidement et facilement les documents et les applications d'utilisation fréquente. Cette flexibilité est très pratique mais présente un risque important : Voir vos renseignements personnels tomber entre de mauvaises mains en cas de perte ou de vol.

Il y a beaucoup de solutions pour remédier à ce risque. Cependant, elles présentent toutes des inconvénients tels :
  1. Mot de passe à retenir;
  2. Procédure à suivre en insérant et en retirant la clé;
  3. Temps d'attente pour le chiffrage et le déchiffrage;
  4. Installation de nouveaux logiciels sur la clé;
  5. Les données peuvent être inaccessibles sur certains systèmes d'exploitation (Windows, Linux, Mac OS, OS-X, BSD).
  6. Cout de la clé protégée peut être élevée;
  7. Protégé par une technologie non-libre;
  8. Risque de perte de données en cas de défaillance logicielle ou matérielle. 
Avec toutes ces contraintes en tête, mon choix s'est arrêté sur une solution "maison" basée sur le petit programme "ccrypt".

Ce programme en ligne de commande est :
  1. Libre et gratuit;
  2. Petit, léger et rapide;
  3. Précompilé sur plusieurs systèmes d'exploitation (win, lin, osx, sun, bsd);
  4. Travaille sur un fichier à la fois (moins de risque de perte totale);
Ma solution consiste à protéger les fichiers contenus dans un dossier (K:\Documents\CoffreFort) de la clé USB. La protection est assurée par deux scripts qui chiffrent et déchiffrent l'ensemble des fichiers contenus dans le dossier protégé. Un mot de passe est requis pour les deux opérations.

Cette solution est intéressante pour protéger une petite quantité de données (disons moins de 100 Mo). Sinon, le temps de chiffrement devient incommodant.

Installation
1- Télécharger le programme ccrypt
Se procurer les versions compilées.
Pour Windows :
http://ccrypt.sourceforge.net/download/ccrypt-1.7.cygwin-i386.zip

Note 1 : Si vous n'utilisez que Windows, il est inutile de télécharger et installer les archives suivantes.

Pour Linux (Debian, Ubuntu) :
http://ccrypt.sourceforge.net/download/ccrypt-1.7.linux-i386.tar.gz
Pour Mac OS-X :
http://ccrypt.sourceforge.net/download/ccrypt-1.7.mac-univ.tar.gz

Pour les autres OS "ou" si la version 1.7 n'est plus accessible, consultez la section "Downloading and installing" de la page http://ccrypt.sourceforge.net/ et téléchargez l'archive compilée correspondant au système d'exploitation de votre choix.

Note 2 : J'ai utilisé la version 1.7 car la version 1.8 et 1.9 ne sont pas disponibles en version pré-compilée pour les trois OS que je désirais utiliser.

2- Installer les programmes sur la clé
Pour pouvoir utiliser mes scripts, il faut disposer les fichiers "ccrypt" de la façon suivante :

Si K:\ correspond à votre clé USB,
K:\ccrypt\win\(les fichiers pour Windows ici)
         \lin\(les dossiers bin, lib et share pour Linux ici)
         \osx\(les fichiers pour Mac OS-X ici)

De plus, le dossier protégé doit correspondre à :
K:\Documents\CoffreFort\(fichiers protégés ici)

3- Installer les scripts sur la clé
Placer les scripts de chiffrement et de déchiffrement directement dans le dossier racine de la clé :
K:\(ici)

Pour Windows :
Fichier de chiffrement : K:\Chiffrer_CoffreFort.bat

--- Début du script ----------------------------------------------------------
@echo off
.\ccrypt\win\ccrypt -estvr ./Documents/CoffreFort
del 0_COFFRE_OUVERT
type NUL > 0_COFFRE_CHIFFRE
echo ========================
echo Termine! Coffre chiffre
echo ========================
pause
--- Fin du script ----------------------------------------------------------

Fichier de déchiffrement : K:\Dechiffrer_CoffreFort.bat

--- Début du script ----------------------------------------------------------
@echo off
.\ccrypt\win\ccrypt -dstvr ./Documents/CoffreFort
del 0_COFFRE_CHIFFRE
type NUL > 0_COFFRE_OUVERT
echo =========================
echo Termine! Coffre dechiffre
echo =========================
pause
--- Fin du script ----------------------------------------------------------

Note 3 : Si vous n'utilisez que Windows, il est inutile d'installer les scripts suivants (pour Linux).Vous pouvez passer à la section "Utilisation".

Pour Linux :
J'ai décomposé le chiffrement en deux scripts afin de forcer le lancement du chiffrement dans le terminal de mon choix. Dans le cas présent, le terminal choisi est "gnome-terminal".

Fichier de lancement du terminal pour chiffrement : K:\Chiffrer_CoffreFort-Gnome.lin

--- Début du script ----------------------------------------------------------
#!/bin/bash
gnome-terminal -t "Chiffrement du Coffre USB" --hide-menubar -e "./Ccoffre.lin"
--- Fin du script ----------------------------------------------------------

Le précédant script lance le script de chiffrement suivant :
K:\Ccoffre.lin

--- Début du script ----------------------------------------------------------
#!/bin/bash
./ccrypt/lin/bin/ccrypt -esvtr -P 'Entrer la cle de chiffrement : ' ./Documents/CoffreFort
rm ./0_COFFRE_OUVERT
touch ./0_COFFRE_CHIFFRE
read -p "Termine, coffre chiffre, appuyez sur Retour" # PAUSE
--- Fin du script ----------------------------------------------------------

Fichier de lancement du terminal pour déchiffrement : K:\Dechiffrer_CoffreFort-Gnome.lin

--- Début du script ----------------------------------------------------------
#!/bin/bash
gnome-terminal -t "Dechiffrement du Coffre USB" --hide-menubar -e "./Dcoffre.lin"
--- Fin du script ----------------------------------------------------------

Le précédant script lance le script de chiffrement suivant :
K:\Dcoffre.lin

--- Début du script ----------------------------------------------------------
#!/bin/bash
./ccrypt/lin/bin/ccrypt -dsvtr -P 'Entrer la clé de déchiffrement : ' ./Documents/CoffreFort
rm ./0_COFFRE_CHIFFRE
touch ./0_COFFRE_OUVERT
read -p "Termine, coffre dechiffre, appuyez sur Retour" # PAUSE
--- Fin du script ----------------------------------------------------------

Utilisation
L'utilisation est plutôt simple car il n'y a que deux opérations à effectuer : Chiffrer ou déchiffrer.

Avec Windows :
  • Pour chiffrer, il suffit de double-cliquer sur le fichier script "K:\Chiffrer_CoffreFort.bat" pour le lancer et, de saisir deux fois le mot de passe désiré. Cette opération aura pour effet de chiffrer tous les fichiers contenus dans le dossier K:\Documents\CoffreFort. Les fichiers porteront alors l'extension ".cpt". De plus, un fichier vide "K:\0_COFFRE_CHIFFRE" sera créé pour indiquer que le dossier est protégé.
  • Pour déchiffrer, il suffit de double-cliquer sur le fichier script "K:\Dechiffrer_CoffreFort.bat" pour le lancer et, de saisir le mot de passe utilisé lors du chiffrement. Cette opération aura pour effet de déchiffrer tous les fichiers contenus dans le dossier K:\Documents\CoffreFort. Les fichiers reprendront alors leur extension d'origine. De plus, un fichier vide "K:\0_COFFRE_OUVERT" sera créé pour indiquer que le dossier n'est plus protégé.
    Avec Linux :
    La procédure est la même mais en double-cliquant sur "K:\Chiffrer_CoffreFort-Gnome.lin" et "K:\Dechiffrer_CoffreFort-Gnome.lin" respectivement.

    Avec OS-X et les autres systèmes d'exploitation : 
    Je n'ai pas d'ordinateur à ma disposition avec ces systèmes d'exploitation. Je suppose que les scripts ressembleront beaucoup à ceux de Linux. Je vous invite à les créer et à les partager en commentaire de ce billet ou sur votre blog.

    Mises en garde importantes
    1. Un oubli du mot de passe utilisé pour chiffrer les fichiers du dossier "CoffreFort" ne pardonne pas. Il n'est pas possible de déchiffrer les fichiers sans le mot de passe. Vous êtes prévenus!
    2. Prenez soins de faire des copies de sauvegarde fréquemment de votre dossier "CoffreFort". Un incident tel une panne électrique en cours de chiffrement ou de déchiffrement est probablement fatal pour le fichier en cours de traitement. De plus, les clés USB sont plutôt fragiles.
    3. Ne mettez pas un volume de fichiers trop grand dans votre "CoffreFort". Le temps de traitement serait alors énervant et vous seriez tenté de ne pas chiffrer à certains moment pour gagner du temps.
    4. Les scripts sont simples et rudimentaires. Ils ne font aucune vérification et ne tiennent pas compte du succès ou non des opérations de chiffrement ou de déchiffrement. Soyez vigilants! Si le cœur vous en dit, améliorez ce point faible et soumettez vos suggestions.
    Documentation et liens
    La principale documentation de ccrypt est sa page de manuel (traduction).
    Le site de ccrypt (traduction)
    La foire aux questions (traduction)

    Mes billets précédents sur des sujets reliés :
    Votre ordinateur sur une clé USB - PortableApps.com
    Gestion des mots de passe - Keepass

    ---
    Ce texte est conforme à la nouvelle orthographe
    www.orthographe-recommandee.info

        Aucun commentaire:

        Enregistrer un commentaire

        - Vous pouvez laisser un commentaire en toute confiance. Votre adresse courriel ne sera jamais publiée.
        - Il est préférable d'utiliser un compte Google ou un OpenID pour se connecter.
        - Cliquez sur le lien « S'abonner par e-mail » ci-dessous pour être informé des nouveaux commentaires de ce billet.