2010-08-13 3 views

Répondre

1

Cela dépend du hachage que vous voulez faire. Vous pouvez facilement faire un hachage très simple à la main - par exemple, un trivial consiste à prendre les valeurs ASCII de la chaîne, et à les ajouter ensemble, en faisant généralement quelque chose comme une rotation à gauche entre les caractères. Donc, pour hacher la chaîne "Hash", nous commençons avec les valeurs ASCII des lettres (en hexadécimal): 48 61 73 68. Nous allons ajouter les ensemble, tourner à gauche notre résultat 4 bits (en un mot de 16 bits) entre les lettres:

0048 + 0061 = 00A9
00A9 < < < 4 = 0A90
0A90 + 0073 = 0B03
B03 < < < 4 = B030
B030 + 68 = B098

Résultat: B098

Faire un hachage cryptographique à la main serait histoire plutôt différente. C'est certainement encore possible, mais serait extrêmement fastidieux, pour le moins. Un hachage cryptographique est généralement un peu plus complexe, et (plus important encore) a presque toujours beaucoup de "tours", ce qui signifie que vous répétez fondamentalement un ensemble d'étapes un certain nombre de fois pour obtenir de l'entrée à la sortie. Parlant d'expérience, le fait de passer SHA-1 dans un débogueur pour être sûr que vous l'avez implémenté correctement est une douleur - le faire à la main serait assez horrible (mais comme je l'ai dit, certainement possible de toute façon).

1

Vous pouvez commencer par regarder

Hash function

+0

+1 pour compenser le downvote inexpliqué. J'ai regardé la page que vous avez liée, et elle ** fournit ** quelques bons exemples de fonctions de hachage qui pourraient facilement être calculées à la main (dans la section * Hash function algorithms *). – David

Questions connexes