Chiffrement et destruction de clés

Le
Julien Cornuwel
Bonjour à tous,

Je cherche à mettre en place un système de chiffrement qui
fonctionnerait de la sorte :

- Les différentes partitions du système, y compris le swap, sont
chiffrées (gràce à dm-crypt) en AES256. Les clés de chiffrement sont
stockées sur une clé USB.
- Je voudrais que les clés soient elles-même protégées par une passphrase.

Jusque là, tout est simple. Le hic, c'est que je voudrais que la saisie
de la passphrase correcte déchiffre les clés, mais qu'une autre
passphrase les détruise définitivement, avec shred par exemple.
En effet, écrire 200 fois des données aléatoires sur quelques clés de
256 bits peut se faire très rapidement

Mes recherches sur le net ne m'ont pas permis de trouver un logiciel qui
fasse cela, mais cela ne veut pas dire qu'il n'en existe pas. Je ne me
sens pas les compétences pour écrire un programme qui fasse cela sans
être aisément contournable :-/

Si cela n'existe pas, je suis ouvert à toute idée permettant de rendre
impossible (ou aussi difficile que l'attaque en force brute de la clé
elle-même) l'extraction des clés de chiffrement de la clé USB.


J'ai hésité à poster sur fr.comp.sécurité mais il me semble que ce
groupe est plus adapté

Merci à ceux qui ont lu ce post jusqu'au bout, et merci encore à ceux
qui répondront ;-)
  • Partager ce contenu :
Vos réponses Page 1 / 3
Trier par : date / pertinence
Oncle Dom
Le #525968
"Julien Cornuwel" le message de news: 443ab5e8$0$27965$
Je cherche à mettre en place un système de chiffrement qui
fonctionnerait de la sorte :

- Les différentes partitions du système, y compris le swap,
sont

chiffrées (gràce à dm-crypt) en AES256. Les clés de
chiffrement sont

stockées sur une clé USB.
- Je voudrais que les clés soient elles-même protégées par une
passphrase.


Jusque là, tout est simple. Le hic, c'est que je voudrais que
la saisie

de la passphrase correcte déchiffre les clés, mais qu'une
autre

passphrase les détruise définitivement, avec shred par
exemple.

Tu devrais te rappeler que le niveau maximum de sécurité, c'est
celui ou le propriètaire lui même n'a plus accès aux données
cryptées
Pense à ce qui se passera au moindre incident technique, voire
trou de mémoire
--
Oncle Dom
_________
http://perso.wanadoo.fr/oncle.dom/

Francois Grieu
Le #525967
Dans l'article Julien Cornuwel
Les clés de chiffrement sont stockées sur une clé USB
(..et..) protégées par une passphrase
je voudrais que la saisie de la passphrase correcte
déchiffre les clés, mais qu'une autre passphrase les
détruise définitivement


Quelque soient les précautions prises, un adversaire aura
au moins trois voies d'attaque:

- faire une copie de la clé USB avant d'essayer une passphrase,
et la restaurer pour réessayer; si l'effacement de la clé
efface aussi les données, l'adversaire copie les données
avant d'essayer. Ca peut marcher pour une passphrase connue
approximativement (frappe observée).

- désassembler et reproduire le mécanisme de vérification
de la passphrase dans un environnement logiciel à lui,
pour les essayer beaucoup plus rapdiement; ça peut marcher
pour une passphrase TRES faible (réduite à un mot de passe),
et si le mécanisme de vérification de la passphrase est
rapide (bizarrement, beaucoup le sont, alors qu'il est
si assez facile que l'essai d'une passphrase demande 200ms
de temps CPU).

- plus efficace: planter un "keylogger" pour récupérer
directement la passphrase; il y en a des logiciels,
et des matériels, par exemple
http://www.keykatcher.com/key_logging_products/32k_key_logger/32k_key_logging_info/index.html
Cela marche super bien si la passphrase est saisie au clavier
d'un PC auquel l'adversaire accède, et c'est comme cela que
font les adversaires pragmatiques (parfois les forces de l'ordre).
On peut supposer que certains pros du renseignement mettent
le keylogger dans le clavier si l'arrière du PC est accessible,
et/ou récupèrent l'info par radio pour ne pas avoir à s'exposer
deux fois (si le keylogger a été repéré, ce que l'on ne peut
exclure, sa récupération physique expose à une souricière).


Bref je ne vois pas vraiment ce qu'apporte l'effacement
de la clé USB, cela me semble une mauvaise idée car
inévitablement on se gourre un jour où l'autre dans sa
passphrase, et dans la vraie vie la disponibilité prime
la sécurité.


François Grieu

Philippe Martin
Le #525966
Je partirai plutôt sur une solution carte à puce: (un kit basiccard coûte
¤60: www.basiccard.com ==> simple à programmer).

Il faut ensuite installer pcsclite (http://pcsclite.alioth.debian.org/) et
le lecteur de carte approprié (les lecteurs Omnikey fonctionnent
parfaitement sous Linux et les drivers sont dispo sur leur site:
http://www.omnikey.com/ ).

Pour une solution gratuite, www.muscle.com offre un nombre important
d'outils.

Note que les cartes peuvent être founies en format SIM (ex: taille
téléphone) et qu'un lecteur du type 6121:
http://www.omnikey.com/index.php?id!) ne prend pas plus de place qu'un
disk flash usb.

Cordialement,

Philippe

------------
Philippe C. Martin
SnakeCard, LLC
www.snakecard.com




Julien Cornuwel wrote:

Bonjour à tous,

Je cherche à mettre en place un système de chiffrement qui
fonctionnerait de la sorte :

- Les différentes partitions du système, y compris le swap, sont
chiffrées (gràce à dm-crypt) en AES256. Les clés de chiffrement sont
stockées sur une clé USB.
- Je voudrais que les clés soient elles-même protégées par une passphrase.

Jusque là, tout est simple. Le hic, c'est que je voudrais que la saisie
de la passphrase correcte déchiffre les clés, mais qu'une autre
passphrase les détruise définitivement, avec shred par exemple.
En effet, écrire 200 fois des données aléatoires sur quelques clés de
256 bits peut se faire très rapidement...

Mes recherches sur le net ne m'ont pas permis de trouver un logiciel qui
fasse cela, mais cela ne veut pas dire qu'il n'en existe pas. Je ne me
sens pas les compétences pour écrire un programme qui fasse cela sans
être aisément contournable :-/

Si cela n'existe pas, je suis ouvert à toute idée permettant de rendre
impossible (ou aussi difficile que l'attaque en force brute de la clé
elle-même) l'extraction des clés de chiffrement de la clé USB.


J'ai hésité à poster sur fr.comp.sécurité mais il me semble que ce
groupe est plus adapté...

Merci à ceux qui ont lu ce post jusqu'au bout, et merci encore à ceux
qui répondront ;-)


Philippe Martin
Le #525483
Errata:

Pardon: le site muscle est http://www.linuxnet.com/ ... pas muscle.com :-)

Je suppose qu'une carte de 2K suffirait pour le code (gestion du PIN,
internal + external authenticate) et le stockage des clefs.

Pour une idée du prix du hard: http://www.smartcardsource.com/ : sans le
soft, un lecteur usb dongle + carte format SIM ~= USD 40.

Je ne connais pas les contraintes mais suppose qu'un service *nix doit être
dispo. car j'imagine mal un accès au swap sans être root.

Cordialement,

Philippe

------------
Philippe C. Martin
SnakeCard, LLC
www.snakecard.com





Philippe Martin wrote:

Je partirai plutôt sur une solution carte à puce: (un kit basiccard coûte
¤60: www.basiccard.com ==> simple à programmer).

Il faut ensuite installer pcsclite (http://pcsclite.alioth.debian.org/) et
le lecteur de carte approprié (les lecteurs Omnikey fonctionnent
parfaitement sous Linux et les drivers sont dispo sur leur site:
http://www.omnikey.com/ ).

Pour une solution gratuite, www.muscle.com offre un nombre important
d'outils.

Note que les cartes peuvent être founies en format SIM (ex: taille
téléphone) et qu'un lecteur du type 6121:
http://www.omnikey.com/index.php?id!) ne prend pas plus de place qu'un
disk flash usb.

Cordialement,

Philippe

------------
Philippe C. Martin
SnakeCard, LLC
www.snakecard.com




Julien Cornuwel wrote:

Bonjour à tous,

Je cherche à mettre en place un système de chiffrement qui
fonctionnerait de la sorte :

- Les différentes partitions du système, y compris le swap, sont
chiffrées (gràce à dm-crypt) en AES256. Les clés de chiffrement sont
stockées sur une clé USB.
- Je voudrais que les clés soient elles-même protégées par une
passphrase.

Jusque là, tout est simple. Le hic, c'est que je voudrais que la saisie
de la passphrase correcte déchiffre les clés, mais qu'une autre
passphrase les détruise définitivement, avec shred par exemple.
En effet, écrire 200 fois des données aléatoires sur quelques clés de
256 bits peut se faire très rapidement...

Mes recherches sur le net ne m'ont pas permis de trouver un logiciel qui
fasse cela, mais cela ne veut pas dire qu'il n'en existe pas. Je ne me
sens pas les compétences pour écrire un programme qui fasse cela sans
être aisément contournable :-/

Si cela n'existe pas, je suis ouvert à toute idée permettant de rendre
impossible (ou aussi difficile que l'attaque en force brute de la clé
elle-même) l'extraction des clés de chiffrement de la clé USB.


J'ai hésité à poster sur fr.comp.sécurité mais il me semble que ce
groupe est plus adapté...

Merci à ceux qui ont lu ce post jusqu'au bout, et merci encore à ceux
qui répondront ;-)




Julien Cornuwel
Le #525482
Tu devrais te rappeler que le niveau maximum de sécurité, c'est
celui ou le propriètaire lui même n'a plus accès aux données
cryptées
Pense à ce qui se passera au moindre incident technique, voire
trou de mémoire


Il y a des cas où il est préférable qu'une information soit
définitivement perdue plutôt que révélée.

Julien Cornuwel
Le #525481

Bref je ne vois pas vraiment ce qu'apporte l'effacement
de la clé USB, cela me semble une mauvaise idée car
inévitablement on se gourre un jour où l'autre dans sa
passphrase, et dans la vraie vie la disponibilité prime
la sécurité.


Mon idée n'était pas que toute erreur efface la clé mais qu'une
passphrase bien particulière le fasse. En résumé, il y aurait deux clés
: une qui déchiffre, une qui détruit.
Cela dit les arguments sur les méthodes d'attaques sont parfaitement
recevables et il est vrai qu'il serait facile de contourner un tel système.

En résumé, le principe de la passphrase me pose problème car elle est
trop facile à casser (à moins d'être TRES longue), et le principe des
clés sur support amovible me pose problème car il suffit de s'approprier
le support pour obtenir un accès complet...

Philippe Martin
Le #525480
Pour la même raison que l'on n'utilise plus de piste magnétique en France
pour les carte bancaire et que la migration EMV a été lancée dans la
plupart des autres pays .... autres examples: passeport, accès
physiques/logiques, santé .....

Principalement:

Sécurité:
Il est trivial de copier une clef USB, pas une carte à puce.

Risk management:
La carte ayant du soft intégré peut réagir aux attaques, à son environment,
à son état, à ses données.

Si la solution avait été sur Windows, j'aurais proposé U3
(http://www.everythingusb.com/u3.html) qui a les avantages suivant (pas
pour ¤7):

1) mot de passe
2) pas d'installation à faire sur le PC

Flexibilité:
d'autres applications peuvent facilement s'adapter à la carte une fois les
commandes principales (APDUs) sont implémentées.


De plus: le prix des cartes / lecteurs décroît rapidemment avec le volume.

Cordialement,

Philippe


---------------
Philippe C. Martin
ww.snakecard.com



Julien Cornuwel wrote:

Je partirai plutôt sur une solution carte à puce: (un kit basiccard coûte
¤60: www.basiccard.com ==> simple à programmer).


Je ne comprends pas ce qu'apporte une solution de carte à puce à 60¤,
sachant qu'on trouve des clés USB de 64Mo à 7¤.
J'entends par là que les clés USB peuvent servir au chiffrement de
plusieurs machines (on en met des clés de 256bits sur 64Mo)...



Julien Cornuwel
Le #525479
Je partirai plutôt sur une solution carte à puce: (un kit basiccard coûte
¤60: www.basiccard.com ==> simple à programmer).


Je ne comprends pas ce qu'apporte une solution de carte à puce à 60¤,
sachant qu'on trouve des clés USB de 64Mo à 7¤.
J'entends par là que les clés USB peuvent servir au chiffrement de
plusieurs machines (on en met des clés de 256bits sur 64Mo)...

Julien Cornuwel
Le #525478

Tu devrais te rappeler que le niveau maximum de sécurité, c'est
celui ou le propriètaire lui même n'a plus accès aux données
cryptées
Pense à ce qui se passera au moindre incident technique, voire
trou de mémoire



Il y a des cas où il est préférable qu'une information soit
définitivement perdue plutôt que révélée.


Je comptais m'affranchir de ce problème en créant plusieurs clés USB
contenant la même série de clés de chiffrement, mais cryptés chacune
avec son propre jeu de passphrases. En remettant ces clés à plusieurs
personnes différentes, il n'y a plus de risque de perte de données : au
pire un contretemps en attendant qu'une autre personne vienne entrer les
clés.

Cependant, la torture et la loi française permettent de forcer une
personne à révéler une clé de chiffrement. J'étais donc à la recherche
d'une technique permettant à la personne de révéler une fausse clé qui
détruirait définitivement les clés recherchées... Mais les arguments de
François Grieu m'ont fait comprendre que cette méthode est contournable
: je cherche donc une autre solution...


David JOURAND
Le #525477
Bonjour,

Je partirai plutôt sur une solution carte à puce: (un kit basiccard
coûte ¤60: www.basiccard.com ==> simple à programmer).


Je ne comprends pas ce qu'apporte une solution de carte à puce à
60¤, sachant qu'on trouve des clés USB de 64Mo à 7¤. J'entends par
là que les clés USB peuvent servir au chiffrement de plusieurs
machines (on en met des clés de 256bits sur 64Mo)...


Il s'agit de cartes à puce et de clés cryptographiques... Elles ne sont
pas faites pour stocker mais pour chiffrer et déchiffrer. L'avantage
certain est que la clé privée ne peut pas "sortir" et que si l'on saisi
3 fois de suite un mauvais code PIN, la carte est bloquée. On ne peut
alors la débloquer qu'avec un autre code beaucoup plus long et
généralement non noté...

Mais pourquoi diable vouloir un tel niveau de protection ? Tu travailles
pour les militaires ?

--
David Jourand


Poster une réponse
Anonyme