Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 20-03-2012 01:42:37

joutye
Invité

Décrypter des textes en connaissant les xor entre eux

Bonjour,

Disons que j'ai 10 textes, t0..t9, et je connais pour tout i,j, le texte ti xor tj (xor caractère par caractère). Y'a-t-il un algorithme pour trouver tous les textes ti ?

A part du brute-force je vois pas trop...

Merci d'avance

#2 20-03-2012 09:53:09

Fred
Administrateur
Inscription : 26-09-2005
Messages : 7 348

Re : Décrypter des textes en connaissant les xor entre eux

Salut,

  Ca ne peut pas te permettre de récupérer toute l'information.
Si par exemple tous tes textes sont égaux à 000....000, alors les xor seront aussi 000...000
Si tous les textes sont égaux à 111...111, alors tous les xor seront aussi égaux à 000...000.

Fred.

Hors ligne

#3 20-03-2012 12:10:07

thadrien
Membre
Lieu : Grenoble
Inscription : 18-06-2009
Messages : 526
Site Web

Re : Décrypter des textes en connaissant les xor entre eux

Salut,

Je vais compléter la réponse de Fred :

Si tu fais un xor de tous les messages avec une même clef, alors tu ne changes pas les ti xor tj. Sans autre information, tu ne peux donc pas récupérer le contenu des messages.

Par contre, dans une situation réelle, les messages ne seront jamais quelconques. Si tu connais un bout d'un message, tu peux en déduire tous les bits de même position des autres messages. Par exemple, si un message commence par, disons "%PDF" (je n'invente rien, voir ici : http://www.opensource.apple.com/source/ … agic.mime), tu peux en déduire les 4 premiers caractères de tous les autres messages

Ensuite, si tu trouve des débuts de mots clefs dans les autres messages, tu peux en déduire la suite. Si par exemple, tu vois dans un fichier un "<HTM" , la suite aura de grandes chances d'être "L>" ce qui te donnera "<HTML>". La encore, je n'invente rien.

Dans le cas d'un texte "pur", tu peux souvent déduire la fin d'un mot du début. Ou, du moins, les possibilités sont assez limitées. C'est la technique du mot probable.

C'est d'ailleurs une des raisons pour lesquelles le célèbre programme PGP, puis ensuite tous ses imitateurs, compriment le fichier avant toute autre opération de chiffrement, afin d'éliminer ces redondances. Même si le chiffrement utilisé par PGP est bien plus robuste par ailleurs.

A noter que ce système de xor entre messages est utilisé par un client de P2P peu connu (tellement peu connu que je ne suis plus arrivé à retrouver son nom en cherchant sur Google), mais essentiellement dans un objectif de "camouflage", et surtout pour poser des problèmes juridiques aux ayants droits, que dans un objectif de chiffrement.

A noter également que ton information est redondante ! En effet, les ti xor t(i+1) suffisent pour reconstituer l'ensemble des ti xor tj de proche en proche car, pour tous i < j, ti xort tj = [ti xor t(i+1)] xor [t(i+1) xor t(i+2)] xor ... xor [t(j-1] xor tj].

A noter enfin que tu n'as pas besoin de reconstituer exactement les messages pour en tirer de l'information. Par exemple, le xor de deux images non comprimées est assez visuel. (Plus de détails ici : http://www.apprendre-en-ligne.net/crypt … ndex.html)

Enfin, dans toutes les étapes, il existe des astuces algorithmiques permettant d'accélérer le processus (tables arc en ciel, etc...).

En conclusion, si il n'est pas possible dans tous les cas de reconstituer les messages, on peut néanmoins en faire quelque chose, en particulier dans le cas qui t’intéresse d'un texte simple sans formatage.

Hors ligne

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
quatre-vingt quatorze moins soixante dix-sept
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums