Ao aplicar a função criptográfica hash SHA-256 sobre determ...

Próximas questões
Com base no mesmo assunto
Q4232614 Segurança da Informação
 Ao aplicar a função criptográfica hash SHA-256 sobre determinado arquivo de tamanho 16MB, qual é o comprimento que o código hash gerado terá em representação hexadecimal (base 16)?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: O critério decisivo era a conversão do digest do SHA-256, de 256 bits, para hexadecimal, em que cada caractere representa 4 bits; por isso, o comprimento é de 64 caracteres.

Tema central: Saída do SHA-256
Análise das alternativas
A
Errada
Está errada porque 16 caracteres hexadecimais representam 64 bits, já que cada caractere hexadecimal vale 4 bits. Isso fica abaixo dos 256 bits produzidos pelo SHA-256.
B
Errada
Está errada porque 32 caracteres hexadecimais correspondem a 128 bits. O SHA-256 gera 256 bits, portanto essa quantidade não atende ao comprimento da saída.
C
Certa
A alternativa C está certa porque o SHA-256 produz um digest de 256 bits, e a conversão para hexadecimal segue a regra operacional de 4 bits por caractere. Aplicando esse critério, 256/4 = 64, então a representação hexadecimal do hash tem 64 caracteres.
D
Errada
Está errada porque 128 caracteres hexadecimais equivalem a 512 bits. Isso excede a saída do SHA-256, que é de 256 bits.
E
Errada
Está errada porque confunde o nome do algoritmo, que indica saída de 256 bits, com quantidade de caracteres em hexadecimal. Se fossem 256 caracteres hexadecimais, isso corresponderia a 1024 bits, não a 256 bits.
Pegadinha da questão
A confusão real era trocar 256 bits por 256 caracteres hexadecimais e, além disso, deixar-se influenciar pelo tamanho do arquivo, embora o SHA-256 tenha saída fixa.
Dica para questões semelhantes
  • Quando a questão pedir a saída de um hash em hexadecimal, converta bits para caracteres usando a regra: 1 caractere hexadecimal = 4 bits.
  • No SHA-256, o tamanho da saída é sempre 256 bits; o tamanho do arquivo de entrada não muda o comprimento do digest.
  • Distingua sempre tamanho da saída em bits do algoritmo e comprimento da representação dessa saída em base 16.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Bits / 4 = número de caracteres hexadecimais

Então:

SHA-256 → 256 ÷ 4 = 64.

O tamanho do aqruivo 16mb nesse caso, pouco importa.

  • MD5 → 128 bits → 32 hexadecimais

  • SHA-1 → 160 bits → 40 hexadecimais

  • SHA-256 → 256 bits → 64 hexadecimais

  • SHA-512 → 512 bits → 128 hexadecimais

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo