59
Criptografia – Aula 06 Prof a Janniele Aparecida Soares Araujo CSI463 – Segurança e Auditoria de Sistemas

Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

Criptografia – Aula 06

Profa Janniele Aparecida Soares Araujo

CSI463 – Segurança e Auditoria de Sistemas

Page 2: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

2

Criptografia

● Definição● Estudo dos princípios e técnicas pelas quais a mensagem ou

informação pode ser transformada da sua forma original para outra forma que seja ilegível para usuários não autorizados, mas possa ser conhecida por seu destinatário

● A criptografia é feita por algoritmos que● Embaralham os bits dos dados ou mensagens● Podem utilizar uma ou mais chaves (ou par de chaves), dependendo do sistema

criptográfico escolhido

Page 3: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

3

Criptografia: histórico

● Estudo da escrita (grafia) secreta (cripto)● Cifragem utilizada na troca de mensagens● Em assuntos ligados à guerra, ao amor e à diplomacia● Primeiro uso documentado da criptografia:

● 1900 a.c., no Egito● Uso de hieróglifos fora do padrão

Page 4: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

4

Criptografia: histórico

● Curiosidade● O Disco de Phaistos (1600 a.c) ainda não foi

decifrado ● Trata-se de um disco circular de barro,

coberto com símbolos em ambos os lados, diferentes de quaisquer sinais de qualquer sistema de escrita conhecido● alguns trechos decifrados: “mãe grávida”, “mãe

brilhante” e “deusa”● quantidade de símbolos do disco não fornece base

estatística suficiente para que qualquer um alegue ter decifrado a mensagem

Page 5: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

5

Criptografia: histórico

● Entre 600 a.c. e 500 a.c.:● Hebreus utilizaram cifras de substituição simples para escrever o Livro

de Jeremias

● Cifrador de Júlio César, aproximadamente 60 a.c.● O autor da cifragem trocava cada letra por outra situada a cinco

posições à frente no alfabeto. Segundo o autor, esse algoritmo foi responsável por enganar muitos inimigos do Império Romano

● Normal: ABCDEFGHIJKLMNOPQRSTUVWXYZ● Codificado: FGHIJKLMNOPQRSTUVWXYZABCDE

Page 6: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

6

Criptografia: histórico

● Thomas Jefferson e James Monroe cifravam as suas cartas para manter em sigilo as suas discussões políticas (1785)● Roda criptográfica ou cilindro de Jefferson● Na sua forma original, é composto por 26 discos de madeira que

giram livremente ao redor de um eixo central de metal● As vinte e seis letras do alfabeto estão dispostas aleatoriamente na

superfície mais externa de cada disco de modo que, cada um deles, possua uma sequência diferente de letras

● Girando-se os discos pode-se obter as mensagens

Page 7: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

7

Criptografia: histórico

● Samuel Morse (1791-1872) desenvolve o código que recebeu o seu nome● Na verdade não é um código, mas sim um alfabeto cifrado em sons

curtos e longos● Morse também foi o inventor do telegrafo

Page 8: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

8

Criptografia: histórico

● Gottfried Wilhelm von Leibniz (1646-1716) inventou o cálculo diferencial e integral, a máquina de calcular e descreveu minuciosamente o sistema binário● Sua máquina de calcular usava a escala

binária. Esta escala, obviamente mais elaborada, é utilizada até hoje e é conhecida como código ASCII (American Standard Code for Information Interchange) - permitiu que máquinas de diferentes fabricantes trocassem dados entre si

● Hoje em dia, a mensagem é criptografada usando-se algoritmos

Page 9: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

9

Criptografia: visão geral

● A criptografia tem quatro objetivos principais:● Confidencialidade da mensagem

● Só o destinatário autorizado deve ser capaz de extrair o conteúdo da mensagem da sua forma cifrada

● Integridade da mensagem● O destinatário deverá ser capaz de determinar se a mensagem foi alterada durante a

transmissão

● Autenticação do remetente● O destinatário deverá ser capaz de identificar o remetente e verificar que foi mesmo

ele quem enviou a mensagem

