T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun...
Transcript of T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun...
![Page 1: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/1.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Topicos em Seguranca da Informacao
Aula 3
Ivan Sendin
FACOM - Universidade Federal de [email protected],[email protected]
30 de agosto de 2019
![Page 2: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/2.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
![Page 3: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/3.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
github
Go Lang, ML, Python, JavaScript, seguranca,criptografia,...
![Page 4: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/4.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Aula Passada
Exponencial
PoW (Hashcash)
Diceware
![Page 5: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/5.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
![Page 6: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/6.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Altura
Dificuldade
Timestamp
Transacoes
"Random"
Anterior
![Page 7: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/7.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Altura
Dificuldade
Timestamp
Transacoes
"Random"
Anterior
Altura
Dificuldade
Timestamp
Transacoes
"Random"
Anterior
Altura
Dificuldade
Timestamp
Transacoes
"Random"
Anterior
Altura
Dificuldade
Timestamp
Transacoes
"Random"
Anterior
![Page 8: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/8.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
![Page 9: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/9.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Cifrador
Confidencialidade
A/B compartilham uma chave secreta
(como??)
Cifram/Decifram a informacao
![Page 10: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/10.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
openssl
openssl enc -d -aes-256-cbc -salt -in file.enc
-out saida.txt
-pass file:pass.txt
openssl enc -d -aes-256-cbc -salt -in file.enc
-out saida.txt
-pass file:pass.txt
![Page 11: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/11.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Cifrador
Alice e Bob compartilham ”pass.txt”
Num mundo smples: pen drive, papel,...
Num mundo real: problemao!!
Como voce conecta com seguranca em um site dooutro lado do mundo??
![Page 12: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/12.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Numeros Grandes
Criptografia usa numeros grandes
256 bits, 4096 bits...
+,-,×,...
”Vetor”de Inteiros
O tamaho do numero esta limitado pela memoria docomputador
(arquitetura do hardware)
![Page 13: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/13.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Funcoes Trapdoor
Algumas computacoes sao faceis!
5× 7 = 35
Algumas sao difıceis
2|35?, 3|35, 5|35
Poly X Exp
Na pratica, existe um tamanho limite entre o quepode ser computado e o que nao pode!
![Page 14: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/14.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Exponenciacao modular
an (mod p)
![Page 15: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/15.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Exponenciacao modular
3n (mod 19)
![Page 16: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/16.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Exponenciacao modular
n 3n 3n (mod 19)1 3 32 9 93 27 84 81 55 243 156 729 77 2187 28 6561 69 19683 18
10 59049 1611 177147 1012 531441 1113 1594323 1414 4782969 415 14348907 1216 43046721 1717 129140163 1318 387420489 1
![Page 17: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/17.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Exponenciacao modular
O algoritmo e exponenciacao intuitivo gasta O(2n)operacoes de multiplicacao
(n e o numero de bits do expoente)
Um algoritmo mais inteligente tem ganhoexponencial de desempenho....
Por exemplo, para calcular k8:
Intuitivo: k .k .k .k .k .k .k .k
Inteligente: ((k2)2)2
![Page 18: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/18.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Problema do logaritmo discreto
Dado l , b, p , determinar k tal que bk (mod p) = l
Dado 17 , determinar k tal que 3k (mod 19) = 17
Intratavel
O problema do log discreto pode ser computado emum computador classico em tempo polinomial?
![Page 19: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/19.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
Alice e Bob querem conversar de forma privada
Eva (eavesdropper) fica escutando tudo...
Alice e Bob conhecem um bom cifrador
mas nao compartilham nenhum segredo....
Todos envolvidos conhecem o basico dematematica: multiplicacao (exponenciacao)
![Page 20: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/20.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
Alice, Bob e Eva conhecem uma base g
(Alice pode escolher um numero aleatorio e colocarno blog dela...)
Alice escolhe uma chave a e calcula g a
Bob escolhe uma chave b e calculae gb
Alice faz um bradcast de g a, Bob faz de gb
Alice conhece: g , a, g a, gb
Bob conhece: g , b, gb, g a
Eva conhece: g , gb, g a
![Page 21: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/21.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
Alice conhece: g , a, g a, gb
Alice faz (gb)a, obtendo g ab
Bob conhece: g , b, gb, g a
Bobo faz (g a)b, obtendo gba = g ab
Eva conhece: g , gb, g a
Eva faz o que??
g a+b!!!
A chave e g ab
![Page 22: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/22.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
g = 5
Alice conhece a = 3
Bob conhece b = 4
Qual e a chave de Alice/Bob?
O que Eva consegue obter?
![Page 23: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/23.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
g = 5
Alice conhece g = 5, a = 3, envia g a = 125
Bob conhece b = 4, g = 5, envia gb = 625
Eva: g e captura 125, 625
Alice faz 6253 = 244140625
Bob faz 1254 = 244140625
a chave e 244140625
Eva?
![Page 24: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/24.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves
Calcular o logaritmo nao e uma tarefa realmentecomplicada...
Quem conhece g e g a, conhece a
O protocolo real e feito “modulo p”
g a (mod p)
O problema do logaritmo discreto e complexo(=muito tempo)
(repita as contas com p = 37)
![Page 25: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/25.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves - Versao Discreta
Valores publicos: g = 5, p = 37
Alice escolhe a = 3
Calcula g a = 125
125 (mod 37) = 14
Alice envia 14 pelo canal inseguro
![Page 26: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/26.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves - Versao Discreta
g = 5, p = 37, a′ = 14
Bob escolhe b = 4
calcula gb = 625
625 (mod 37) = 33
![Page 27: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/27.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves - Versao Discreta
g = 5, p = 37, a′ = 14, b′ = 33
Alice calcula (gb)a
333 = 35937
35937 (mod 37) = 10
Bob calcula (g a)b
144 = 38416
38416 (mod 37) = 10
a chave e 10
![Page 28: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/28.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Escolha de chaves - Versao Discreta
g = 5, p = 37, a′ = 14, b′ = 33
Eva? 5, 37, 14, 33....
Por forca bruta calcula a (ou b)
4k bits
![Page 29: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/29.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Troca de Chaves
Ou key agreement
Conhecido com Protocolo Diffie-Hellman (DH)
Ralph Merkle
1974 (Graduacao em UC Berkley)Projeto rejeitado pelo professorArtigo rejeitado pela ACM
I am sorry to have to inform you thatthe paper is not in the main stream ofpresent cryptography thinking and Iwould not recommend that it be publishedin the Communications of the ACM.
![Page 30: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/30.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Troca de Chaves
Base para a criptografia de chave publica
Hashing (Merkle Tree /Patente 1979)
Diffie-Hellman
New directions in cryptography
Diffie-Hellman-Merkle key exchange
![Page 31: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/31.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
RSA
Rivest Shamir Adleman - 1977
Clifford Cocks - 1973
Communications-Electronics Security Group(CESG)/MI51997
Seguranca esta atrelada a dificuldade de fatoracaode numeros (grandes)
1024/2048/4096
(Quase) Padrao para ciframento assimetrico
(Nao e verdade nas criptomoedas!)
Usado em assinaturas
![Page 32: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/32.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
RSA - Exemplo
Para o RSA eu vou mostrar alguns exemplos....
omitir teoremas, lemas e provas
![Page 33: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/33.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
’O’ = 79
e=263
79**263 =
119103633132394031611410757850229209301851346209308631116830
957951721807627305691976414497175853449195305231884529725564
155746411063263716015816443890687214665126154139978954049467
359585932731778014521575630696619093761510807110870269289641
327510266673413110636550743558068243455440126122503959437910
734602801604560325141268813807459657875679617035692376010619
422645904847024614161813532211602751388718141823845283790397
546382194733011031182480704891415251766845411408755167652731
99147375096105153839L
n=713
(79**263) % 713 = 168
![Page 34: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/34.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
[168L]
d=527
(168**527)% 713 = 79
[’O’]
![Page 35: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/35.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Existe um metodo pra gerar e=263, d=527 en=713.
Eles estao ammarados um no outro
O e e a chave publica(PK): todo mundo podeconhecer e associar a um determinado indivıduo
Todo mundo consegue cifrar
Apenas quem conhece d(chave privada/secreta SK)
![Page 36: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/36.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Vamos inverter a ordem das operacoes...
’O’ = 79
79 ** 527 % 713 = 145
O individuo que conhece d gerou o par (79,145)!
![Page 37: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/37.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
(79,145)
145**263 % 713 = 79
![Page 38: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/38.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Somente o dono da chave SK consegue gerar o par(X , S)...
tal que Spk = X !!
(OK, com numeros deste tamanho eu tambemconsigo!)
Isso e uma assinatura digital
Sign(M) := Sign(H(M))
![Page 39: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/39.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Curvas Elipticas
Curvas Elipticas
Outro sistema de chaves assimetricas
Assinaturas Digitais
chaves e assinaturas menores (256bits)
DH sobe um par ordenado
Bitcoin!
![Page 40: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/40.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC
Uma ordem de transferencia de bitcoins de umendereco(≈conta) para outro endereco
Os bitcoins sao criados em uma transacao especialchamada de coinbase
E a primeira transacao de um bloco
As transacoes sao identificadas pele seu hash code
Pos Address Valor
1 Pk1 302 Pk2 20
TxHash 0xabcdef
Apos esta transacao Pk1 e Pk2 estao aptos a gastarseus bitcoins
![Page 41: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/41.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Nota: Uma transacao bitcoin e mais complexa do quevoce vera na aula de hoje. Uma transacao e o resultadoda execucao de um script que permite a implantacao dealgumas funcionalidades interessantes. A aula de hojemodela uma transacao para uma moeda bem simples!
![Page 42: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/42.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
Definir a entrada
Definir a saıda
Assinar
Enviar para a rede P2P do BTC
(Para o usuario e mais simples!)
![Page 43: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/43.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
O ”dono”da Pk1 gasta seus B20 em uma transacaoindicando a(s) entrada(s):
1 O TxHash da transacao: 0xabcdef2 A posicao na transacao: 1
![Page 44: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/44.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
O ”dono”da Pk1 gasta seus B20 em uma transacaoindicando a(s) saida(s):
1 PKo ,Vo
2 PKp,Vq
3 PKr ,Vs
A soma dos valores deve ser inferior ou igual aototal da entrada
A transacao e gasta integralmente!
Bem diferente de uma conta de banco.
![Page 45: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/45.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
E possıvel que existam enderecos de troco
Pode ser igual ao da entrada (fortementedesaconselhavel!)
![Page 46: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/46.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
A diferenca entre os valores de entrada e saıda e aremuneracao dos mineradores
tip/taxa
(os mineradores recebem mais do que o valor datransacao de coinbase)
Nao existe padrao para este valor
No futuro, os mineradores receberao apenas estastaxas
No criterio de escolha de mineracao de uma tx,incluem valor da taxa, tamanho, idade,...
![Page 47: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/47.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC - Gastando!
Uma vez que as entradas e saıdas sao definidas
A tx deve ser assinada por cada SK correspondentea PK da entrada
Agora e so mandar para a rede!
![Page 48: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/48.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
UTXO
Unspent Transaction Output
Quando a TX chega na rede os mineradoresverificam se cada uma das transacoes da entradaainda nao foram gastas
(Alem da assinatura!)
Os minerados precisam manter um ED com astransacoes disponıveis
(muita memoria!!)
![Page 49: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/49.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Uma transacao BTC
PKs (sem CPF,RG,...)
pseudo anonimato do BTC!
Existem moedas mais anonimas que o Bitcoin
![Page 50: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/50.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Tx e Anonimato
Se voce faz varios gastos usando oa entrada comotroco....podemos aprender sobre os seus habitos deconsumo!
Existem heurısticas aplicadas no troco
![Page 51: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/51.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Tx e Anonimato
As entradas de um xt precisam ser assinadas...
Momento sensıvel e ıntimo
Quase uma regra: PKs na entrada de umatransacao pertencem a mesma pessoa!!
Transitivo
![Page 52: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/52.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Tx e Anonimato
Dusting
Alguem espalha uma quantidade minima de BTCem diversas PKs
Quando algum for gastar, o software queadministra a carteira tem a tendencia a juntar estespequenos valores na entrada da tx
Revela um entidade na blockchain
![Page 53: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/53.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Word Cloud
Automatico/automatizado
Selecionar alguns sites
web scraping/parsing
Resultado: codigo(s), lista de palavras, links dossites, e a imagem
![Page 54: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/54.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Aniversario
Implementacao de Analise
O Paradoxo do Aniversario e um metodo parabuscar colisoes
Ingenuo: Par a Par (ou Fixo)
Paradoxo: Conjunto
![Page 55: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/55.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Aniversario
Implementar a busca ingenua e usando o paradoxo
comparar a media do numero de operacoes dehash necessarias para achar uma colisao detamanho n
Grafico comparativo
![Page 56: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/56.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Forca Bruta no RSA
pk = (e, n)
c = pe (mod n)
Sao conhecidos: c , e, n
Como descobrir p??
![Page 57: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/57.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Forca Bruta no RSA
Como descobrir p??
Forca Bruta!!
para t : 2..(n − 1),
execute o ciframento e verifique a igualdade
(biblioteca de numeros grandes!)
![Page 58: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/58.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Forca Bruta no RSA
Entrada: link no site
Entrega: codigo e medicoes de tempo
![Page 59: T opicos em Seguranca˘ da Informa˘c~ao Cifrador Aula 3 Fun ...sendin/Cursos/TSEG/2S2019/aula3.pdf · -pass file:pass.txt openssl enc -d -aes-256-cbc -salt -in file.enc-out saida.txt-pass](https://reader033.fdocument.pub/reader033/viewer/2022060704/6070507f5cd4b343ec5a2b12/html5/thumbnails/59.jpg)
TSEG-3
Ivan Sendin
AulaAnte-Passada
Aula Passada
Cifrador
Funcoes Trapdoor
Estabelecimentode Chaves
Exercicios
Exercicios - Resumo
Word Cloud: 5
Aniversario/analise: 7
Forca Bruta no RSA: 6
Alvo:1, Maximo: 2.