6 Caractère Court Algorithme De Hachage

Mon objectif est de générer un court de Hachage chaîne de 6 caractères (contenant éventuellement des caractères [A-Z][a-z][0-9]) pour une chaîne qui est 42 de la casse des caractères alphanumériques de longueur. L'unicité est l'exigence clé. De sécurité ou de performance n'est pas si important.

Est-il un algorithme spécifique qui permettra de donner à ce résultat ou dois-je en tenir à la troncature d'un Hachage MD5 ou SHA-1 Hash (Comme dans cette question)? Si oui, quelle est la probabilité de collision?

string.GetHash()?
J'ai essayé cette, chaîne sourceString = "SomeTestStringWhichIs42Charactersinlength!"; Console.WriteLine(sourceString.GetHashCode().ToString("X6")); Elle renvoie à 8 Caractères.
Comment pouvez-vous générer un unique de 6 caractères de hachage pour un 42 caractères chaîne de caractères?
Avec vos limites, vous pouvez (au mieux) de hachage 62^6 numéros sans collision. Bien qu'après le malaxage de la moitié de celle de nombreux, vous aurez 50% de chance de collision (au mieux). Dépend des données de hachage et l'algorithme de hachage. Certains algorithmes faire mieux avec différents ensembles de données

OriginalL'auteur Isuru | 2013-08-27