● Não-repúdio ou irretratabilidade do emissor● Não deverá ser possível ao emissor negar a autoria da mensagem

Page 10: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

10

Criptografia: visão geral

● Aplicações● Exemplo: compras pela internet

● Informação que permite a transação: o valor e descrição do produto adquirido precisa estar disponível no dia e na hora que o cliente deseja efetuá-la (disponibilidade)

● O valor da transação não pode ser alterado (integridade)● Somente o cliente que está comprando e o comerciante devem ter acesso à

transação (controle de acesso)● O cliente que estar comprando deve ser quem ele diz ser (autenticidade)● O cliente tem como provar o pagamento e o comerciante não tem como negar o

recebimento (não-repúdio)● O conhecimento do conteúdo da transação fica restrito aos envolvidos

(confidencialidade)

Page 11: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

11

Criptografia: visão geral

● Aplicações● Base para diversas tecnologias e protocolos:

● SSL - Secure Socket Layer: compras online e bancos● SSH - Secure Shell:protocolo de acesso remoto● WEP - Wired Equivalent Privacy: protocolo de proteção de acesso de redes sem fio● Redes VPN usam protocolos com o IPSec - IP Security: proteger as comunicações

entre as organizações● Certificados digitais

Page 12: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

12

Criptografia: conceitos

● Texto plano● É um arquivo qualquer (mensagem, texto, imagem, etc) com

conteúdo legível para todos● É sinônimo de Texto Aberto, Texto Limpo, Texto Claro ou Texto Legível

● Texto cifrado● É resultado da passagem do Texto Plano por algum sistema

criptográfico● É sinônimo de Texto Criptografado, Texto Codificado

Page 13: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

13

Criptografia: conceitos

● Criptografia● Ciência ou arte que dispõe de mecanismos para transformar um Texto

Plano em um Texto Cifrado e vice-versa

● Criptoanálise● Ciência que estuda mecanismos para quebrar os textos cifrados,

através de diversas técnicas e ferramentas de ataques a um sistema criptográfico

● Criptologia● Criptografia + Criptoanálise

Page 14: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

14

Criptografia: conceitos

● Cifragem● Coleção k de funções inversíveis e e d, onde:

● e: M → C● d: C → M, onde d = e-1 que é a função de e● M: é o espaço de mensagens ● C: é o espaço de criptogramas● K: é o espaço de chaves● (e,d) ∈ K, são pares de chaves

● M representa textos de uma linguagem L● ∀ m ∈ M, ∀ e ∈ E, temos que

● e(m) = c oculta o significado de m em L

Page 15: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

15

Criptografia: conceitos

● Cifragem: algoritmo criptográfico● Modelo de implementação, função de f onde:

● f: K x M ↔ C, onde● f executa encriptação

● Dado (e,m), calcula f(e,m) = e(m) = c● f executa decriptação

● Dado (d,c), calcula f(d,c) = e-1(c) = m

Page 16: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

16

Criptografia: conceitos

● Cifragem: exemplo técnica de substituição● O cifrador de César● Considerando as 26 letras do alfabeto

(a,b,c,d,e,f,g,h,I,j,k,m,n,o,p,q,r,s,t,u,v,x,w,y,z), faz-se um deslocamento

● Neste método, com deslocamento = 3, a torna-se d, b torna-se e, c torna-se f, … , z torna-se c

● Número de chaves: 26

Page 17: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

17

Criptografia: conceitos

● Cifragem● A transformação pode ser feita da seguinte forma:

● Atribuindo um equivalente numérico a cada letra:

Page 18: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

18

Criptografia: conceitos

● Cifragem● O algoritmo de encriptação pode ser expresso da seguinte forma. Para

cada letra equivalente ao numérico p, substitua pela letra do texto cifrado c● c = f(e,p) = (p + 3) mod 26

● O deslocamento pode ser de qualquer quantidade, algoritmo generalizado● c = f(e,p) = (p + k) mod 26● k assume um valor entre 1 a 25

● O algoritmo de decriptação é simplesmente● p = f(d,c) = e-1(c) = (c - k) mod 26

Page 19: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

19

Criptografia: conceitos

