Criptografia Numaboa
SHA-1 *
Qui 7 Set 2006 20:06 |
- Detalhes
- Categoria: Funções Hash
- Atualização: Domingo, 06 Dezembro 2009 22:22
- Autor: vovó Vicki
- Acessos: 20407
O cálculo do SHA-1
O digesto é calculado a partir da mensagem ajustada. Para realizar o cálculo são necessários dois buffers que possam armazenar temporariamente cinco words de 32 bits e uma sequência de oitenta words de 32 bits. Os words do primeiro buffer são identificados por A, B, C, D e E. Os words do segundo buffer são identificados por H0, H1, H2, H3 e H4. Os words da sequência de oitenta words são identificados por W0, W1, ..., W79.
Além dos buffers citados acima, usa-se também um buffer TEMP de um word. Os blocos da mensagem (no nosso exemplo temos apenas um), cada um deles com 16 words, são processados sequencialmente como mostrado a seguir:
Inicializando o buffer H
Os cinco words do buffer H recebem os seguintes valores iniciais (expressos em hexadecimal):
H0 = 67452301 H1 = EFCDAB89 H2 = 98BADCFE H3 = 10325476 H4 = C3D2E1F0
O loop de cálculo
Chamando os blocos de 512 bits/16 words da mensagem ajustada de M1, M2, ..., Mn, os seguintes cálculos são realizados:
1. Divide-se Mi em 16 words W0, W1, ... , W15, onde W0 é o word da esquerda. 2. Para t = 16 até 79 faça Wt = S1(Wt-3 XOR Wt-8 XOR Wt-14 XOR Wt-16) 3. Faça A = H0, B = H1, C = H2, D = H3, E = H4 4. Para t = 0 até 79 faça TEMP = S5(A) + ft(B,C,D) + E + Wt + Kt; E = D; D = C; C = S30(B); B = A; A = TEMP; 5. Faça H0 = H0 + A, H1 = H1 + B, H2 = H2 + C, H3 = H3 + D, H4 = H4 + E
Depois de processar todos os blocos, o digesto da mensagem será constituído pelos 160 bits representados pelos 5 words H0 H1 H2 H3 H4.
Calcule digestos online
Este pequeno aplicativo permite calcular digestos SHA-1 a partir da mensagem fornecida. Para funcionar é preciso que a JavaScript esteja habilitada no seu navegador.