criptografia e seguranÇa de dados · segurança e consequentemente menor será...

23
03/03/2016 1 CRIPTOGRAFIA E SEGURANÇA DE DADOS PROF. FABIANO TAGUCHI http://fabianotaguchi.wordpress.com AULA 08 CRIPTOGRAFIA ASSIMÉTRICA CHAVES E ALGORITMOS

Upload: others

Post on 14-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

1

CRIPTOGRAFIA E SEGURANÇA DE DADOS

PROF. FABIANO TAGUCHI

http://fabianotaguchi.wordpress.com

AULA 08

CRIPTOGRAFIA ASSIMÉTRICA

CHAVES E ALGORITMOS

Page 2: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

2

CONCEITOS DA TECNOLOGIA

São utilizadas chaves diferentes para o processode cifragem e decifragem de um texto pleno.

Tanto emissor quanto receptor possuem duaschaves: a pública que pode ser divulgada e aprivada que é de exclusividade do proprietário.

CRIPTOGRAFIA ASSIMÉTRICA

Page 3: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

3

Emissor deseja enviar uma mensagem, então fazuso da chave pública do receptor e criptografa amensagem para enviar.

Quais garantias temos com a segurança da

informação?

PROCESSO

Page 4: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

4

Page 5: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

5

GERENCIAMENTO DE CHAVES

VANTAGENS E DESVANTAGENS

Imagine a seguinte situação:

Ana deseja enviar uma mensagem a Gabriela,então Ana irá fazer uso de duas chaves nesteprocesso. Primeiro ela faz uso de sua chaveprivada para cifrar um texto, logo em seguidafaz uso de sua chave pública de Gabriela pararealizar outra cifragem, com isso, quandoGabriela receber o documento deve usarprimeira a sua chave privada e depois a chavepública de Ana.

DUPLA CRIPTOGRAFIA

Page 6: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

6

• Não é necessário haver o compartilhamentode chaves no meio de comunicação, o quedá mais segurança ao processo;

• Mas como garantir que o detentor da chaveé realmente quem se diz ser?

VANTAGENS

Como fazer o gerenciamento seguro dessaschaves públicas?

Usar uma página Web?Servidor on line?Autoridades certificadoras?

GERENCIAMENTO DAS CHAVES

Page 7: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

7

• Um algoritmo de criptografia assimétrica émuito lento se comparado com algoritmosde criptografia simétrica

• Criptografar grandes volumes de dadospode ser algo demorado e com grande custocomputacional.

DESVANTAGENS

Um algoritmo baseado em criptografiaassimétrica cifram informações a umavelocidade de 20kb a 200kb por segundo.

Já os algoritmos de chave simétrica fazemeste mesmo processo em uma velocidade quepode variar entre 30 a 50 MB por segundo.

DESEMPENHO

Page 8: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

8

Pode ser combinado uma situação em quecriptografia simétrica e assimétrica podem serutilizadas em conjunto e em único processo,mas como?

SOLUÇÃO?

Ana realiza a criptografia simétrica em umtexto pleno a partir de uma chave que passa aser denominada chave de sessão, essa chave desessão é criptografada com a chave pública deGabriela, e então tudo é enviado aodestinatário.

Quando esse texto cifrado chega ate Gabriela,a mesma deverá utilizar a sua chave privadapara iniciar o processo de cifragem, com issohouve a garantia de segurança no envio dachave simétrica (chave de sessão).

Page 9: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

9

Chave Simétrica de Sessão

Chave Pública

Chave Simétrica de Sessão Criptografada

Texto Plano

Texto Criptografado

Algoritmo de Chave Simétrica

Algoritmo de Chave Pública

Algoritmo de Chave Pública

Chave Privada

Chave Simétrica de Sessão Criptografada

Chave Simétrica de Sessão

Texto Criptografado

Texto Plano

Algoritmo de Chave Simétrica

Page 10: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

10

