Bonjour,
Je voudrais générer une emprunte d'un gros string, dans le genre HASH, MD5, etc.. mon problème c'est que j'ai remarqué qu'en faisant un MD5 de long string, celui-ci avait souvent la même valeur probablement car mon long string commence souvent par la même valeur et que MD5 ne doit probablement prendre que les 32 (??) premiers caractères de mon string en compte.
Hélas sur la page http://php.net/manual/fr/function.md5.php il est précisé que l'ouput(return) était un string de 32 caractères mais rien n'indique une longeur max pour l'input. (args[0])
Y a-t'il une autre méthodes d'empruntes HASH, CRYPT, .... qui prendrait tout mon string en compte ? Ou une autre solutions ?
Plus de détails :
Le but étant de regarder rapidement si mon "gros string" est potentiellement déjà en base de donnée en ne comparant qu'une emprunte de celui-ci.
Je stock en base de donnée un "gros string de data" COMPRESS -> BLOB auquel j'associe qqes valeurs clés lié à son contenu.
Le problème étant qu'aucune valeur ne détermine l'unicité de mon "gros string" j'ai donc besoin de TOUT recomparer avant de l'insérer s'il n'existe pas encore, et comme je n'ai pas réussi à mettre mon champs "BLOB" en "unique" dans mysql, j'ai pensé mettre une emprunte de mon "gros string" en unique (associé à qqes valeurs clés pour éviter trop de collisions )
Merci d'avance pour votre aide.
Partager