A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Criptografia Numaboa

SHA-1 *

Qui

7

Set

2006


20:06

(22 votos, média 4.64 de 5) 


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.

CÁLCULO DE DIGESTOS SHA-1
Mensagem:
Hash:
Observação: O hash SHA-1 de ‘abc’ deve ser
a9993e364706816aba3e25717850c26c9cd0d89d

Informações adicionais