UM EXEMPLO DESTA APLICAÇÃO É O PGP

PGP possibilita a criptografia de correioeletrônico.

http://www.pgpi.org

EXEMPLO

CRIPTOGRAFIA ASSIMÉTRICA

Função da chave Qual chave? De quem?

Criptografar dados para o

destinatário

Chave pública Destinatário

Assinar a mensagem Chave privada Remetente

Descriptografia os dados para

ler a mensagem

Chave privada Destinatário

Verificar a assinatura de uma

mensagem

Chave pública Remetente

Page 11: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

11

COMUNICAÇÃO SEGURA

“Alice”“Bob”

Documento

Eletrônico

AssinaturaDigital

CriptografiaDescriptografia

Verificaçãode Assinatura

Internet

Certificação

Validade doCertificado

ALGORITMOS ASSIMÉTRICOS

Page 12: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

12

RON RIVEST, ADI SHAMIR E LEN ADLEMAN

É o mais conhecido e utilizado comercialmente.Este algoritmo faz uso de um par de chaves quederiva-se de dois números primos muito grande.Os números primos devem ser maiores de 10^100.

Esse número n deve conter mais de 100 dígitos.

ALGORITMOS ASSIMÉTRICOS

RON RIVEST, ADI SHAMIR E LEN ADLEMAN

C = Me mod n

Obter m computacionalmente é muito difícilquando n tem 300 dígitos ou mais.

ALGORITMOS ASSIMÉTRICOS

Page 13: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

13

RSA – CRIAÇÃO DE UMA CHAVE:

1) Aleatoriamente escolha dois números primos queassumem os valores de p e q;

2) Calcule n a partir da multiplicação dos números;3) Calcule o total de z = (p-1)*(q-1);4) Encontre um número primo relativo de z, esse

valor será o e;5) Encontre um valor d, que é obtido através da

congruência de: d *e mod z = 1

ALGORITMOS ASSIMÉTRICOS

RSA – CRIAÇÃO DE UMA CHAVE:

1) Seja p = 7 e q = 172) Seja n = 17*7 = 1193) Seja z = (17-1) * (7-1) = 964) Seja e = 5, pois 96 e 5 são primos relativos5) Seja d = 77, onde 5*77 mod 96 = 1

LogoCHAVE PRIVADA = (d, n) = (77, 119)CHAVE PÚBLICA = (e, n) = (5,119)

ALGORITMOS ASSIMÉTRICOS

Page 14: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

14

CIFRAGEM E DECIFRAGEM

Ana escolhe o número 19 para ser cifrado e enviadoa Beatriz

O processo de cifragem de Ana será:19^5 mod 119 = ? (66)

O processo de decifragem de Beatriz será:66^77 mod 119 = ? (19)

ALGORITMOS ASSIMÉTRICOS

EXEMPLO

Escolhe-se p=3 e q=11

• n=3*11 = 33• z=20• d=7, pois o número 7 e 20 são primos relativos• e=3, pois 7*3 mod 20 = 1

ALGORITMOS ASSIMÉTRICOS

Page 15: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

15

CHAVE PRIVADA (3)CHAVE PÚBLICA(7)

1) PARA O TEXTO CIFRADOP3 MOD 33

2) PARA O TEXTO DECIFRADOC7 MOD 33

ALGORITMOS ASSIMÉTRICOS

Exemplo: Codificação do texto simples “SUZANNE”.

Cada letra do alfabeto é representada por um número DE 01 A 26.

Texto simples (P) Texto cifrado (C) Depois da descriptação

Cálculo do transmissor Cálculo do receptor

Simbólico Numérico Simbólico

Page 16: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

16

RSA

Quais são os fatores primos de 3.337?

Chave pública?Chave privada?

ALGORITMOS ASSIMÉTRICOS

Page 17: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

17

DH (DIFFIE HELLMAN)

É um dos primeiros algoritmos a ser implantadoa questão das trocas de chaves.

O grande problema foi a questão logarítmica dastrocas de chaves que o tornava lento.

ALGORITMOS ASSIMÉTRICOS

DH (DIFFIE HELLMAN)

Dado um número primo p e números x e y paraos quais existe um número k tal que:

Y = xk mod p

ALGORITMOS ASSIMÉTRICOS

Page 18: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

18

EL GAMAL

O algoritmo de Gamal é baseado no cálculo dologaritmo discreto. A segurança é baseada nofato da dificuldade de calcular logaritmosdiscretos em um corpo finito.

ALGORITMOS ASSIMÉTRICOS

RABIN

Este algoritmo baseia na dificuldadecomputacional de um intruso calcular o textolegível a partir do conhecimento do textoilegível correspondente.

ALGORITMOS ASSIMÉTRICOS

Page 19: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

19

RABIN

1) Encontrar dois números inteiros primos elongos, que passam a ser chamados de p eq;

2) Calcula-se o produto desses números,chamando o resultado de n;

CHAVE PRIVADA= (p e q)CHAVE PÚBLICA = (n)

ALGORITMOS ASSIMÉTRICOS

APLICAÇÃO DO RABIN

Supondo que o texto legível é “DABAC”, com oprincípio da redundância o texto se torna“DABACAC”, usando o princípio de substituiçãotemos m sendo representado por: 4121313.

Sendo p = 1123 e q=7713, logo n = 8672929

Emissor calcula m² mod n e envia (577647)

ALGORITMOS ASSIMÉTRICOS

Page 20: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

20

� Quanto maior a chave maior será o nível desegurança e consequentemente menor seráa velocidade de execução do algoritmo.

� Um algoritmo de chave pública deve utilizaruma chave pelo menos duas vezes maislongo que um algoritmo de chave simétrica.

ALGORITMOS

SIMÉTRICA X ASSIMÉTRICA

Nº de participantes

Criptografia Simétrica

n(n-1)/2

Criptografia Assimétrica

2n

2 1 4

4 6 8

8 28 16

16 120 32

Page 21: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

21

Simétrica Assimétrica

Funcionamento

� Utiliza um algoritmo e umachave para cifrar e decifrar

Requisito de Segurança

� A chave tem que ser mantidaem segredo

� Tem que ser impossíveldecifrar a mensagem

� Algoritmo mais alguma partedo texto cifrado não devemser insuficientes para obter achave

Funcionamento

� Utiliza um algoritmo e um parde chaves para cifrar edecifrar

Requisito de Segurança

� Uma chave é pública e aoutra tem que ser mantidaem segredo

� Algoritmo com alguma partedo texto cifrado com uma daschaves não devem sersuficientes para obter a outrachave

EXERCÍCIOS

Page 22: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

22

01 – Como funcionam as chaves públicas eprivadas em um sistema de criptografiaassimétrico?

02 – Certo ou errado?A criptografa de chave pública utilizaobrigatoriamente um par de chaves. Neste caso,as chaves não são compartilhadas, e cada umapossui um papel: uma encripta e outra decripta.

EXERCÍCIOS DE APRENDIZAGEM

03 – Certo ou errado?A criptografia simétrica se comparada com acriptografia assimétrica é menos segura. isto sedá pelo fato de que na criptografia simétrica achave deve ser compartilhada entre oremetente e o destinatário.

EXERCÍCIOS DE APRENDIZAGEM

Page 23: CRIPTOGRAFIA E SEGURANÇA DE DADOS · segurança e consequentemente menor será avelocidadedeexecução do algoritmo. Um algoritmodechavepública deve utilizar uma chave pelo menos

03/03/2016

23

04 – Dois usuários querem estabelecer umachave secreta comum através de um canalinseguro usando o algoritmo RSA. Exemplifiquecomo deve ser feito o processo adotado parageração da chave pública e privacidade de umdos dois usuários.

EXERCÍCIOS DE APRENDIZAGEM