Funções de hash unidirecionais

Slides:



Advertisements
Apresentações semelhantes
Alex Coletta Rafael Curi
Advertisements

André Oliveira Castro Marcelo Siqueira Pereira Filho
Criptografia Assimétrica
Segurança em redes Assinaturas.
Cássio Luís Fernandes de Oliveira
Rodrigo Aldegheri Thais Rachel Thiago Felix Thomas Holland Engenharia de Computação - PUC-CAMPINAS 1.
Segurança em Redes - Código Seguro
Exercícios de Revisão Redes de Computadores Edgard Jamhour
Exercícios de Revisão Redes de Computadores Edgard Jamhour
Carolina Fonseca Neumar Ribeiro
Criptografia e Segurança em Redes Capítulo 15
Criptografia e Segurança em Redes Capítulo 13
Criptografia e segurança de redes Chapter 14
Criptografia e Segurança em Redes Capítulo 9 Quarta Edição William Stallings William Stallings Slides de Lawrie Brown Tradução: Bruno e Mario.
Criptografia e Segurança em redes capitulo 11.
Criptografia e segurança de Redes Capítulo 12
Criptografia e Segurança em redes capítulo 11
Criptográfia e segurança na rede Capitulo 12
Análise Léxica Supondo o trecho de programa abaixo:
Segurança de Sistemas e Redes
PERÍCIA EM INFORMÁTICA
Marco Antonio Montebello Júnior
Carimbo de Tempo ( timestamping )
Advanced Encryption Standard
Segurança em Comércio Eletrônico
Funções Criptográficas de Hash
Autenticação de Mensagens
Protocolos Intermediários Carimbo de Tempo ( timestamping ) Necessidade de provar a existência de um documento em determinada data. A T : M (documento)
Função Hash Integridade ?
Troca de Chaves Autenticação
Função Hash e Autenticação em Redes de Computadores
Pesquisa em memória primária: hashing
Hash HTTPS SSL Certificados.
Company LOGO Criptografia de dados em PHP.
Resposta penhora Online
Criptanálise de MD4 Mads Rasmussen
Resumos de Mensagem Código de Autenticação de Mensagem Assinaturas
Segurança em Sistemas Distribuídos Stanley Araujo de Sousa.
Documentos Digitais Aula 9.
Funções Hash.
7: Segurança de Redes1 Capítulo 7: Segurança de Redes Fundamentos: r o que é segurança? r criptografia r autenticação r integridade de mensagens r distribuição.
Segurança Ênfase em Comércio Eletrônico. Objetivo Apresentar os principais conceitos envolvendo criptografia,Assinatura digital e Certificação digital.
Assinaturas digitais.
Criptografia e segurança de Redes Capítulo 12 Fourth Edition by William Stallings Tradução feita por Raul Piccoli Madeira e Marcelo Carneiro.
LUCAS DE ANDRADE VINICIUS BERNARDINO DA SILVA
Segurança & Auditoria de Sistemas AULA 07 Eduardo Silvestri
Introdução a Criptologia (cont.)
Documentos Digitais Aula 8.
Importação e Exportação Bachup’s e cópia de segurança.
Exercício 3 Função de hash Assinatura digital
Sistemas Seguros Criptografia Simétrica e Assimétrica
Funções Hash.
Paulo Roberto Lopes de Souza Robson Cechini Santos
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
Protocolos Básicos Autenticação. Protocolos Básicos Esquemas de autenticação São métodos através dos quais alguém pode provar sua identidade, sem revelar.
PGP – Pretty Good Privacy Privacidade Bastante Boa
Protocolos Intermediários Serviços de Rótulos de Tempo Carimbo de Tempo ( timestamping ) (solução arbitrada) Necessidade de provar a existência de um documento.
Exercício 2 Função resumo (hash) Assinatura digital
Algoritmos de Chave Pública
Autenticação de Mensagens
Protocolos Criptográficos. Comunicação Alice Bob Características desejadas –Privacidade: Alice e Bob usam uma chave simétrica secreta comum (“chave de.
Segurança da Informação Prof. João Bosco M. Sobral 1 Armazenamento de Chaves Simétricas Criptografia baseada em Senha.
3. Criptografia Assimétrica
Criptografia Assimétrica e Autenticação de Mensagens
A Assinatura Digital.
Segurança de Redes de Computadores
Segurança de Redes de Computadores Prof. Paulo Fernando da Silva.
1 Assinatura Digital Msc. Adilson Eduardo Guelfi Msc. Frank Meylan Laboratório de Sistemas Integráveis Escola Politécnica da.
SISTEMAS OPERACIONAIS
Conceituação de Assinatura e Certificação Digital
Transcrição da apresentação:

Funções de hash unidirecionais Gera “resumo” do arquivo/mensagem Função não reversível Aplicações: Representante do arquivo para assinatura digital Armazenar senha Verificação de alterações (intencionais ou não) Exemplos: MD5, SHA

Funções de hash unidirecionais “Message Digest” A produz um hash unidirecional do documento A assina o hash com sua chave privada, assinando assim o documento A envia o documento e o hash assinado para B B calcula o hash do documento. A seguir, B restaura o hash assinado, usando a chave pública de A. Se o hash produzido e o hash restaurado forem iguais, então o documento e a assinatura são válidos

Funções de hash unidirecionais Armazenamento de senha A escolhe uma senha e informa a sistema Sistema calcula um hash unidirecional da senha Sistema armazena o hash A deseja se identificar e fornece nome e senha Sistema calcula o hash desta senha e compara com a hash armazenado. Se o hash produzido e o hash armazenado forem iguais, então o usuário é legítimo (conhece a senha)

Requisitos do hash A função de hash H(M) opera sobre uma mensagem de comprimento qualquer, M, e retorna um valor de hash de comprimento fixo, h: h = H(M) Dado M, deve ser rápido e fácil calcular h Dado h, é muito demorado e difícil calcular M Dado um M, deve ser muito difícil encontrar outra mensagem M' tal que H(M) = H(M') “Difícil” depende da segurança desejada, da ordem de 264 a 2128 operações

Ataques contra o hash Dado o hash de uma mensagem, h = H(M), o atacante procura criar outro documento M' que produza o mesmo valor de hash, ou seja, H(M) = h = H(M'). Se A assina o hash H(M), o atacante poderia apresentar M' e alegar que este foi o documento assinado por A Dado um M, deve ser muito difícil encontrar outra mensagem M' tal que H(M) = h = H(M')

Ataques contra o hash Deve ser difícil encontrar duas mensagens quaisquer, M e M', que produzam o mesmo valor de hash Este ataque é muito mais fácil que o primeiro, pois não necessita obedecer a um valor de hash já existente Ele é conhecido como ataque do aniversário: Quantas pessoas devem ser reunidas para que existam mais de 50% de chance de duas delas terem aniversário no mesmo dia ?

Ataques contra o hash Quantas pessoas devem ser reunidas até que exista uma probabilidade de 50% de uma delas fazer aniversário em uma data específica? A resposta é 183, ou seja, 0,5 = 183x(1/365) (Este corresponde ao primeiro ataque) Quantas pessoas devem ser reunidas para que exista mais de 50% de chance de duas delas terem aniversário no mesmo dia ? A resposta é baixa: 23, ou seja, 0,5 = prod(1-i/365), i=1…22. Podem existir poucas pessoas, mas existem 253 pares possíveis de pessoas (este corresponde ao segundo ataque)

Ataque do aniversário Com o ataque do aniversário, um atacante prepararia dois documentos, M e M'. Um destes documentos seria mostrado ao usuário A, que produziria um hash assinado. O atacante pode mais tarde mostrar M' e alegar que foi este o documento assinado Dado um M, deve ser muito difícil encontrar outra mensagem M' tal que H(M) = H(M') Note-se que o valor do hash (h) não é conhecido

MD5 Message Digest 5 – criado por Rivest em 1994 64 passos Mi = bloco de 32 bits 1 ≤ i ≤ 16 Ki = constante de 32 bits 1 ≤ i ≤ 64 Hash de 128 bits

MD5 Colisões criadas por Xiaoyun Wang, Dengguo Feng, Xuejia Lai and Hongbo Yu em 2004 Certificados digitais com chaves distintas e hash MD5 idêntico criados por Arjen Lenstra, Xiaoyun Wang, and Benne de Weger em 2005 Colisões geradas em computadores pessoais por Vlastimil Klima em 2005/2006

SHA Secure Hash Algoritm – criado pelo NIST (National Institute of Standards and Technology) em 1993 – SHA-0 Substituído pela NSA em 1994 – SHA-1 Substituído pelo NIST em 2001 – SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512)

SHA 80 passos Wt = bloco de 32 bits Wt = Mt 1 ≤ t ≤ 16 Wt = f(Mi) 17 ≤ t ≤ 80 Kt = constante de 32 bits 1 ≤ t ≤ 80 Hash de 160 bits

Função de hash com chave Cálculo de uma função de hash não envolve chaves Hash de um arquivo M pode ser calculado por qualquer um Para adicionar uma chave, basta acrescentá-la ao arquivo M (por concatenação, por exemplo) h = H (M) hs = H (K M) hs é denominado de MAC (Message Autentication Code) Somente quem conhece a chave K pode calcular hs Somente que conhece K pode verificar hs