OVH Cloud OVH Cloud

md5, comment ca fonctionne ?

89 réponses
Avatar
Eric CHAPUZOT
j'ai bien trouvé sur internet un machin pour coder le md5 mais par contre,
rien pour décoder ?
quel est l'intérêt supplémentaire d'avoir un truc qui ne marche que dans un
sens ?
comment faire pour une personne A pour envoyer un message md5 que seule une
personne B pourra décoder ?
comment ajouter un modérateur C entre A et B via md5?

9 réponses

5 6 7 8 9
Avatar
Eric CHAPUZOT
"Guillermito" a écrit dans le message de
news:yw1bre79mls5$
On 20 May 2004 12:44:39 GMT, Eric CHAPUZOT wrote:

md5 a des faiblesses mathématiques


Bon, on va faire bref, mais efficace: soit vous démontrez ces faiblesses
mathématiques devant le monde abasourdi, soit vous arrêtez de raconter
n'importe quoi.

grrrr... fo avouer qu'une fois de plus je me suis gourré dans les grandes

largeurs...
... normal qu'un problème qui a résisté 10 ans à des armadas de cryptologues
ne se résolve pas en deux ou trois cuillers à pot...
bon, je le mets sous le coude et je le garderais pour plus tard si j'ai
suffisamment de loisirs...


Avatar
Vincent Bernat
OoO En cette soirée bien amorcée du jeudi 20 mai 2004, vers 22:53,
Jacques L'helgoualc'h disait:

Arithmétiquement, c'est passablement compliqué, effectivement,
même si c'est assez court. On a tout de même trouvé une méthode
de construction de paires de fichiers de même md5...

http://www.esat.kuleuven.ac.be/~cosicart/pdf/AB-9300.pdf


Non, ce papier décrit une façon d'obtenir une collision sur la
fonction de compression, ce qui est une faiblesse en soi, mais il n'a
jamais été trouvé de collisions pour MD5 à ce jour, à ma connaissance.
--
I WILL NOT AIM FOR THE HEAD
I WILL NOT AIM FOR THE HEAD
I WILL NOT AIM FOR THE HEAD
-+- Bart Simpson on chalkboard in episode 8F13

Avatar
Emmanuel Florac
Le Thu, 20 May 2004 22:34:39 +0000, Eric CHAPUZOT a écrit :

il ne s'agit pas de casser la md5, il s'agit de remonter vers une source
possible de la md5...
n'importe quel bloc de transfert calqué sur 17 octets doit pouvoir le
faire
:
dans Y=aX+b, si tu fixes toi-même Y,a,b, tu finis bien par trouver
X=(Y-b)/a


Tu es sûr d'avoir saisi le point saillant, qui est que md5 (comme
crypt() et d'autres) n'est pas réversible, j'espère? Et ce n'est pas
parce que la multiplication est commutative que toutes les opérations le
sont...

--
Le travail est la malédiction des classes qui boivent.
O. Wilde.

Avatar
Eric CHAPUZOT
Tu es sûr d'avoir saisi le point saillant, qui est que md5 (comme
crypt() et d'autres) n'est pas réversible, j'espère? Et ce n'est pas
parce que la multiplication est commutative que toutes les opérations le
sont...

bah, j'ai déjà glissé sur la première peau de banane qui se trouvait sur le

chemin...
a=a+x+ac, ca veut dire que si l'on veut remonter d'un cran, fo tester $ffff
ffff possibilités
et comme ca de suite sur 64 étages, même s'il y a immensément de $00 dans le
bloc(45 sur 64 )
les opérations sont de vraie horreurs avec les bits qui tournent dans tous
les sens...
... donc, je préfère dire bye-bye aux 256 sur 4 milliards fichiers qui
risquent de donner la même empreinte pour 17 octets...
il en existe pas mal des problèmes comme ca pour se casser les dents, et
celui-ci ne me parait pas plus essentiel qu'un autre... en plus, chuis même
pas certain qu'il ne pourrait pas me causer de graves ennuis suivant que les
uns l'interprètent comme un cambriolage, un délit d'initié ou une atteinte
majeure à la sécurité...

Avatar
Stephane Catteau
Jacques L'helgoualc'h nous disait récement dans fr.comp.securite
<news: :

Stephane Catteau a dit :

<capilotractage à la EC dans l'espoir qu'il comprenne son propre
langage>
En *théorie* oui, parce qu'il y a une infinité de
chaînes/antécédents face à un nombre fini de hash MD5. Mais comme en
*pratique* l'on ne peut dépasser infini-1,


Qu'appelles-tu « infini-1 » ?


Dans la mesure où l'on en est à la *pratique*, cela implique que l'on
en est à calculer les hash MD5 des chaînes de X octets. On a déjà fait
les Y chaînes de 1 à X-1 octets. Même lorsque X sera très grand, proche
d'une certaine façon de l'infinie, il restera toujours au moins les
chaînes de X+1 octets.
Donc en *pratique* l'on ne peut jamais dépasser infini-1, puisqu'il y
aura toujours quelque chose de plus. Un peu comme pour le calcul de PI
si tu veux faire un parallèle avec quelque chose de plus concrêt. Mais
bon, j'avais prévenu, c'est énormément tiré par les cheveux (mais moins
que ce qui suit).


il est tout à fait possible de trouver un hash
MD5 qui n'a qu'un seul et unique antécédent.
</>


C'est possible que ça existe, oui, même en théorie. De là à le
démontrer...


C'est pourtant très simple à démontrer. Commence dès aujourd'hui le
calcul des hash MD5 de toutes les chaînes, de 1 à infini octets. Demain
matin tu auras démontré qu'en *pratique* il existe de nombreuses
chaînes qui n'ont qu'un seul antécédent. Dans une semaine tes
conclusions seront battues en brèche parce qu'il exite moins de cas que
tu le croyais. Dans un mois tu devrais arriver à une certaine stabilité
et pouvoir affirmer chaque jour pendant une à deux mois, preuves à
l'appui, qu'en *pratique* il y a Z hash MD5 qui n'ont qu'un seul et
unique antécédant.
C'est le côté amusant des travaux pratiques impliquant l'infini, tout
est vrai jusqu'à preuve du contraire puisque l'on repousse sans cesse
"la barrière de l'infini".


Bon, ceci étant dit, on tombe dans le HS total et les réponses à mon
message seront cenSSurées dans d'attroces soufrances :-p


--
"Les sens qui s'emballent soudain, comme répondants
À un signal muet et invisible ; un rien venu de nul part,
Une illusion qui n'existerait pas même en tant que telle.
[...]" 'Le brasier émotionnel' S.C 03/2003


Avatar
Stephane Catteau
Eric CHAPUZOT nous disait récement dans fr.comp.securite
<news:40ad2602$0$24311$ :

il ne s'agit pas de casser la md5, il s'agit de remonter vers une
source possible de la md5...
n'importe quel bloc de transfert calqué sur 17 octets doit pouvoir
le faire :


Tu auras beau le répéter constament, ça n'en deviendra pas vrai pour
autant. Guillermito t'a lancé un défi, reviens lorsque tu l'auras
gagné. Je ne sais pas de quelle puissance de calcul tu disposes, mais
un mois devrait être suffisant pour que tu calcules le hash MD5 des
chaînes de 1 à 17 octets. Cela devrait donc être suffisant pour te
permettre de trouver un hash MD5 correspondant au hash MD5 de
guillermito, et donc gagner ton pari.
Du moins si c'est aussi simple que tu le prétends...


--
"Les sens qui s'emballent soudain, comme répondants
À un signal muet et invisible ; un rien venu de nul part,
Une illusion qui n'existerait pas même en tant que telle.
[...]" 'Le brasier émotionnel' S.C 03/2003

Avatar
Cedric Blancher
Le Wed, 19 May 2004 21:08:44 +0000, Etienne de Tocqueville a écrit :
Si tu as le MD5 d'un programme, tu peux le falsifier à ta guise pour
obtenir ce que tu veux, puis choisir 17 octets dont la modification ne
changera pas le résultats (par exemple une chaine de caractère
quelconque correspondant à un message d'erreur de la libc), et en les
faisant varier, tu tombe rapidement sur le MD5 voulu.


Just do it (TM)

... C'est juste une question de temps ;-)


Oui, mais combien. Sûrement largement assez pour ne pas se permettre un
"rapidement".

--
Le vote de l'AAV, c'est la signature en bas d'un contrat de mariage.
On ne vote pas Oui pour se marier avec un boudin que d'autres vous ont
poussé dans les bras sous prétexte que c'est ca ou rien.
-+- FS in: Guide du Cabaliste Usenet - Les AAV -+-

Avatar
Etienne de Tocqueville
Cedric Blancher a écrit sur fr.comp.securite :

Just do it (TM)


Je n'en ai pas du tout l'intention !

... C'est juste une question de temps ;-)


Oui, mais combien. Sûrement largement assez pour ne pas se permettre un
"rapidement".


Le symbole ";-)" signifiait que ce qui précède était à prendre au 2nd
degrés.


Avatar
Cedric Blancher
Le Sun, 23 May 2004 20:54:12 +0000, Etienne de Tocqueville a écrit :
Just do it (TM)
Je n'en ai pas du tout l'intention !



Lavette ;))))

Le symbole ";-)" signifiait que ce qui précède était à prendre au 2nd
degrés.


Désolé, mais dans ce fil de discussion, on a vraiment du mal à déceler
le 2nd degré du 15e.

--
BOFH excuse #36:

dynamic software linking table corrupted


5 6 7 8 9