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

Post on 22-Apr-2015

115 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

Transcript

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

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

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.

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

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

Cifrar

Decifrar

Tex

to C

laro

Tex

to e

ncr

ipta

do

Chave e algoritmo de criptografia

Criptografia Simétrica - Relembrando

Principais Características

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

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

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

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

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

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)

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

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

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

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

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

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)

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

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 !!!

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

top related