● Cifragem● Se for conhecido que determinado texto cifrado é uma cifragem de

César, então uma criptoanálise pela força bruta será facilmente realizada, basta experimentar todas as 25 chaves possíveis

● A força bruta é fácil porque● Os algoritmos de encriptar e decriptar são conhecidos● Existem apenas 25 chaves a serem experimentadas● A linguagem do texto claro é conhecida e facilmente reconhecível

● O que realmente torna a criptoanálise com força bruta impraticável é o uso de algoritmos que empregam um número muito grande de chaves

Page 20: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

20

Criptografia: conceitos

● Cifragem● O algoritmo DES - Digital Encryption Standard, por exemplo, utiliza

uma chave de 128 bits, gerando 2128 combinações possíveis, o que demandaria tempo de processamento (força bruta) de 2.300 anos

● Além disso, a entrada pode ser abreviada ou compactada de alguma maneira, dificultando o reconhecimento. Ou seja, o texto claro não será reconhecido quando for descoberto pela criptoanálise com força bruta

Page 21: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

21

Criptografia simétrica

● Uma mesma chave é usada para criptografar e decriptografar os dados● Vantagens: rápida● Desvantagens: chave precisa ser transportada para o destino por

meio inseguro

Page 22: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

22

Criptografia simétrica

● Algoritmo Criptográfico● É uma função matemática utilizada para encriptação/decriptação● Se o algoritmo é secreto, o algoritmo é dito restrito ● Na criptografia moderna, a segurança está baseada na chave

utilizada e não no algoritmo

Page 23: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

23

Criptografia simétrica

● Algoritmo Criptográfico● O algoritmo SEMPRE é descoberto● Ex: RC4, inventado em 1987, mas nunca publicado. Em 1994 foi

descoberto por hackers, atualmente é utilizado no Secure Socket Layer (SSL) e WEP

● Algoritmos públicos são examinados pela comunidade de criptografia parar encontrar suas fraquezas

● Um algoritmo secreto não é uma boa ideia, pois pode ter fraquezas conhecidas apenas pelos hackers

Page 24: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

24

Criptografia simétrica

● Chave criptográfica● É um número ou conjunto de números

● O que é mais prático? ● Proteger uma chave ou um algoritmo?

● Se um algoritmo é quebrado, todos os segredos são descobertos● Se uma chave é quebrada, apenas os dados protegidos por esta chave são

descobertos

Page 25: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

25

Criptografia simétrica

● Gerando uma chave● Deve ser um número escolhido aleatoriamente● Se alguém souber os números atuais é possível prever os números

seguintes? Então não é aleatório● Testes de aleatoriedade:

● Há aproximadamente a mesma contagem de “1s” e “0s”?● Alguns padrões de “1s” e de “0s” aparecem com muita frequência?

● Por exemplo, Feminino (1), Masculino (0)

Page 26: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

26

Criptografia simétrica

● Gerando uma chave● Impossível gerar números aleatórios no computador

● Usa-se geradores de números pseudoaleatórios (PRNG)● O que torna esses números pseudoaleatórios e não aleatórios é que eles são

repetíveis● Para gerar um conjunto de números muito grande, cada um dos 10 dígitos é repetido com

igual frequência

Page 27: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

27

Criptografia simétrica

● Gerando uma chave● Se os números são repetíveis, para que serve um PRNG ?

● É que pode-se alterar a saída utilizando uma entrada (chamada de semente, seed) que precisamos nos certificar que é alterada todas as vezes que quisermos gerar novos números (considerado uma falha de um sistema criptográfico)

Page 28: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

28

Criptografia simétrica

● Gerando uma chave● Entropia é a medida de incerteza de uma chave● Uma chave com alta entropia significa que é uma chave difícil de

ser quebrada● O principal problema que reduz a entropia de uma chave é quando

● O que é codificado pelo algoritmo possui algum significado● No caso de um texto, existe alta densidade de probabilidade da ocorrência de algumas

letras (como as vogais A, E e O no português)

Page 29: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

29

Criptografia simétrica

● Atacando a chave● Ataque de força bruta, testar todas as possibilidades

