• Nenhum resultado encontrado

Prof. M.Sc. Charles Christian Miers

N/A
N/A
Protected

Academic year: 2021

Share "Prof. M.Sc. Charles Christian Miers"

Copied!
26
0
0

Texto

(1)

TES16/TOCC20 - Introdução à Segurança da Informação

Módulo 06: Autenticidade e Resumos

Prof. M.Sc. Charles Christian Miers

(2)

Problema

Comunicações em Redes de Computadores em geral e

principalmente em redes abertas como a Internet trouxeram

algumas questões à tona:

 Necessidade de privacidade, autenticidade e integridade de

mensagens

 Criptografia de chave pública não oferece agilidade em

Assinaturas Digitais

 Criptografia é insuficiente para garantir integridade de dados  Surgiu a necessidade de se criar mecanismos conhecidos

(3)

Autenticação e Hashing

A necessidade de autenticação

Funções para provimento de autenticação:

Ciframento

Códigos de autenticação (MACs e MDCs)

Assinaturas digitais.

(4)

A necessidade de autenticação

Autenticação (da origem e do conteúdo) de

mensagens é um conjunto de técnicas fundamentais

para proteção contra:

personificação da autoria de uma mensagem

modificação acidental ou não de uma mensagem

modificação na ordem de uma seqüência de

mensagens

atraso ou re-envio de mensagens

(5)

Técnicas para autenticação

São quatro as técnicas criptográficas empregadas

em autenticação:

Ciframento

MACs (Message Authentication Codes)

MDCs (Manipulation Detection Codes)

Assinaturas Digitais

Assinaturas digitais são as únicas que provêem

proteção contra repúdio de autoria

(6)

F

un

çõ

es

H

as

h

Com chave

Sem chave

pública secreta MAC UOWHF MDC OWHF CRHF

Modification Detection Code Message Authentication Code

Classificação das Funções

(7)

Autenticação com MACs

Um MAC (Message Authentication Code) de uma

mensagem M é o resultado do cálculo de uma

função de mão única Ck (M), onde M é a mensagem

em questão e k é uma informação secreta, conhecida

somente pelas duas partes em comunicação

Uma parte envia M e seu MAC

A outra parte recalcula o MAC e aceita M se o valor

(8)

Autenticação com MACs

Exceto pelo fato de que a mensagem passa em

claro, a técnica de MACs é parecida com a de

ciframento simétrico, para esse fim

De fato, é possível usar uma função de ciframento no

papel de Ck( )

Na prática, usa-se uma função de Hash com

propriedades criptográficas

A forma de combinar M e k segue a RFC 2104 e a

(9)

Autenticação com MDCs

Um MDC (Manipulation Detection Code) de uma

mensagem M é o resultado do cálculo de uma

função de mão única C (M), onde M é a mensagem

em questão

Uma parte envia M e seu MDC

A outra parte recalcula o MDC e aceita M se o valor

obtido é igual ao MDC recebido

Além de ser de mão única, a função C( ) deve ser

resistente a colisões

Esses dois são atributos de funções de Hash, ou

(10)

Autenticação com MDCs

A técnica vista na transparência anterior não provê

autenticação mútua, já que qualquer terceira parte

pode produzir o MDC de uma mensagem

(11)

Funções de resumo (Hash) criptográfico

Têm propriedades interessantes do ponto de vista

criptográfico:

Podem ser aplicadas a mensagens de qualquer

tamanho

A saída é uma cadeia de tamanho fixo

h(M) é fácil de calcular e muito difícil de inverter

Tem resistência a colisões, forte e fraca

(12)

Funções de resumo criptográfico populares

Três funções de maior popularidade:

MD5 (RFC 1321): desenvolvida por Ron Rivest (do

RSA)

Produz uma saída de tamanho fixo, de 128 bits, a partir

de entradas de tamanho arbitrário

Em declínio

SHA-1 (FIPS PUB 180-1): desenvolvida pelo NIST

Produz saídas de 160 bits a partir de entradas de

tamanho arbitrário

Em uso crescente

RIPEMD-160: projeto europeu, saída de 160 bits,

(13)

Uma

Fun

Fun

çã

çã

o Hash

o Hash

uma fun

é

çã

o h : {0,1}*

 {0,1}

n

,

para algum n  1

Valor Hash ou resumo da mensagem

Função Hash

Origem:

 Surgiu na Ciência da Computação

Função que comprime uma string de tamanho arbitrário em uma

de tamanho fixo

 Também chamada de Função de Espalhamento 

Definição:

(14)

Requisitos para o uso em Criptografia:

(1) Fácil de calcular o valor Hash;

(2)

Resistência à 1ª inversão, ou seja, é computacionalmente

Resistência à 1ª inversão

inviável, dado y, encontrar x tal que h(x) = y;

(3)

Resistência à 2ª inversão, ou seja, é computacionalmente

Resistência à 2ª inversão

inviável, dado x

1

, encontrar x

2

 x

1

tal que h(x

1

) = h(x

2

);

(4)

Resistência a colisões, ou seja, é computacionalmente

Resistência a colisões

inviável, encontrar quaisquer x

1

e x

2

tais que h(x

1

) = h(x

2

).

Note que:

(2)

 (3) e (3)  (2)

/ /

(2)

 (4) e (4)  (2)

/ /

• (3)  (4), mas (4)  (3)

/

(15)

Aplicações em Assinaturas Digitais

Aplicações em Assinaturas Digitais

Somente o

valor Hash

é assinado

(16)

Outras Aplicações

Outras Aplicações

Integridade de dados:

Valor hash computado previamente, usando MDC

• Para verificar alteração: recomputar e comparar o valor Hash atual com o anterior

• Útil para distribuição de software e proteção

de vírus

Digital Timestamping:

Data e hora de criação/assinatura do documento entram no cálculo do valor Hash

• Útil para proteção de propriedade intelectual

Proteção de senhas:

• O valor Hash é armazenado, ao invés da senha

Autenticação de mensagens:

O valor Hash é usado como autenticador

(17)

Construção genérica

Construção genérica

• Entrada é dividida em blocos de tamanhos iguais

• Em seguida, é feita uma anexação ao final da entrada

• O cálculo do valor Hash h(X) é feito da seguinte maneira:

H

0

= IV,

H

i+1

= f(H

i

,X

i

) para 0

i < t,

h(X) = g(H

t

).

(18)

Ataques mais importantes

Ataques mais importantes

• Ataques que dependem somente do tamanho da saída (n bits)

Ataque de inversão

Ataque do aniversário

Encontrar uma inversão Probabilidade: 1/2n

Tempo máximo: 2n operações

- Num grupo de k pessoas, qual o valor mínimo de k para que a probabilidade de que pelos menos duas façam aniversário no mesmo dia seja maior do que 50%?

1 – 365x364x...x(365 –k +1)/365k > ½  k = 23 k = 23

- Considerando k entradas e m = 2n possíveis saídas, qual o valor

de k para que a probabilidade de colisão seja maior do que 50%? 1 – m!/[(m-k)!mk]  1 – e[-k(k-1)]/n > ½  k k  m m1/21/2 = 2 = 2n/2n/2

(19)

Comparação entre MD5 e SHA

Comparação entre MD5 e SHA

• Pertencem a mesma família de Funções Hash: MDx-classMDx-class

• MD5 é mais vulnerável a ataques de força-bruta devido a sua menor saída: 128 bits contra 160 bits do SHA

• O MD5 é mais rápido que o SHA, pois este último possui mais etapas em seu algoritmo (80 contra 64 do MD5) e um buffer maior (160 bits contra 128 bits do MD5)

• Já foram encontradas colisões para a função de compressão do MD5, enquanto que o SHA permanece inabalável

Algoritmo Performance relativa MD4 MD5 SHA SHA-1 SHA-224/256 1,00 0,65 0,31 0,12 0,31

• Ataques a MAC:

(20)

Hash para Garantia de Integridade

MAC - Função Hash com chave

Na verdade, MD5 e SHA1são MACs, mas a chave é

usada e conhecida por todos, portanto funciona

como não houvesse chave, garantindo apenas

(21)

Assinatura digital

É uma técnica de autenticação que também inclui

medidas para conter a repudiação

tanto pela origem

(22)

Assinatura Digital

Transferência de modelos de negócios do mundo real para o

mundo virtual.

Exemplos:

 Um grande Banco deseja assinar contratos de câmbio

digitalmente para reduzir custos e tempo

 Uma indústria deseja dar validade legal a documentos trocados

via e-mail em negociações com clientes e fornecedores

 Uma seguradora deseja vender seguros de vida e saúde via

Internet, mas para isso necessita que a declaração de saúde do solicitante seja assinada digitalmente

(23)

Assinatura digital

e-DOC

(24)

Relacionamento: Algoritmos x Aplicações

IDEA KERBEROS PEM PGP SHA-1 MD5 DES/ AES RSA/ ECC X.509 SNMPv2 DSS

Correio Eletrônico Gerenciamento de Redes Autenticação

Algoritmos de Criptografia

(25)
(26)

Leitura Recomendada:

Stallings, Willian. Network Security Essentials. 2a Edição. Editora

Prentice-Hall. 2003.

Capítulos 2 e 3

Stallings, William - Cryptography and Network Security: Principles and

Practice. 4ª Edição. Prentice-Hall. 2005.

Capítulos 10, 11, 12 e 13

Terada, Routo - Segurança de Dados Criptografia em Redes de

Computador. São Paulo. Edgard Blücher. 2000

Referências

Documentos relacionados

Pode-se observar na Tabela 3 que, na ausência de irrigação, os coqueiros provenientes de mudas com sete meses de idade apr sentaram uma emissão foliar, nos 12 primeiros meses apds

PEIXE INTEIRO MUTUTUCA PEIXE INTEIRO MUTUCA PEIXE EM POSTAS MOREIA PEIXE INTEIRO ALBACORA PEIXE INTEIRO ALBACORA LAJE PEIXE INTEIRO ALBACORA MIRIM PEIXE INTEIRO ALBACORA BRANCA

4 - Valores da Refl ectância Bidirecional (em fração, de 0 a 1) versus o comprimento de onda central da banda obtidos para a vegetação na imagem sem correção atmosférica e

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Analysis of relief and toponymy of the landscape based on the interpretation of the military topographic survey: Altimetry, Hypsometry, Hydrography, Slopes, Solar orientation,

servidores, software, equipamento de rede, etc, clientes da IaaS essencialmente alugam estes recursos como um serviço terceirizado completo...

Fonte: IDC, 2015 (Inquérito a 467 organizações portuguesas que possuem alguma presença na Internet)..