Avec ce que tu as expliqué, "GOD" et "DOG" devrait être une collision.
Version imprimable
Avec ce que tu as expliqué, "GOD" et "DOG" devrait être une collision.
Eu non...
DOG = 4 + 15 + 7 = 26
GOD = 7 + 15 + 4 = 26
DOG = (4+1) / (15+2) / (7+3) = 0,029411764705882352941176470588235
GOD = (7+1) / (15+2) / (4+3) = 0,067226890756302521008403361344538
HASH :: [DOUBLE][SUM]
DOG = [2.941176e-02][26]
GOD = [6.722689e-02][26]
Le HASH est bien différent :)
Allez, un petit pour la route : "ON" = "XCB"
Allez, un autre parce que c'est toi, un autre : "YYA" = "YBX"
J'en ai un plein chargement comme cela :P
Non, sérieusement, je pense que ton algo ne tient pas la route. Utilise ce qui existe.
ON = 15 + 14 = 29
XCB = 24 + 3 + 2 = 29
ON = (15+1) / (14+2) = 1
XCB = (24+1) / (3+2) / (2+3) = 1
HASH :: [DOUBLE][SUM]
ON = [1.000000e+00][29]
XCB = [1.000000e+00][29]
Le HASH est bien identique ! Bravo... Maintenant je suis triste ;-)
Ok mon entêtement n'a pas payé... Je m'incline sauf que si j'ajoute un controle sur la longueur...
ON = [2][1.000000e+00][29]
XCB = [3][1.000000e+00][29]
A mon avis cette fois-ci il te faudra 20 min ;-) non sérieusement, je laisse définitivement tombé cette idée... Mais encore une fois merci ! :)
PS: ta posté avant moi donc... oublie ce que j'ai dis à propos de la longueur...
Tu as fait un algo pour trouver les collisions ou juste papier et crayon ? Si t'a fait un algo, je le veux bien juste pour voir cela m'intéresse
Allez A+
Papier + crayon pour chercher les formules de collision
programme sur ordinateur pour chercher les solutions de ces formules
Cf un thread que j'ai lancé sur le forum Maths à ce sujet :
http://www.developpez.net/forums/sho...d.php?t=528152
Les hash cryptographiques sont par définition extrêmement résistants aux collisions (il faut brute-forcer pour en trouver).
Donc tu pourrais en utiliser un, mais c'est peut-être un peu overkill.
Et ça ne garantira pas non plus qu'il n'y aura pas une collision qui viendra par hasard.
Par contre, comme l'ensemble des mots est connu à l'avance, il est possible d'utiliser un générateur de hash parfait du moment que l'ensemble des valeurs de hachage possibles est au moins aussi grand que l'ensemble des mots à hacher...
C'est à peu près aussi probable que la Terre soit anéantie demain par un astéroïde.Citation:
Et ça ne garantira pas non plus qu'il n'y aura pas une collision qui viendra par hasard.
Ram_0000,
Effectivement j'y vois comme un air de ressemblance ;)
C'est ce que tu as utilisé pour "cracker" mon Hash ?
Aie et bien cela confirme encore plus ce que tu me disais...
Bien que je sois certains ou presque que la chance que ces combinaisons soient des mots de la langue existant est très faible.
Je suis très content de l'approche "fine" et mathématique du problème !
Merci encore pour l'énergie dépensée
PS: L'algorythme ne tient pas compte du sens des combinaisons de caractère mais il peut être utile pour limité l'exploration des collisions => comparaison entre un dictionnaire et une liste contenant toutes les collisions possibles cela réduit de beaucoup la recherche.