● Chave de 40 bits: 0 a 1 trilhão● Chave de 56 bits: 0 a 72 quatrilhões

● Cada bit adicionado dobra o número de chaves e o tempo gasto por um ataque de força bruta

● Existem aproximadamente 2300 átomos no universo, se cada átomo fosse um computador que verificasse 2 300 chaves por segundo, levaria 2 162 milênios para pesquisar 1% do espaço de uma chave de 512 bits

Page 30: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

30

Criptografia simétrica

● Atacando a chave● O avanço da computação distribuída, principalmente pela Internet,

contribuiu para o aumento exponencial da capacidade de processamento, que é essencial para a força bruta● Deep Crack → máquina construída para executar uma busca por ataque por força

bruta do espaço de chave de cifragem do DES (56 bits)

● É preciso considerar o tempo durante o qual a informação vai precisar ficar protegida para que seja utilizado o tamanho ideal da chave● Transferência eletrônica tem exposição curta● Planos estratégicos corporativos necessitam do sigilo durante anos● Fórmula da Coca-Cola precisa ser protegida por décadas ou séculos

Page 31: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

31

Criptografia simétrica

● Atacando a semente● Em vez de reproduzir a chave, reproduzir o programa gerador e a

semente● Se invasores adivinharem a semente, tentam reproduzir o gerador (PRNG)

para criar a chave● Solução: uma boa semente

● Semente da Netscape:● Numa transação SSL, deve-se gerar uma chave, o gerador coletava como semente a hora

do dia, o ID do processo e o ID do processo pai● Para obter a semente, foi feito um teste de força bruta no ID (15 bits) e a hora era

facilmente obtida ● Na próxima versão: semente depende da posição do cursor, status da memória, último

pressionamento da tecla, entre outros parâmetros

Page 32: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

32

Criptografia simétrica

● Alguns algoritmos de cifragem simétrica● DES - Digital Encryption Standard ● Triple DES

Page 33: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

33

Criptografia simétrica

● Padronização em Criptografia● Até 1970: não existiam padrões● 1972: National Institute of Standards and Technology, NIST

● Programa para proteção a computadores e comunicação de dados● Estabelecimento de algoritmo criptográfico padrão para permitir

interoperabilidade nas comunicações

Page 34: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

34

Criptografia simétrica

● Padronização em Criptografia● 1973: NIST lança concurso para escolha de um algoritmo padrão

(IBM: vence com uma versão refinada do LUCIFER, criado por Feistel)● 1977: NIST lança o algoritmo padrão, com pequenas alterações, com

o nome DES● 1981-1992: DES adotado também por ANSI e ISO

Page 35: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

35

Criptografia simétrica

● Conceito Cifra de Bloco● Um bloco de texto claro é tratado como um todo e usado para

produzir um bloco de texto cifrado com o mesmo tamanho

● Cifra de Feistel● Cifra de produto: executada de 2 ou mais cifras simples em sequência● Entradas: bloco com n bits e uma chave k bits

Page 36: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

36

Criptografia simétrica

● Cifra de Feistel – Estrutura da Cifra● Entrada: texto de tamanho 2w e uma chave K● O bloco de texto é dividido em duas metades:

L0 e R0

● Ocorrem n rodadas de processamento e depois elas se combinam para gerar o texto cifrado

● Cada rodada i possui como entradas Li-1, Ri-1 e uma chave Ki derivada de K

Page 37: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

37

Criptografia simétrica

● Cifra de Feistel – Estrutura da Cifra● Todas as rodadas são iguais● Uma substituição é feita na metade esquerda L

1)Aplica-se a função F na metade direita R (usando Ki)

2)Aplica-se OU Exclusivo na saída dessa função e a metade L

3)Ocorre uma permutação: troca das duas metades dos dados

Page 38: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

38

Criptografia simétrica

● Cifra de Feistel – Considerações● Tamanho do bloco e da chave: tamanhos maiores significam maior

segurança, mas deixam o algoritmo mais lento, o tradicional é tamanho de 64 bits para o bloco e 128 bits para a chave

● Rodadas: o algoritmo de Feistel com maior número de rodadas oferece maior segurança, o típico são 16 rodadas

● Algoritmo de subchave e função F: quanto mais complexo, maior será a dificuldade da criptoanálise

● Processo de decriptação: é o mesmo algoritmo de encriptação, basta usar como entradas as subchaves Ki em ordem reversa e o bloco criptografado como entrada

Page 39: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

39

Criptografia simétrica

● Algoritmo DES - Digital Encryption Standard ● No DES, os dados são codificados em blocos de 64 bits usando uma

chave de 56 bits● Ele transforma a entrada por uma série de etapas em uma saída de

64 bits e as mesmas etapas são usadas para reverter o processo (é o processo do Feistel)

Page 40: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

40

Criptografia simétrica

● Algoritmo Triple DES● Realiza 3 vezes o algoritmo DES com duas chaves● O 3DES - simples variação do DES, utilizando-o em três ciframentos

sucessivos, podendo empregar uma versão com duas ou com três chaves diferentes

● 56 x 3 =168 bits é mais custoso● É seguro e mais resistente, sendo a versão do DES usada hoje em dia

Page 41: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

41

Criptografia simétrica

● Algoritmo de cifragem simétrica● Vantagem

● Rapidez na criptografia e descriptografia da informação.

● Desvantagens● A chave deve ser trocada entre as partes e armazenada de forma segura, o que

nem sempre é fácil de garantir● A criptografia simétrica não garante a identidade de quem enviou ou recebeu a

mensagem (autenticidade e não-repudiação)● Cada par necessita de uma chave para se comunicar de forma segura. Em geral, se

n pessoas querem se comunicar usando chave secreta, serão necessárias muitas chaves (escalabilidade)

Page 42: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

42

Criptografia simétrica

● Algoritmo de cifragem simétrica● Gerenciamento de chave simétrica

● A criptografia de chave simétrica pode manter seguro seus segredos, mas pelo fato de precisarmos das chaves para recuperar os dados criptografados, devemos mantê- las seguras

● Soluções para o armazenamento de chaves podem ser dispositivos pequenos, projetados para proteger chaves ou senhas

● Utilizar criptografia de chave simétrica para proteger os megabytes de informação e alguma outra técnica para proteger as chaves

Page 43: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

43

Criptografia simétrica

● Algoritmo de cifragem simétrica● Armazenamento de chaves em hardware: tokens

● A vantagem de se utilizar tokens é que um invasor não tem acesso a eles● Quando precisar utilizar uma chave simétrica, transfere-se a chave do token para o

computador● Tokens podem armazenar senhas de várias contas● Utilizar um token para gerar grandes senhas aleatórias e para armazenar essas

senhas● Não é preciso lembrar da senha

● Um cartão inteligente● Um pequeno anexo da porta USB● Um anel de dedo

Page 44: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

44

Criptografia Assimétrica ou deChave Pública

● Na criptografia assimétrica, a chave utilizada para encriptar não é usada para decriptar● As chaves são significativamente diferentes

(ke,kd)

● Elas são parceiras e o par é único, possuem um relacionamento matemático, o que uma chave encripta a outra decripta

c = E(ke, m) m = D(kd, c)

Page 45: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

45

Criptografia Assimétrica ou deChave Pública

● Descrição do funcionamento● Vamos supor que Alice queira enviar uma mensagem criptografada para Bob● O primeiro passo é Alice obter e verificar a chave pública de Bob ● Ela então usa-a para criptografar a mensagem e depois envia a mensagem para

Bob● Este, por sua vez, usa sua chave privada para decriptografar a mensagem● Qualquer um pode ter a chave publica de outra pessoa, Bob encoraja isto,

enviando-a para seus amigos ou publicando-a em boletins, Eve não tem nenhuma dificuldade em obtê-la

● Se Eve intercepta a mensagem de Alice para Bob, ela não consegue decriptografá-la com a chave pública, apenas com a chave privada

● Novamente, é importante salientar que uma área potencial de vulnerabilidade é quão bem a chave em si está protegida

Page 46: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

46

Criptografia Assimétrica ou deChave Pública

● Descrição do funcionamento● Alice deseja enviar uma mensagem a Bob: precisa primeiro encontrar

a chave pública dele, feito isto, ela cifra sua mensagem utilizando a chave pública de Bob, despachando-a em seguida

● Bob recebe a mensagem, a decifra facilmente com sua chave privada

Page 47: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

47

Criptografia Assimétrica ou deChave Pública

● Descrição do funcionamento● Eve, que interceptou a mensagem em trânsito, não conhece a chave

privada de Bob, embora conheça sua chave pública, este conhecimento não a ajuda a decifrar a mensagem

● Mesmo Alice, que foi quem cifrou a mensagem com a chave pública de Bob, não pode decifrá-la agora

Page 48: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

48

Criptografia Assimétrica ou deChave Pública

● Desempenho● Para informação em grande quantidade, algoritmos de chave pública

são lentos● Processam 20Kb a 200Kb/s● Muito lento para processamento de dados em volume

● Algoritmos de chave simétrica podem encriptar informação em grande quantidade bem mais rapidamente● 10Mb/s, 20Mb/s, 50Mb/s ou mais

● Solução: usar a combinação de criptografia de chave simétrica e de chave pública

Page 49: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

49

Criptografia Assimétrica ou deChave Pública

● Algoritmos● Dos algoritmos assimétricos até hoje propostos, poucos são

considerados seguros e práticos● RSA● El Gamal● ECC – Criptografia de Curva Elíptica

● Outros algoritmos● Inseguros, muito lentos ou requerem chaves muito longas

Page 50: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

50

Criptografia Assimétrica ou deChave Pública

● Algoritmo RSA● O nome é formado com iniciais dos autores: Rivest, Shamir &

Adleman (1978)● Mais usado e fácil de implementar entre os algoritmos assimétricos● O algoritmo vem resistindo a quase 20 anos de análise● Sua segurança é baseada na dificuldade de se fatorar números

inteiros primos● É fácil multiplicar dois números primos para obter um terceiro número, mas muito

difícil recuperar os dois primos a partir daquele terceiro número – fatoração

Page 51: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

51

Criptografia Assimétrica ou deChave Pública

● Algoritmo RSA exemplo:● Fatores primos de 3.337 são 47 e 71

● Teorema fundamental da aritmética

● Geração da chave pública: multiplicar dois primos grandes, qualquer um pode fazer isto

● Derivar a chave privada a partir da chave pública: fatorar um grande número

● Se o número for grande o suficiente e bem escolhido, então ninguém pode fazer isto em uma quantidade de tempo razoável

Page 52: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

52

Criptografia Assimétrica ou deChave Pública

● Descrição de funcionamento do RSA● Escolhe-se dois números primos extensos, p e q, (tipicamente maiores que

10100)● Calcula-se:

n = p × q e z = (p - 1) × (q - 1)

● Escolher um número relativamente primo a z e chamá-lo de e● isto é, tal que e não tenha fatores primos comuns com z● ou, mdc(z,e) = 1

● Encontre (calcule) d tal que: e.d mod z = 1 (sendo d < z)● Equivalente a dizer que:

e.d = 1 mod z

d = e-1 mod z

Page 53: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

53

Criptografia Assimétrica ou deChave Pública

● Descrição de funcionamento do RSA● O texto simples (uma string de bits) é dividido em blocos, de modo que

cada mensagem de texto simples, m , fique no intervalo 0 ≤ m < n● Para encriptar um mensagem m, calcule

E(e,n,m) = c = me mod n● Para decriptar, calcule

D(d,n,c) = m = cd mod n● É possível provar que, para todo m na faixa especificada, as funções de

criptografia e decriptografia são inversas entre si ● Para encriptar precisamos de e e n. Para decriptar precisamos de d e n.

Assim, a chave pública consiste do par (e,n) e a chave privada do par (d,n)

Page 54: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

54

Criptografia Assimétrica ou deChave Pública

● Exemplo RSA● Escolhe-se p = 3 e q = 11● Calculando n = p × q e z = (p-1) × (q-1), n=33 e z=20● Valor adequado como número primo, em relação a z é o 7, (7 e 20 não

possuem fatores comuns), e = 7● Obtenção do valor de d

