Você está na página 1de 14

Universidade Federal Rural do Semi-Árido

Auditoria e Segurança de
Sistemas de Informação

Funções de Hash Criptográficas


Professor: Samuel Oliveira de Azevedo
samuel.azevedo@ufersa.edu.br
Definições
• Função Hash – seu principal objetivo é a
integridade dos dados. Uma função hash
recebe um arquivo qualquer, e produz um
código ou valor de tamanho fixo
independente da entrada. Entradas iguais
produzem o mesmo valor hash. Entradas
diferentes aparentam ter seus valores hash
correspondentes aleatórios.
Definições

Função Hash

h=H(M)

H - função hash.
M - Mensagem, de tamanho variável.
h - valor hash, de tamanho fixo.
Aplicações
• Organizar e indexar coleção de dados;
• Recuperar dados de forma mais eficiente
através da busca pelo seu valor hash;
• Segurança da informação
• Verificação de integridade;
• Armazenamento e verificação indireta de
senhas;
• Outras.
Exemplo

• Acesse o site abaixo e teste alguns


algoritmos hash:

https://www.topster.pt/texto/hash_wert.html
Função de Hash
Criptográfica

• Usada para aplicações de segurança da


informação.
• Algoritmo computacionalmente inviável de
atacar (só pode ser atacado pela força
bruta – tentativa e erro).
Aplicações de Funções de
Hash Criptográficas
Autenticação de Mensagem
Aplicações de Funções de
Hash Criptográficas
• Proteção contra ataque de mensagem
forjada
• Somente Alice pode gerar o código hash
correto de mensagens enviadas por ela.
Aplicações de Funções de
Hash Criptográficas
• Assinaturas Digitais
• O valor de hash da mensagem é
encriptado com a chave privada do
usuário.
• Quem tiver sua chave pública pode
verificar a integridade e autenticidade da
mensagem.
Aplicações de Funções de
Hash Criptográficas
• Outras
• Arquivo de senha de mão única (só
armazena o hash das senhas);
• Detecção de intrusão (através do
monitoramento do hash de arquivos que são
prováveis alvos de ataques);
• Detecção de vírus através do hash de sua
assinatura ou da alteração de arquivos;
• Função pseudoaleatória e geração de
chaves simétricas.
Funções de Hash Baseadas
em Cipher Block Chaining

• Consistem em dividir uma mensagem M


em blocos de tamanho fixo M1, …, Mn e
usar um sistema de encriptação simétrica
para calcular o código hash.
Principais Algoritmos HASH

• MD5 (Message-Digest algorithm 5)


• Uso principal em integridade de grandes
arquivos.
• Mais propenso a colisões.
• SHA (Secure Hash Algorithm)
• Mais seguro e mais usado.
Exercícios
1) Pesquise e responda de que maneiras um
código hash pode ser usado para fornecer de
forma efetiva e segura a autenticação de
mensagem?
2) Descreva quais são os requisitos de
segurança para funções de hash
criptográficas.
3) Explique como funcionam os ataques de
força bruta a um algoritmo hash.
Exercícios

4) Explique como funciona a criptoanálise de


um algoritmo hash.
5) Descreva resumidamente como funciona o
Secure Hash Algoritm (SHA).

Você também pode gostar