PDA

Afficher la version complète : [Info] Cryptographie



Gu's
19/03/2005, 16h13
Voici un petit tuto sur la cryptographie:

Pour une raison ou pour une autre il peut être utile d'avoir certaines données cryptées. Nous allons voir comment créer un container crypté ou bien alors toute une partition. Un excellent algorithme à clé symétrique existe et est utilisable directement sous SuSE 9.2 ( peut être d'autre version aussi) il s'agit de l'AES (Advanced Encryption Standard). C'est le successeur du DES et du triple-DES, certains gouvernements cryptent leurs données sensibles avec... C'est un algorithme à clé symétrique donc très rapide pour le codage et le décodage des données.

Pour créer un container crypté voici une méthode simple:

1. Créer le fichier qui sera par la suite un container crypté:
> dd if=/dev/urandom of=/...chemin.../nom_du_container bs=1M count=1
if =input file avec comme source /dev/urandom pour remplir le fichier de données aléatoires.
of=output file avec comme destination le nouveau fichier (il le crée)
bs=blocksize c'est a dire la taille des bloc a écrire. (choisissez la taille voulu pour votre container ici 1 Mo)
count=1 signifie qu'on va écrire 1 seul bloc de 1 Mo

2. Chargez le module indispensable à l'utilisation du cryptage et du montage du container
> modprobe cryptoloop

3. Créez le container crypté avec l'algorithme AES et une clé de 256bits grâce a l'intermédaire du périphérique viruel: loop.
# losetup -e AES256 /dev/loop0 /...chemin.../nom_du_container
Il est possible de choisir d'autre longueur de clé ( > man losetup).
Prenez un périphérique loop non utilisé (vous pouvez aller jusqu'a loop15), losetup -a vous montre lesquels sont en cours d'utilisation ( vous pouvez le taper pour voir si le losetup à fonctionné)
Un mot de passe vous est demandé: ATTENTION il est fortement recommandé de mettre un mot de passe d'au moins 20 caractères, de plus il ne vous sera pas demandé de confirmation de mot de passe donc soyez vigilant.Vous ne pourrez bien évidemment pas le retrouver en cas de perte.

4. Ensuite vous devez créer un système de partiton dans votre container crypté:
# mkfs.ext2 /dev/loop0
le ext3 n'est pas nécessaire pour ca et pose parfois des problèmes lors des montages avec AES.

5.Détruisez l'accès par le périphérique loop:
# losetup -d /dev/loop0

6. Maintenant montez votre container dans un dossier de la manière suivante:
# mount -t ext2 -o loop=/dev/loop0,encryption=AES256 /...chemin.../nom_du_container /mnt/test
Le mot de passe vous est demandé et ca y est c'est fini. Mettez vos données dans ce dossier. Après démontez votre container de la manière suivante
# umount /mnt/test
Vous pouvez ainsi stocker ou transporter vos données en toute sécurité.
Pour créer une partion cryptée agir de la même manière en remplaçant la destination par /dev/nom_du_dique (hda1,hda2,hdb1.......) au lieu de /...chemin.../nom_du_container et ne pas mettre le count=1 à la phase 1. Le dd pourra durer plusieurs heures en fonction de la taille de la partiton (toutes les donées de la partion seront perdues)

siko
19/03/2005, 21h36
Petite précision à chaque lancement il faudra donner le mot de passe du container ou de la partition cryptée, assez vite casse pieds. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif

Et si c'est une partition très solicité il y a un ralentissement général due à la compression/décompression à la volée.

Pour finir en cas de crash il est très difficile voire impossible de récupérer ces données.

Donc à n'utiliser qu'en cas de véritable besoin.

PS: une bonne partie de ces manipulations peuvent se faire via Yast -> Systèem -> Partitionneur