Pour crypter un message avec une touche à pavé unique vous faites .
Si vous utilisez le même pour crypter un message différent vous obtenez , et si vous effectuez Xor des deux textes chiffrés, vous obtenez
donc, OK, il y a une fuite d'informations car vous apprenez , mais pourquoi n'est-il pas sécurisé? Je n'ai aucun moyen d'apprendre (par exemple) moins de connaître . Alors pourquoi est-ce mal d'utiliser deux fois ??
Réponses:
C'est exactement le problème - si vous réutilisez la même clé et que quelqu'un a accès à un message que vous avez chiffré à la fois en clair et sous forme chiffrée, il peut l'utiliser pour trouver votre clé:
Comme scénario alternatif, si vous utilisez la même clé encore et encore, les attaquants peuvent être capables de deviner seulement des morceaux de divers messages cryptés, et chaque supposition réussie révèle un morceau de la clé , de sorte qu'au fil du temps de plus en plus de la clé est révélée.k
Cette stratégie générale pour briser un cryptosystème est connue sous le nom d'attaque connue en texte brut . De nombreux systèmes, comme AES et RSA, sont censés être protégés contre ces attaques. Mais un pad à usage unique devient totalement insécurisant contre eux à moins qu'un nouveau pad ne soit utilisé pour chaque cryptage, c'est pourquoi ils sont appelés "pads à usage unique".
la source
Ce n'est pas sûr précisément pour la raison que vous mentionnez - il y a une fuite d'informations.
Fondamentalement, si vous avez des hypothèses sur les textes en clair (texte anglais, fichiers avec une structure connue, etc.), cela conduit à une analyse statistique facile. L'utiliser probablement deux fois ne modifie pas de manière significative le caractère pratique de l'attaque, mais l'utiliser plusieurs fois avec un texte en clair non aléatoire, révèle finalement suffisamment d'informations pour récupérer la clé.
Enfin, si vous avez la possibilité de ne l'utiliser que deux fois , vous avez également la possibilité de ne l'utiliser qu'une seule fois - la restriction est que ces tampons à usage unique ne doivent pas être utilisés potentiellement inconnus et au fil du temps, endommageant le nombre de fois.
À un extrême, si vous savez (texte brut connu) que le n'est qu'une chaîne nulle de la longueur du pad, vous avez remis la clé à l'attaquant avant de calculer le m 2 .m1 m2
Les attaques connues en texte brut sont assez courantes, il est relativement facile de forcer un mécanisme de chiffrement pour chiffrer quelque chose que vous connaissez a priori. Sinon, vous pouvez généralement faire des hypothèses statistiques raisonnables.
la source
Si vous souhaitez utiliser un bloc unique deux fois, vous devez d'abord compresser votre message. Et même dans ce cas, si vous n'utilisez pas un algorithme de compression presque parfait et que vous utilisez plusieurs fois le pavé unique, il restera suffisamment d'entropie pour récupérer théoriquement les messages. Je ne sais pas à quel point ce serait difficile dans la pratique.
la source
En fait, dans de nombreux cas, c'est très simple. Voici une visualisation simple.
la source
Voici une manière intuitive de représenter l'approche sans recourir aux mathématiques. Imaginons que vous ayez deux messages chiffrés qui ont été chiffrés par le même bloc de temps.
la source