30
Criptografia Moderna: Matemática para a Segurança Digital Ruy J.G.B. de Queiroz Centro de Informática UFPE

Owasp recife 2012

Embed Size (px)

DESCRIPTION

Apresentação no Encontro da OWASP, Fac. Maurício de Nassau, Recife, 31/01/2012

Citation preview

Page 1: Owasp recife 2012

Criptografia Moderna: Matemática para a Segurança Digital

Ruy J.G.B. de Queiroz

Centro de Informática

UFPE

Page 2: Owasp recife 2012

“À medida que a era digital estava no seu alvorecer no final dos anos 1970’s, uma enorme pedra no caminho à troca de informações e à condução de transações via redes de alta-velocidade era a falta de segurança de participantes externos que poderiam querer interceptar os dados…”

(Resenha de Crypto (Steven Levy, 2000), por Publishers

Weekly.)

Page 3: Owasp recife 2012

Steven Levy (Chief Tech writer, Newsweek)

Page 4: Owasp recife 2012
Page 5: Owasp recife 2012

30 Years of Public-Key Cryptography

(Computer History Museum, Oct 2006)

“Com a possível exceção de armas nucleares, não consigo pensar em nenhuma technologia que tenha tido um impacto político e econômico profundo sobre o mundo maior que a criptografia. (...)

Geralmente acho que o papel da criptografia de chave pública que tem tido um papel fundamental na internet moderna, é geralmente subestimada.

Acho que é provavelmente porque ela está tão rapidamente se tornando parte invisível do tecido tanto da comunicação quanto do comércio modernos. “ (26/10/2006)

MC: John Markoff (NYT Tech columnist)

Page 6: Owasp recife 2012

O que é Criptografia?

Tradicionalmente: manter sigilo na comunicação

Alice e Bob conversam enquanto Eve tenta escutar

Alice Bob

Eve

Page 7: Owasp recife 2012

Sigilo deve se resumir à chave/senha

“Não se deve supor que o método de cifragem (e decifragem) é secreto. É preciso admitir a possibilidade de que tais métodos caiam nas mãos do adversário, e ainda assim o sigilo da comunicação seja mantido.”

Conseqüência: segurança por obscuridade de métodos é perigoso. (Ex.: GSM)

Auguste Kerckhoffs (1835–1903)

Page 8: Owasp recife 2012

Abordagem Matemática à Teoria da Informação

• Claude Shannon (1916–2001).

• A Mathematical Theory of Communication. Bell Systems Technical Journal 27:379–423, 623–656, 1948.

• Communication Theory of Secrecy Systems. Bell Systems Technical Journal 28:656–715, 1949.

Page 9: Owasp recife 2012

Sigilo Perfeito

Um esquema criptográfico é perfeitamente sigiloso se:

1. a senha tem o mesmo tamanho da mensagem

2. a cada mensagem uma senha é sorteada

Page 10: Owasp recife 2012

Tempos Modernos

• Até os anos 70’s – sobretudo área militar e confidencial

• Desde então - crescimento explosivo – Aplicações comerciais

– Trabalho científico: relacionamento estreito com Teoria da Complexidade Computacional

– Destaques: Diffie-Hellman, Rivest-Shamir-Adleman

• Recentemente – modelos mais sofisticados para tarefas as mais diversas

Como manter o sigilo, a integridade e a autenticidade em sistemas de informação e comunicação

Page 11: Owasp recife 2012

Merkle Hellman Diffie

“Estamos hoje à beira de uma revolução em criptografia.”

(New Directions in Cryptography, 1976)

Page 12: Owasp recife 2012

Whitfield Diffie Martin Hellman

Troca de Chaves

Assinaturas Digitais

Page 13: Owasp recife 2012

Primórdios da Noção de “Chave Pública”

1974: “Conforme as concepções tradicionais da segurança criptográfica, é necessário transmitir uma chave, por meio secreto, antes que mensagens cifradas possam ser enviadas de forma segura.

Este artigo mostra que é possível selecionar uma chave sobre canais abertos de comunicação de tal forma que a segurança das communicações possa ser mantida.”

Ralph Merkle

Page 14: Owasp recife 2012

Projeto rejeitado: “sua descrição está terrivelmente confusa”

Page 15: Owasp recife 2012

Bob

Alice

Chaves Públicas

Chave/Senha Pública

Page 16: Owasp recife 2012

Fragilidade

• Necessidade de “Certificado”

• Suscetível ao ataque “homem-no-meio”

• Tentativas de solução:

– Encriptação baseada na Identidade (Shamir 1984)

– Criptografia de Chave Pública Sem-Certificado (Al-Riyami & Paterson 2003)

Page 17: Owasp recife 2012

Criptografia Moderna e Complexidade Computacional

Teoria da Complexidade -

• Estuda os recursos necessários para se resolver problemas computacionais – tempo, memória

• Identifica problemas que são infactíveis de computar.

Criptografia Moderna-

• Encontra maneiras de especificar requisitos de segurança de sistemas

• Usa a infactibilidade de problemas de forma a obter segurança.

Essas duas áreas estão intimamente ligadas!

Page 18: Owasp recife 2012

Funcionalidades da Criptografia Moderna

• Sigilo

• Autenticação

• Integridade

• Cooperação sem perder a privacidade (ex. leilão eletrônico; estatísticas conjuntas entre concorrentes; pesquisas de opinião; votação eletrônica; etc.)

Page 19: Owasp recife 2012

Encriptação Totalmente Homomorfa

• Encriptação homomorfa é uma forma de encriptação na qual uma operação algébrica específica realizada no purotexto é equivalente a uma outra operação algébrica (possivelmente diferente) realizada no cifrotexto.

Page 20: Owasp recife 2012

Aplicação

• Em 2010 Riggio & Sicari apresentaram uma aplicação prática da encriptação homomorfa a uma rede de sensores sem-fio híbrida.

• O sistema permite monitoramento sem fio multiponto transparente que é capaz de realizar análise estatística de vários tipos de dados (temperatura, humidade, etc.) vindos de uma WSN enquanto que garante tanto a encriptação fim–a–fim quanto a autenticação ponto-a-ponto.

Page 21: Owasp recife 2012

Especificação Rigorosa de Segurança

Para definir segurança de um sistema é preciso especificar:

1. O que constitui uma falha do sistema

2. O poder do adversário

– capacidade computacional

– acesso ao sistema

– definição precisa do que significa “quebrar” o sistema.

Page 22: Owasp recife 2012

Funções e suas inversas

Dizemos que uma função f é difícil de inverter se, dado y=f(x) é difícil encontrar x’ tal que y=f(x’) – x’ não precisa ser igual a x

– Exemplos: (1) multiplicação; (2) exponenciação

• Para dizer o que é “difícil” temos que especificar um modelo computacional

Page 23: Owasp recife 2012

Modelo Computacional: “Máquina de Turing”

Alan Turing. “On computable numbers, with an application to the Entscheidungsproblem”, Proc. London Mathematical Society, Series 2, 42(1936-1937), pp. 230-265

Page 24: Owasp recife 2012

Início da Criptografia Moderna Whitfield Diffie & Martin Hellman (1976)

• Alice e Bob compartilham um primo p, a base g, e querem estabelecer uma chave (senha)

1. Alice calcula A = ga mod p, e envia A para Bob 2. Bob calcula B = gb mod p, e envia B para Alice 3. Alice calcula KA = Ba mod p 4. Bob calcula KB = Ab mod p

– KA = Ba mod p = gba mod p = gab mod p = Ab mod p = KB

• Abelhudo só consegue aprender p, g, A e B – e é difícil calcular K somente a partir desses valores (problema do logaritmo discreto)

• Resultado: Estabelecimento seguro de chave (senha) usando somente troca pública de informação

Page 25: Owasp recife 2012
Page 26: Owasp recife 2012

1973: Cocks realizou idéia de Ellis (1970): encriptação “não-secreta”

Page 27: Owasp recife 2012

Rivest, Shamir & Adleman

Page 28: Owasp recife 2012

RSA: artigo original: relatório técnico circulado em 1977

Page 29: Owasp recife 2012

Fatoração em Tempo Polinomial • “Em um computador quântico, fatorar um inteiro N, o

algoritmo de Peter Shor (1994) roda em tempo polinomial (em log N, que é o tamanho da entrada).

• Especificamente, O((log N)3), o que mostra que o problema da fatoração pode ser eficientemente resolvido em um computador quântico e está portanto na classe de complexidade BQP.

• Isso é exponencialmente mais rápido que o algoritmo clássico mais eficiente que se conhece, to crivo de número de campo geral, que roda em tempo sub-exponencial —O(e1.9 (log N)1/3 (log log N)2/3).

• A eficiência se deve ao poder da transformada de Fourier quântica, e da exponenciação modular por elevação ao quadrado”. (Wikipédia)

Page 30: Owasp recife 2012

Outros Problemas Computacionalmente Difíceis

• Problemas sobre reticulados: por exemplo, encontrar o vetor mais curto

• Problemas sobre códigos

• Problemas NP-Difíceis