s eguranÇa, c ontrole e a uditoria de d ados 8 – criptografia (2)

51
SEGURANÇA, CONTROLE E AUDITORIA DE DADOS 8 – Criptografia (2)

Upload: angelo-gandara

Post on 07-Apr-2016

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA, CONTROLE E AUDITORIA DE DADOS8 – Criptografia (2)

Page 2: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA

Aplicações Privacidade, Autenticação: RSA, Curva Elíptica Intercâmbio de chave secreta: Diffie-Hellman Assinatura digital: DSS (DSA)

Vantagens Não compartilha segredo Provê autenticação Provê não-repúdio Escalável

Desvantagens Lenta (computacionalmente intensiva) Requer autoridade de certificação (chave pública

confiável)

Page 3: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

DIFFIE-HELLMAN

É um método para troca segura de chaves

Inventado em 1976

O objetivo é permitir a troca de chaves entre duas entidades remotas através de um meio de comunicação não segura

É baseado na operação de logaritmos discretos

Page 4: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

RAIZ PRIMITIVA

O logaritmo discreto é uma função unidirecional

Logaritmo discreto é baseado na raiz primitiva

Raízes primitivas de um número primo p são as potências por todos os inteiros de 1 a p-1

Se a é uma raiz primitiva de p, então a mod p, a2 mod p, ..., ap-1 mod p

são distintos e consistem em inteiros de 1 a p-1

Page 5: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

LOGARITMOS DISCRETOS

Para um inteiro b uma raiz primitiva a de um número primo p é possível encontrar um expoente i tal que:b = ai mod p onde 0 ≤ i ≤ (p-1)

O expoente i é chamado de logaritmo discreto de b na base a mod p.

Dado a, i e p, é fácil calcular b

Dado a, b e p, é difícil calcular i

Page 6: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO DIFFIE-HELLMAN

O algoritmo gera a mesma senha para dois usuários distintos (Eliza e Bruno), dado p primo e α uma raiz primitiva de p:Eliza Bruno

sorteia Xa < pcalcula Ya = αXa mod p Ya

sorteia Xb < pcalcula Yb = αXb mod pYb calcula K = YaXb mod p

calcula K = YbXa mod p

Page 7: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO DIFFIE-HELLMAN

Temos: Ya = αXa mod p e Yb = αXb mod p

KA = YbXa mod p (αXb mod p)Xa mod p (αXb)Xa mod p (αXa)Xb mod p (αXa mod p)Xb mod p YaXb mod p= KB = K

Page 8: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO DIFFIE-HELLMAN

p = 97, α = 5 Alice sorteia Xa = 36 e Bruno sorteia Xb = 58 Alice calcula Ya = 536 = 50 mod 97 Bruno calcula Yb = 558 = 44 mod 96 Bruno calcula K = (Ya)Xb mod 97 = 5058 = 75

mod 97 Alice calcula K = (Yb)Xa mod 97 = 4436 = 75

mod 97

Page 9: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO DIFFIE-HELLMAN

Diffie-Hellman é uma técnica muito usada para troca de chaves SSL (Secure Socket Layer) PGP (Pretty Good Privacy)

É eficiente Porém está sujeito ao ataque do homem no

meio na troca de valores públicos Y Segurança do Diffie-Hellman: Criptoanálise: conhecidos q, α e Y, é preciso

calcular o log discreto para obter K (difícil)

Page 10: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

O algoritmo RSA foi desenvolvido em 1977 pelo Ron Rivest, Adi Shamir e Len Adleman

RSA é um algoritmo de chave pública

É baseado em logaritmos discretos

As senhas são geradas com base em dois números primos grandes (mais de 100 dígitos)

A segurança é baseada na dificuldade de fatoração de números inteiros

Page 11: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Geração do par de chaves (pública/privada) Selecionar p e q , ambos números primos Calcular n = p × q Calcular φ(n) = (p - 1)(q - 1) [quociente de Euler] Selecionar inteiro e , primo relativo a φ(n) Calcular d = e-1 mod φ(n) [ ou de = 1 mod φ(n) ] Chave Pública: KU = {e, n} Chave Privada: KR = {d, n}

Encriptação: C = Me mod n, M < n Decriptação: M = Cd mod n

Page 12: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Para criptografar a mensagem M: C = Me mod n

Para decriptografar a mensagem cifrada C: M = Cd mod n = (Me)d mod n = Med mod n

Ambos os lados deve conhecer n A senha pública KU é formada por {e, n} A senha secreta KR é formada por {d, n} O algoritmo funciona porque Med = M mod n

quando ed = 1 mod φ(n)

Page 13: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Page 14: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Primos p = 7 e q = 19. n = p.q = 119, φ(n) = 6×18 =108

Senha pública do destinatário: {e, n} = {5, 119} Senha secreta do destinatário: {d, n} = {77,

119} Mensagem M: 19 Mensagem cifrada C: 66

Page 15: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Criptoanálise:conhecendo e e n,é preciso fazer afatoração de n,para obter os doisprimos p e q ecalcular d

Fatoração é umatarefa demorada

Pentium 200Mhz éuma máquina de

50 MIPS

Page 16: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

O algoritmo RSA pode ser usado para assinar digitalmente um documento

A assinatura garante a autenticidade

A assinatura é gerada com base na senha secreta do assinante

Desta forma um documento assinado só poderia ter sido gerado pelo dono da senha

Page 17: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

ALGORITMO RSA

Page 18: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA E ASSINATURA DIGITAL

Com o RSA é possível ainda criptografar e assinar digitalmente

Assim a autenticidade e a confidencialidade são garantidas simultaneamente

Duas operações de criptografia são executadas em seqüência no documento original: Uma com a senha secreta do assinante Outra com a senha pública do destinatário

Page 19: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA E ASSINATURA DIGITAL

Page 20: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA E ASSINATURA DIGITAL

A distribuição de chaves é um possível ponto de falha também em um sistema de chave pública

Um usuário C pode gerar uma par KR/KU em nome de B e enviar a chave pública para A

A, ao gerar uma mensagem pensando que é para B, está gerando uma mensagem que na verdade somente C tem a chave para ler

Page 21: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA E ASSINATURA DIGITAL

Autoridades de certificação são usadas para distribuir chaves públicas garantindo a sua autenticidade

A CA (Certificate Authority) é uma entidade confiável e reconhecida (VeriSign, Thawte, ValiCert, GlobalSign, Entrust, BelSign)

A CA emite certificado digital que inclui a chave pública de uma entidade, com dados para identificação confiável desta e assinado digitalmente com a chave privada da CA

Page 22: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CRIPTOGRAFIA E ASSINATURA DIGITAL

A chave pública da CA deve ser muito bem conhecida e amplamente disponível, pois é usada por quem recebe um certificado vindo da CA, para validá-lo (autenticar assinatura)

Exemplo de conteúdo de Certificado Digital:

Nome do indivíduo e/ou organizaçãoChave pública do detentorData de validade do certificadoNumeração de controle do certificadoIdentificação da CAAssinatura digital da CA

Page 23: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

CERTIFICADO X.509

V1

V 2/3

Padrão ITU-T para certificado: X.509 Usado em S/MIME, IPSec, SSL/TLS, SET

VersãoNúmero serial do certificadoIdentificação do algoritmo de assinaturaNome do emitente: CA que assina o certificadoPeríodo de validade do certificado (início e fim)Nome do assunto: usuário que o certificado identificaChave pública do assuntoIdentificação única do emitenteIdentificação única do assuntoExtensões: Outros dadosAssinatura da CA

Page 24: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Criptografia do conteúdo protege mensagens contra interceptação (ataque passivo)

Criptografia e técnicas similares podem ser usadas para autenticação de mensagens: garantir e validar sua integridade contra falsificação (ataque ativo)

Autenticação simples de mensagem na criptografia convencional: Incluir na mensagem informações de código de correção

de erro e controle de seqüência e tempo

Page 25: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Técnicas de autenticação de mensagem sem criptografar toda a mensagem: Message Authentication Code (MAC) Função de Hash Unidirecional

MAC Uso de uma chave secreta KAB para gerar um

pequeno bloco de dados conhecido como código de autenticação da mensagem, anexado a esta

MACM = F(KAB, M) O receptor gera o mesmo código e compara

Page 26: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Page 27: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Algoritmo Hash Unidirecional: Toma uma mensagem arbitrária M e gera uma

compilação da mensagem (message digest) de tamanho fixo H(M) como saída (como nos MACs)

O algoritmo não precisa ser reversível Diferente do MAC, a função hash não usa uma chave

secreta como parâmetro A autenticação da mensagem passa a ser baseada na

autenticação segura do digest: Adicionar de um valor secreto a M antes de gerar H(M) Criptografia convecional do message digest Assinatura do digest com a chave privada do emissor

Page 28: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Page 29: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Exemplo de um hash simples de n bits: Tomar a mensagem em blocos de n bits Fazer XOR do bit i (de 1 a n) de todos os blocos

Ci = bi1 ⊕ bi2 ⊕ ... ⊕ bin

Page 30: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Algoritmos Hash Seguros SHA-1, Secure Hash Algorithm-1: desenvolvido pelo

NIST (National Institute of Standards and Technology), EUA Digest de 160 bits Propriedade principal: todo bit do código hash é função de

todos os bits da mensagem de entrada MD4 e MD5, Message Digest Algorithm #4, #5:

desenvolvido pela RSA (128 bits) RIPEMD, RACE Integrity Primitives Evaluation (RIPE)

MD: projeto europeu RIPE. RIPEMD-160, RIPEMD-256 (hash de 160 e 256 bits)

Page 31: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

MAC a partir de uma função hash Idéia: desenvolver um MAC derivado de um hash

unidirecional, introduzindo uma chave secreta

Padrão mais aceito é o HMAC. Princípios: Usar uma função hash existente (ex: SHA-1), sem

modificações (como se fosse uma “caixa preta”) Deixar a função hash facilmente substituível, caso se

deseje usar outra função mais conveniente Preservar o desempenho original da função hash, sem

introduzir degradação significante Tratar de forma simples a chave secreta usada

Page 32: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE MENSAGEM

Page 33: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE USUÁRIO

Kerberos Parte do Projeto Athena, do MIT Problema: em um ambiente distribuído aberto, é

necessário autenticar requisições e restringir acesso a usuários autorizados

Idéia do Kerberos: é difícil garantir a segurança de muitos servidores em uma rede, mas é viável garantir alta segurança de um único servidor

Kerberos: servidor de autenticação central que contém e valida a senha (chave) e autorizações de todos os usuários e servidores da rede

Baseado em criptografia convencional

Page 34: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

AUTENTICAÇÃO DE USUÁRIO

Page 35: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

O e-mail é hoje um meio de comunicação tão comum quanto o telefone e segue crescendo

Gerenciamento, monitoramento e segurança de e-mail têm importância cada vez maior

O e-mail é muito inseguro, pois pode atravessar várias redes até chegar ao destino

E-mail é vulnerável a: Interceptação e quebra de privacidade Replicação, adulteração, falsificação de conteúdo Falsificação de identidade

Page 36: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Privacidade de conteúdo Tecnologia de criptografia para codificação

Integridade da mensagem Algoritmo de hash / message digest ou MAC

Verificação de remetente Assinatura digital

Verificação de destinatário Criptografia com chave-pública

Page 37: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Padrões PGP - Pretty Good Privacy & OpenPGP S/MIME - Secure Multipurpose Internet Mail Extension (MIME) PEM - Privacy-Enhanced Mail MOSS - MIME Object Security Service MSP - Message Security Protocol (uso militar)

Padrões competidores não inter-operáveis dificultam sua popularização

Mais difundidos: PGP e S/MIME

Page 38: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

PGP Mais popular ferramenta de privacidade e

autenticação, principalmente para uso pessoal Esforço pessoal de Philip R. Zimmermann Essência do trabalho:

Selecionados os melhores algoritmos de criptografia como componentes

Algoritmos integrados em aplicação de uso geral e fácil O produto, sua documentação e todo o código fonte

disponibilizados publicamente na Internet Acordo com uma empresa (Viacrypt, agora NAI) para

disponibilização de uma versão comercial

Page 39: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Histórico do PGP Versão pública inicial do PGP: Junho de 1991 PGPi 5.0: 1997

1ª versão legalmente disponível fora dos EUA/Canadá Exportado como código fonte em livros impressos e

remontado a partir de digitalização/OCR Network Associates: versão comercial Dez/1997 OpenPGP: Padrão aberto IETF RFC 2440

GnuPG: implementação freeware do OpenPGP, sem o algoritmo patenteado IDEA (patente RSA expirou 2000)

OpenPGP Alliance: promove interoperabilidade entre implementações do padrão OpenPGP

Page 40: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Sucesso do PGP Disponibilidade gratuita e versões para muitas

plataformas, com ferramentas para fácil utilização Distribuição pública do código permitiu amplo estudo

e garante credibilidade (certeza de não haver back doors) e amadurecimento (depuração)

Uso de algoritmos considerados muito seguros Aplicável na segurança de e-mail, arquivos, VPN Não desenvolvido ou totalmente controlado por

nenhuma organização governamental ou privada

Page 41: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Page 42: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Page 43: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Page 44: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Assinatura digital: Obtida por uma sinopse (digest) da mensagem

criptografada com a chave privada do remetente Confidencialidade:

Encriptação usa criptografia convencional, que é em geral bem mais rápida que a de chave pública

Chave de sessão: uma chave secreta é gerada aleatoriamente para uso uma única vez, i.e., uma nova chave para cada mensagem cifrada

A chave da sessão vai junto com a mensagem, protegida pela chave pública do destinatário

Page 45: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Compactação ZIP: Reduz o tamanho a armazenar ou transmitir Realizada depois da assinatura e antes da

criptografia convencional da mensagem Depois da assinatura: validação da mensagem

s/depender de comprimir antes e do algoritmo ZIP Antes da criptografia: reduz redundância (padrões) na

mensagem original, aumentando a segurança Compatibilidade com e-mail:

Codificação do resultado em ASCII com Radix64 Possibilidade de segmentar resultado, se grande

Page 46: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Private key ring (Chaveiro de chave privada) Existe uma chave mestre associada ao usuário,

define sua identificação e é usada para assinatura Podem ser definidas chaves alternativas para

codificação, que podem ter validade ou ter a chave pública revogada em caso de problema

A chave privada é armazenada codificada por criptografia convencional.

A chave secreta é hash da senha (frase-passe) escolhida pelo usuário

Page 47: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Page 48: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Public key ring (Chaveiro de chaves públicas) As chaves públicas podem ser assinadas digitalmente

por usuários que atestem sua legitimidade Para o usuário atestar/aceitar a validade de uma

chave pública em seu chaveiro, deve assiná-la e associar um nível de confiança

A legitimidade de uma chave pública é dada pelo conjunto dos níveis de confiança dos assinantes

Page 49: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

S/MIME Secure/Multipurpose Internet Mail Extension Baseado em tecnologia da RSA Security Embora tanto PGP quanto S/MIME sejam definidos

como padrões pela IETF, S/MIME surge mais como padrão de indústria para uso comercial e organizacional, enquanto PGP é mais escolhido em segurança pessoal de e-mail

Essencialmente, tem as mesmas funções de autenticação e confidencialidade do PGP, embutidas no padrão MIME de conteúdo

Page 50: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Nomeclatura das funções S/MIME: Enveloped data: conteúdo (de qualquer tipo)

criptografado, com chave de sessão criptografada para um ou mais destinatários

Signed data: é feita uma assinatura digital do conteúdo por uma message digest cifrada com a chave privada do assinante. Tanto o conteúdo quanto a assinatura são codificados em base64

Clear-signed data: é formada uma assinatura digital do conteúdo, mas apenas a assinatura é depois codificada em base64 (conteúdo intacto)

Signed and enveloped data: assinatura + cifra

Page 51: S EGURANÇA, C ONTROLE E A UDITORIA DE D ADOS 8 – Criptografia (2)

SEGURANÇA DE E-MAIL

Chaves públicas Distribuídas em certificados X.509v3 assinados por

Autoridade de Certificação (CA) Certificados Chave-Pública S/MIME Verisign

Vários classes de segurança, de acordo com a forma de confirmação de identidade

Classe 1: validação automática do nome e e-mail (envio de um PIN e ID digital para o e-mail)

Classe 2: Classe 1 + validações automatizadas no cadastro de pagamento e sobre o endereço postal

Classe 3: Classe 2 + identificação pessoalmente