Logo Hardware.com.br
Flavio_vivinho
Flavio_vivin... Geek Registrado
2.5K Mensagens 173 Curtidas

PHP: Número de bits de um hash para criptografia.

#1 Por Flavio_vivin... 02/01/2015 - 11:22
Olá, pessoal!

Recentemente estou pesquisando e trabalhando em códigos para criptografia...
Bom, estudando um código que peguei na net para criptografia aes em php OO, conflitou-me alguns argumentos ao analisar o código em relação a quantidade de bits para a chave simétrica para encriptação de banco de dados.

Bom a dúvida é: o código em questão, usa uma chave final (resultados dos cálculos finalizando com o hash) em MD5. No código, a chave gerado por md5 com 32 caracteres é definida como uma chave de 256 bits sendo que o hash MD5 é uma hash de 128 bits (até onde entendi nas minhas pesquisas). Enfim, por lógica uma palavra de 32 caracteres certamente terá 256 bits (8 bits x 32 = 256 bits). Isto é o que está me confundindo, nas pesquisas que fiz diz que o hash MD5 é um hash de 128 bits, SHA1 um hash de 190 bits e SHA2 de 256 bits.

Neste ponto, a quantidade de bits de uma chave (resultado de um hash) é obtida pela soma de bits de cada caractere (8 x 1; 8 x 2, etc.) ou "hash base" com o qual a string foi codificada?

Não sei se consegui ser bem claro, mas creio que minha maior dúvida se resume em: o resultado, em bits, codificado por um algoritmo de hash é definido pelo hash utilizado ou pela quantidade de caracteres resultantes?

Por que se diz que o hash MD5 é um hash de 128 bits e o SHA1 de 190 bits?

Desde já agradeço a atenção e ajuda de todos.
Até+
Flavio_vivinho
Flavio_vivin... Geek Registrado
2.5K Mensagens 173 Curtidas
#5 Por Flavio_vivin...
02/01/2015 - 18:30
intruso disse:
ce ta querendo usar criptografia pra q?


Já estou usando (ainda em fase de teste) o algoritmo AES para criptografar o bando de dados por meio do php. O que estou na dúvida acima, é em relação a "cifragem" da chave gerada.

Em resumo: Queria saber por que o MD5 é definido por um hash de 128 bits, se a soma dos bits do resultado de um texto codificado por meio do MD5 encontra-se 256 bits.

Entre-Trópicos disse:
Não tenho conhecimentos em PHP mas estava vendo esse vídeo abaixo, onde os caras dizem que esse MD5 SHA1 é uma furada, MD5 então nem se fala, faz uns 10 anos que não se usa se quer fazer algo sério.

a conversa começou mais ou menos em 1:23min:


Uso MD5 e SHA1 para codificação simples, tal como campo de senha e para representar um texto ou algo afim.
"Vinde a Mim, todos os que estais cansados e oprimidos, e Eu vos aliviarei" - Mateus 11,28.
www.flaviosistemas.com.br
Desenvolvendo projetos, facilitando sua vida.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal