introdução a criptologia (cont.) carlos sampaio. agenda algoritmos modernos rede de fistel...

22
Introdução a Criptologia (cont.) Carlos Sampaio

Upload: internet

Post on 22-Apr-2015

117 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Introdução a Criptologia (cont.)Carlos Sampaio

Page 2: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Agenda• Algoritmos modernos• Rede de Fistel

– Objetivos da rede de Fistel

• Criptografia Simétrica– Principais Características– Principais Algoritmos

• Criptografia Assimétrica– Princípios– Conceito de Chaves (Publica e Privada)– Método de distribuição de Chaves

• Funções de Hash– Algoritmos de Hash

Page 3: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Algoritmos Modernos

• Stream Ciphers (cifras contínuas):– Cifram/decifram bytes(ou bits) um a um

(normalmente a menor unidade endereçável do protocolo)

• Block Ciphers (cifras de bloco):– Cifram/decifram dados em blocos discretos,

geralmente 64 bits– Tendem a ser mais resistentes e mais fáceis

de analisar– São utilizados em diversos modos de

operação, alguns dos quais, inclusive, emulam stream ciphers.

Page 4: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Rede de Feistel Clássica

• Trata-se de um modelo de cifra de bloco

• Introduz o conceito de Função de Rodada

• Diversas cifras utilizam este conceito para possibilitar os critérios de Confusão e Difusão

• Ao final de cada rodada as metades são trocadas

Page 5: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Objetivos da Cifra de Fiestel

• Difusão:– Um bit de texto claro irá influenciar vários

bits do texto cifrado (tipicamente mais que 50%)

– Dissipa as características do texto plano em uma ampla faixa do texto cifrado

• Confusão:– Tenta tornar o relacionamento entre a

estatística da chave e do texto cifrado o mais complicado possível

Page 6: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Cifrar

Decifrar

Tex

to C

laro

Tex

to e

ncr

ipta

do

Chave e algoritmo de criptografia

Criptografia Simétrica - Relembrando

Page 7: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Principais Características

• Algoritmos Simétricos Modernos– DES e 3DES– RC4– IDEA– Blowfish– CAST

Page 8: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

O DES - Características

• Data Encryption Standard– Desenvolvido pela IBM na década de 70

com assistência da NASA• Não recomendado para operações TOP-SECRET

– Blocos de 64 bits, chaves de 56 bits• ~720 quatrilhões de possibilidades• Atualmente quebrável em 12 horas com HW

específico (teste de ~200 bilhões chaves/seg)• 56 Bits é considerado pouco atualmente

– 3DES: DES aplicado 3 vezes com 3 chaves• ~112 bits de tamanho efetivo de chave• 5,2 x 1033 possibilidades

Page 9: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

RC4 - ARCFOUR• Algoritmo de cifragem proprietário da RSADSI

– Otimizado para utilização rápida em software– Era segredo industrial até ser analisado por

engenharia reversa no final dos anos 90– Entrada e saída em blocos de 8 bits, chaves de 2048

bits– Extremamente rápido– Utilizado em diversos produtos

• SSL: Netscape, IE, Lotus Notes• Criptografia de senhas do Windows• MS Access, Adobe Acrobat, PPTP, Oracle Secure SQL

– “BackDoor”• Geralmente utilizado de forma que permite a

recuperação da senha (alguns aplicativos)• Resultado da utilização de algoritmos do tipo caixa preta

Page 10: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

IDEA – International Data Encription Algorithm

• Chaves de 128 bits• Entrada e saída em blocos de 64 bits• Maduro, bastante resistente,

exaustivamente analisado• Patenteado

– Utilização gratuita para aplicações não comerciais

Page 11: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Blowfish

• Desenvolvido por Bruce Schneier• Rápido: 18 ciclos de clock por byte• Chaves de 128 a 448 bits• Entrada e saída de 64 bits• Geração de chave demorada

