IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

HASH sans collision ?


Sujet :

C++

  1. #21
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Avec ce que tu as expliqué, "GOD" et "DOG" devrait être une collision.

  2. #22
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet Voir le message
    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

  3. #23
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Allez, un petit pour la route : "ON" = "XCB"
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  4. #24
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Allez, un autre parce que c'est toi, un autre : "YYA" = "YBX"

    J'en ai un plein chargement comme cela

    Non, sérieusement, je pense que ton algo ne tient pas la route. Utilise ce qui existe.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  5. #25
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Par défaut Prudence sur la route, risque de collision ;-)
    Citation Envoyé par ram_0000 Voir le message
    Allez, un petit pour la route : "ON" = "XCB"
    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...

  6. #26
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Par défaut
    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+

  7. #27
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Papier + crayon pour chercher les formules de collision

    programme sur ordinateur pour chercher les solutions de ces formules
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  8. #28
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Cf un thread que j'ai lancé sur le forum Maths à ce sujet :

    http://www.developpez.net/forums/sho...d.php?t=528152
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  9. #29
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    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.

  10. #30
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    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...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #31
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Et ça ne garantira pas non plus qu'il n'y aura pas une collision qui viendra par hasard.
    C'est à peu près aussi probable que la Terre soit anéantie demain par un astéroïde.

  12. #32
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Par défaut CQFD
    Ram_0000,

    Citation Envoyé par ram_0000 Voir le message
    Cf un thread que j'ai lancé sur le forum Maths à ce sujet :

    http://www.developpez.net/forums/sho...d.php?t=528152
    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.

Discussions similaires

  1. Génération de ronds aléatoires sans collision
    Par Twice22 dans le forum Probabilités
    Réponses: 5
    Dernier message: 17/02/2013, 18h08
  2. Perl script aléatoire d'un hash: tirage sans remise
    Par Sethenssen dans le forum Langage
    Réponses: 11
    Dernier message: 04/08/2011, 10h18
  3. Hachage sans collision sur un ensemble limité et constant de chaîne de caractères.
    Par Benoit_T dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 22/02/2010, 17h27
  4. Réponses: 0
    Dernier message: 01/12/2009, 15h17
  5. Copie de hash de ref de array sans les ref
    Par Zwiter dans le forum Langage
    Réponses: 4
    Dernier message: 23/06/2009, 14h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo