>> Tecnologia eletrônica >  >> Lar inteligente >> Vida Inteligente

Qual ​​é a diferença entre criptografia SHA e SHA-1?


SHA é um acrônimo para Secure Hash Algorithm, um padrão de criptografia inventado pela Agência de Segurança Nacional e publicado pelos Institutos Nacionais de Padrões e Tecnologia. Descobriu-se que o algoritmo SHA original tinha pontos fracos em seus métodos de criptografia e foi substituído por SHA-1 para maior segurança.

Algoritmo de hash seguro


SHA é uma função de hash criptográfica. Uma função hash recebe um texto inicial não criptografado, chamado de texto simples, e produz um número teoricamente único que constitui a mensagem criptografada. O SHA cria um número de 160 bits, que é um número entre 0 e 1,46 x 10^48. Não é possível garantir que esse número seja exclusivo para todas as mensagens de texto simples possíveis, pois o número de tais mensagens é teoricamente infinito, mas as chances são de aproximadamente 2^80, ou 1,21 x 10^24, contra duas mensagens que produzem a mesma criptografia resultado. Se isso ocorrer, isso é chamado de colisão. Uma colisão fornece um ataque matemático a um algoritmo de criptografia, possibilitando que um criptógrafo descriptografe o texto simples.

SHA-0 e SHA-1


Após sua publicação, foram descobertas falhas no algoritmo SHA original que permitiram que um ataque criptográfico produzisse colisões de hash, enfraquecendo severamente sua eficácia. Uma versão revisada do SHA, SHA-1, foi desenvolvida para criar os mesmos resultados de 160 bits sem as falhas originais no algoritmo. O SHA original foi renomeado retroativamente como SHA-0 para distinguir entre seu uso e o uso de SHA-1.

Alterações no SHA-1


As falhas originais no SHA-0 nunca foram publicadas, pois essas falhas fornecem um kit de ferramentas para qualquer invasor que tente descriptografar uma mensagem usando a criptografia SHA-0. A única informação pública sobre as fraquezas do algoritmo original indica que as colisões de hash são mais prováveis ​​do que por acaso ao usar SHA-0, e que as colisões usando o método não publicado são eliminadas ao usar SHA-1. Como o SHA-1 e o SHA-0 produzem resultados matemáticos do mesmo tamanho, o SHA-1 pode ser usado como um substituto imediato no software de computador para o algoritmo SHA-0 original sem exigir grandes reescritas no restante do software.

SHA-2 e SHA-3


O SHA-1 foi considerado mais robusto que o SHA-0, mas deixa espaço para melhorias. Uma análise matemática dos resultados do SHA-1 demonstrou um método pelo qual a criptografia SHA-1 poderia ser quebrada 2.000 vezes mais rápido do que seria teoricamente possível, verificando todas as 10^48 combinações possíveis de sua saída. Como um algoritmo criptográfico ideal evita melhorias de velocidade de descriptografia desse tipo, o algoritmo SHA-2 evita esse ataque e aumenta o tamanho de hash possível para 512 bits, ou 1,34 x 10^154. SHA-3, um algoritmo de criptografia ainda mais poderoso, está atualmente em desenvolvimento.