– Deliberadamente para evitar ataques de força bruta, mas muito bem implementado de forma a não impactar a velocidade geral do algorítmo

• Totalmente Grátis• Foi encontrada uma fraqueza

– Inútil na prática, mas lançou dúvidas sobre o algorítmo

Page 12: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

CAST-128

• Carlisle Adam e Stafford Tavares• Chaves de 128 bits• Entrada e saída em blocos de 64 bits• Utilizado nas versões mais recentes

do PGP• Maduro, resistente e exaustivamente

analisado• Sem restrições de utilização

(Gratuito)

Page 13: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Decriptação

Criptografia Assimétrica - Princípios

Tex

to

Encriptação

Chave pública eAlgorítimo de encriptação

Tex

t en

crip

tad

o

Page 14: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

text

o

Encriptação

Chave pública eAlgorítimo de encriptação

Decriptação

Criptografia Assimétrica - Princípios

Chave privada eAlgorítimo de decriptação T

exto

en

crip

tad

o

Page 15: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Chaves públicas e privadas

• As chaves existem em pares– A chave privada deve ser mantida segura

enquanto que a pública pode ser distribuída

– As chaves públicas podem existir nos certificados

• A codificação pode ser feita por qualquer uma das chaves– Posso usar a chave privada para assinar e

cifrar meus documentos – Qualquer um pode utilizar a chave pública

para enviar um dado cifrado

Page 16: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Chaves Privadas• Chaves Privadas• Devem ser mantidas em um local

seguro!!!!!• Se você manda algo cifrado com a

sua chave privada a informação poderá ser lida por qualquer pessoa, mas esta pessoa terá a certeza que a informação vem de você– Autenticação

Page 17: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Chaves Públicas• São distribuídas a qualquer usuário

– Pode ser distribuídas, mas deve haver a confiança que a chave esta correta

– Pode fazer parte do certificado• Se enviar uma informação cifrada

com a chave pública ela somente poderá ser lida pela chave privada correspondente– Segurança na comunicação

• SSL

Page 18: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Métodos de Distribuição de Chaves• Web-of-Trust

– Utilizado pelo PGP e GPG, exige que o destinatário confie no remetente

– Permite a atribuição de confiança indireta– Caso exista a confiança, uma chave

assinada passa a ser confiável (válida)

• X.509– Utiliza Autoridades Certificadoras para a

infra-estrutura de distribuição– É utilizada no conceito de PKI (Public Key

Infrastructure)

Page 19: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Funções de Hash - Conceitos• Criptografia não reversível

– Saída de tamanho fixo

• Principal utilização– Detecção de modificação– Detecção de erros– Arquivamento de senhas

Page 20: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Hash Criptográfico• Propriedades desejáveis

– Colisões raras e estatisticamente dispersas• Deve ser computacionalmente impraticável achar

duas mensagens que geram o mesmo hash.

– Tamanho fixo• Curto o bastante para ser conveniente, porém

suficientemente longo para assegurar a propriedade acima

• Tamanho típico: 128 a 160 bits é considerado ideal

Hash OK

Cópia ModificaçãoOriginal

Hash OK Hash Difere !!!

Page 21: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais

Algoritmos de Hash• MD5 – Message Digest 5, por Ron Rivest

– Padronizado na RFC1321– Uso irrestrito, sem patente– Mais popular hash criptográfico até pouco tempo atrás– Entrada de comprimento variável saída de 128 bits

• SHA-1– Desenvolvido pelo NIST em parceria com NSA– Melhoramento do MD4 e MD5– Entrada de comprimento variável saída de 160 bits– Rumores de sua possível quebra apenas em teoria– SHA-2, na realidade uma coletânea de algoritmos

(SHA-224, SHA-256, SHA-384 e SHA-512), ainda seguro

Page 22: Introdução a Criptologia (cont.) Carlos Sampaio. Agenda Algoritmos modernos Rede de Fistel –Objetivos da rede de Fistel Criptografia Simétrica –Principais