● Solução da equação (e × d) mod z = 1, d = 3

● Texto cifrado c para uma mensagem de texto simples m é dado por

c = m7 (mod 33)● O texto cifrado é decodificado pelo receptor usando a regra

m = c3 (mod 33)

Page 55: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

55

Criptografia Assimétrica ou deChave Pública

● Segurança do algoritmo RSA● A segurança do método é baseada na dificuldade de se fatorar

números grandes ● Se um criptoanalista puder fatorar n, ele poderia então descobrir p e

q, e destes, z ● A RSA Corporation tem emitido uma série de desafios para fatorar

números de mais de 100 dígitos decimais ● Números de até 174 dígitos decimais (576 bits) têm sido fatorados, e

assim o uso do algoritmo RSA com chaves de 512 bits é inaceitável para muitos propósitos

Page 56: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

56

Criptografia Assimétrica ou deChave Pública

● Segurança do algoritmo RSA● RSA Corporation recomenda um comprimento

de chave de ao menos 768 bits (em torno de 230 dígitos decimais), por um período de segurança a longo prazo de aproximadamente 20 anos

● Os algoritmos de fatoração usados são os melhores disponíveis

● Algoritmos criptográficos assimétricos que usam multiplicação de números primos como função de uma via estarão vulneráveis quando um algoritmo de fatoração mais rápido for descoberto

Page 57: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

57

Programas de Craqueamento de Senhas

● Aircrack ● Suíte de ferramentas criada para expor sistemas com Privacidade Equivalente a

Redes Cabeadas (WEP) e Acesso Protegido a Wi-Fi (WPA), que são implementadas comumente como soluções de criptografia para redes sem fio. Foi criada em 2010 e funciona com várias outras ferramentas, cada uma contribuindo para a coleta dos pacotes, craqueamento de senhas e decriptografia da informação. O Aircrack é um componente que craqueia senhas WEP e WAP.

● Cain & abel ● Em 2011, o site insecure.org colocou o Cain & Abel entre as melhores ferramentas

de recuperação de senha para a plataforma Windows. Com interface amigável, é capaz de lidar com uma enorme variedade de tarefas● Recuperar senhas com farejador de rede, craquear senhas criptografadas usando dicionário, força

bruta e ataques de criptoanálise, gravar conversas VoIP, decodificar senhas embaralhadas, revelar caixas de senha, descobrir senhas em cache, e analisar protocolos de roteamento, permite também corromper o protocolo ARP

Page 58: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

58

Programas de Craqueamento de Senhas

● John the Ripper ● Disponível atualmente para muitas versões de UNIX, DOS, Win32,

BeOS e OpenVMS, o John the Ripper é um craqueador rápido de senha, seu principal objetivo é detectar senhas fracas de UNIX, possui seus próprios módulos otimizados para cifragens, formatos de texto e arquiteturas diferentes, podendo detectar texto criptografado por programas que usam algoritmos, como o DES padrão, o DES de tamanho duplo, o DES estendido, o MD-5 e o Blowfish

Page 59: Criptografia – Aula 06professor.ufop.br/sites/default/files/janniele/files/aula06.pdf · 2 Criptografia Definição Estudo dos princípios e técnicas pelas quais a mensagem ou

59

Bibliografia básica

● NAKAMURA, Emílio T.; de GEUS, Paulo L. Segurança de redes em ambientes cooperativos. 3a edição. Editora Novatec

● BASTA, Alfred; BASTA, Nadine; BROWN, Mary. Segurança de computadores e teste de invasão. Tradução Lizandra Magon de Almeida; revisão técnica Ronaldo Augusto de Lara Gonçalves. 2.ed norte-americana. São Paulo: Cengage Learning, 2014

● Stallings, William. Criptografia e Segurança de Redes - Princípios e Práticas. 4a edição. Prentice-Hall

● LIMA, Helen .C.S. Notas de aula. Segurança e auditoria de sistemas. Universidade Federal de Ouro Preto