2010-08-22 16 views
0

Je travaille sur l'algorithme d'inversion CRC64 sur C# mais incapable de le coder. Si quelqu'un peut m'aider, ce sera gentil de sa part. Je suis désespéré pour compléter le codage.Quelqu'un peut-il m'aider à coder Reverse algo fonction pour CRC64 en C#?

+0

Vous voulez probablement [Stack Overflow] (http://stackoverflow.com/). Cependant ne pas re-poster ceci là-bas, la question sera migrée pour vous. – jscott

+0

Pourquoi précisément voulez-vous faire cela? –

Répondre

4

Ce n'est pas possible. CRC est un hash function. Les fonctions de hachage ne peuvent pas être être inversées. Le mieux que vous pouvez faire est d'essayer de trouver des collisions pour un hachage donné, mais ils sont conçu pour être difficile à trouver de telles collisions ..

0

Vous ne serez certainement pas en mesure de l'inverser, puisque vous perdez des données critiques faire le calcul "en avant" qui serait nécessaire au calcul "en arrière". Vous pouvez essayer de le forcer si vous avez une idée de ce que l'entrée a pu être, mais comme un CRC est faible, il peut y avoir beaucoup de collisions (ce qui signifie que vous pourriez trouver beaucoup d'entrées qui auraient pu générer votre résultat) Dans ce cas, vous n'avez aucun moyen de savoir lequel est correct.