>Comme tu as l'air de t'y connaitre seb, peux tu nous expliquer
> ce qu'est un masque jetable?
Ok :-)
C'est la *seule* technique de chiffrement qui est *totalement incassable*, quelle que soit la puissance de calcul dont tu possède.
Dit comme ça, ça a l'air génial, mais dans la pratique c'est quasi-inutilisable (et quasi-inutilisé).
Pour chiffrer un message de n octets, il faut:
- créer un bloc de n octets *réellement* aléatoire (appelé "masque").
- faire un XOR octet par octet du message avec le masque.
Pour déchiffrer, on fait le même XOR entre le message chiffré et le masque. On obtient le message en clair.
Ainsi, si tu ne connais pas le masque exact, le message suivant:
"rgBtytryyneRGBrzgbRgriojfSYci"
Peut très bien se décoder en:
"Est-ce que ta soeur va bien ?"
"La bombe explosera à 17 h 00."
"La bombe explosera à 19 h 00."
"La bombe explosera à 05 h 37."
Aucun moyen de savoir si tu ne connais pas le masque!
ça a l'air génial comme ça, mais il y a des problèmes:
- le masque est aussi gros que la clé. Pas cool. Par exemple pour chiffrer 600 Mo de données : il faut conserver un masque de 600 Mo.
- le masque ne doit jamais être ré-utilisé.
- Pour que le destinataire puisse décoder, il doit avoir le masque complet. Il faut donc lui envoyer par un canal sûr. Mais si tu as déjà un canal sûr pour lui envoyer le masque, pourquoi ne pas l'utiliser pour envoyer le message ?
- contrairement à ce qu'on pourrait croire, c'est très difficile de générer des octets réellement aléatoire. *AUCUN* ordinateur ou logiciel n'en est capable. Or si c'est pas réellement aléatoire, on peut le deviner, et donc décoder le message !
Dans la pratique, la technique du masque jetable n'est quasiment pas utilisée. Trop de contraintes.