Segurança de Redes de Computadores
description
Transcript of Segurança de Redes de Computadores
![Page 1: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/1.jpg)
Segurança de Redes de Computadores
Prof. Paulo Fernando da Silva
Faculdades SENAC FlorianópolisPós-Graduação em Segurança da Informação
![Page 2: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/2.jpg)
Criptografia
• Conceitos Básicos;
• Criptografia Simétrica;
• Algoritmos Simétricos;
• Criptografia Assimétrica;
• Algoritmos Assimétricos;
• Hash e algoritmos;
• Assinatura digital;
![Page 3: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/3.jpg)
Conceitos Básicos
• Criptografia é a ciência da escrita secreta;
• É a base para a implementação de vários serviços de segurança;
• Um dos primeiros algoritmos é o cifrador de césar:– Y = E(X) = x+3;– X = D(Y) = x-3;
![Page 4: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/4.jpg)
Conceitos Básicos
![Page 5: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/5.jpg)
Conceitos Básicos
• Crifrador de césar não possui chave;
• A força está no algoritmo;
• A chave tira a responsabilidade do algoritmo;
• Chave é um seletor de algoritmos;
• Como seria o cifrador de césar sem chave?
![Page 6: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/6.jpg)
Conceitos Básicos
![Page 7: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/7.jpg)
Conceitos Básicos
![Page 8: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/8.jpg)
Criptografia Simétrica
• Usam a mesma chave para cifrar e decifrar;
• Também chamados de algoritmos de chave secreta;
• São algoritmos geralmente rápidos;
![Page 9: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/9.jpg)
Criptografia Simétrica
![Page 10: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/10.jpg)
Criptografia Simétrica
• Segurança se baseia na qualidade do algoritmo;
• Também no tamanho de chave;
• Segurança não se baseia no conhecimento do algoritmo;
![Page 11: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/11.jpg)
Criptografia Simétrica
• Possui um problema sério na distribuição de chave;
• A chave deve ser compartilhada, mas deve ser secreta;
• Para um grupo de n participantes, serão necessárias n(n-1)/2 chave distintas;
![Page 12: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/12.jpg)
Criptografia Simétrica
![Page 13: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/13.jpg)
Criptografia Simétrica - Exemplos
• Cifrador monoalfabético;
• Permutação dos 26 caracteres: 26! = 4x10^26
• A chave é a seqüência de caracteres para permutação
• Difícil de quebrar com força bruta
![Page 14: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/14.jpg)
Criptografia Simétrica - Exemplos
• Refletem a freqüência das letras do idioma em que foi escrito
• Fácil de quebrar através da análise da freqüência relativa das letras do idioma
• Chave = “QWERTYUIOPASDFGHJKLZXCVBNM”
![Page 15: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/15.jpg)
Criptografia Simétrica - Exemplos
• Cifrador playfair;
• Baseado em uma matriz de 5 x 5 usando uma chave K;
• A chave é colocada no início e depois é colocado o resto do alfabeto;
• Exemplo K = monarchy;
![Page 16: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/16.jpg)
Criptografia Simétrica - Exemplos
![Page 17: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/17.jpg)
Criptografia Simétrica - Exemplos
• Funcionamento:• Divida o texto de 2 em 2 letras: “de pa rt am
em to”• Letras repetidas coloca-se “X” no meio• Encontre a linha da primeira letra• Siga até a coluna da segunda letra• Onde parar é o novo caracter• Fazer o mesmo da segunda com a primeira
![Page 18: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/18.jpg)
Algoritmos Simétricos
• SDES é um algoritmo didático;• Outros:
– DES;– 3DES ou DES-EDE;– IDEA;– Blowfish;– Cast-128;– RC6;– AES: atual padrão americano;
![Page 19: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/19.jpg)
Algoritmo SDES
IP = 2 6 3 1 4 8 5 7 e IP-1= 4 1 3 5 7 2 8 6
![Page 20: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/20.jpg)
Algoritmo SDES
![Page 21: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/21.jpg)
Algoritmo SDESGeração de sub-chaves
![Page 22: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/22.jpg)
Algortimos Simétricos
• Segurança está:– Tamanho de chave;– Princípio do confusão: complexidade entre
texto cifrado e chave;– Princípio da difusão: complexidade entre o
texto plano e chave;
![Page 23: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/23.jpg)
Algoritmo DES
• Tamanho de bloco de 64 bits e chave de 56 bits;
• O DES tem 16 rounds;
• São geradas 16 sub-chaves, uma para cada rodada;
![Page 24: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/24.jpg)
Algoritmo DES
![Page 25: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/25.jpg)
Algoritmo 3DES
• Utiliza duas chaves da seguinte maneira:– Encripta com K1;– Decripta com K2;– Encripta novamente com K1;
• Para decifrar:– Decripta com K1;– Encripta com K2;– Decripta novamente com K1;
![Page 26: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/26.jpg)
Algoritmo AES
• Governo americano fez concurso para eleger novo algoritmo;
• Vencedor em 2001 foi o Rijndael;
• Mudou de nome para AES;
• Padronizado na FIPS PUB 197;
• Blocos de 128 bits;
• Chave de 128, 192 ou 256 bits;
![Page 27: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/27.jpg)
Algoritmos Simétricos
• IDEA:– Bloco 64 bits;– Chave 128 bits;– Livre apenas para uso não comercial;
• RC6:– Bloco e chave variável até 255bits;– Número de rodadas variável;
![Page 28: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/28.jpg)
Criptografia Assimétrica
• Criado em 1976 por Diffie & Hellman;
• Também conhecido como criptografia de chave pública;
• Motivado pelo problema de distribuição de chaves simétricas;
![Page 29: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/29.jpg)
Criptografia Assimétrica
• Usa uma chave pública e uma chave privada;
• As chaves formam um par e trabalham em conjunto;
• O que uma chave cifra a outra chave decifra;
![Page 30: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/30.jpg)
Criptografia Assimétrica
• A chave pública todos podem conhecer;
• A chave privada apenas o dono pode conhecer;
• Função de chaves: f(x) = y;
• Conhecendo y é muito difícil descobrir o valor de x;
• Baseado na complexidade matemática;
![Page 31: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/31.jpg)
Criptografia Assimétrica
![Page 32: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/32.jpg)
Criptografia Assimétrica
• Fornece serviços de confidencialidade e autenticidade;
• Autenticidade quando a origem cifra com sua chave privada;
• Confidencialidade quando a origem cifra com a chave pública do destino;
![Page 33: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/33.jpg)
Criptografia Assimétrica
![Page 34: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/34.jpg)
Criptografia Assimétrica
![Page 35: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/35.jpg)
Criptografia Assimétrica
![Page 36: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/36.jpg)
Criptografia Assimétrica
![Page 37: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/37.jpg)
Criptografia Assimétrica
![Page 38: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/38.jpg)
Algoritmos Assimétricos
• Como fazer um algoritmo assimétrico válido?
• Usam duas técnicas:– Aritmética exponencial modular;– Curvas elípticas;
![Page 39: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/39.jpg)
Algoritmos Assimétricos
• Dois algoritmos mais conhecidos: – RSA e ElGamal;
• Algoritmos RSA:
• É o mais usado comercialmente;
• Cifra blocos de tamanho variado = n;
![Page 40: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/40.jpg)
Algoritmo RSA
• O par de chaves é derivado de n;
• n é um número muito grande;
• n é resultado de dois números primos muito grandes = p & q;
• p & q devem ter mais de 100 dígitos cada um;
![Page 41: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/41.jpg)
Algoritmo RSA
• Um invasor pode conhecer a chave pública e o número n;
• Mas não conhece p & q;
• Logo ele não consegue gerar a chave privada;
![Page 42: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/42.jpg)
Algoritmo RSA• Escolher dois números primos grandes (>
10^100) p e q• Calcular n = p * q• Escolher um número “e” relativamente
primo com (p – 1) * (q – 1)• Calcular d de forma que e * d = 1 mod (p –
1) * (q – 1), isto é, d = e-1 mod (p – 1) * (q – 1)
• Publicar (n, e) – chave pública, manter (n, d) – chave privada – e p, q em segredo
![Page 43: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/43.jpg)
Algoritmo RSA
• KU = {e, n}
• KR = {d, n}
• Cifrar: M^e mod n
• Decifrar: C^d mod n
• Invasor não consegue descobrir “d” a partir de “e” e “n”
![Page 44: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/44.jpg)
Algoritmo RSA
• p= 7 e q = 17;
• n = 119;
• Totiente de n = 96;
• e relativamente primo a 96 = 5;
• d = 77;
• KU = {5, 119}
• KR = {77,119}
![Page 45: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/45.jpg)
Algoritmo RSA
• KU = {5, 119}• KR = {77, 119}• M = 19• Cifrar: 19^5 mod 119 = 66• C = 66• Decifrar: 66^77 mod 119 = 19• Obs: na prática a chave é bem maior,
mais de 130 dígitos;
![Page 46: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/46.jpg)
Comparação
![Page 47: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/47.jpg)
Hash e algoritmos
• Funções hash, ou message digests ou funções one-way;
• Função hash: y = f(x);
• y é facilmente calculado;
• x é computacionalmente complexo;
![Page 48: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/48.jpg)
Hash e algoritmos
• Uma função hash gera um resumo de sua entrada;
• A partir do resumo não deve ser possível encontrar-se a entrada;
• Não deve ser possível encontrar uma entrada que gere um resumo específico;
![Page 49: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/49.jpg)
Hash e algoritmos
• É usado para gerar impressão digital de arquivos (por exemplo);
• Também é usado em certificados e assinatura digital;
![Page 50: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/50.jpg)
Hash e algoritmos
• Alguns algoritmos são: MD5, SHA-1, SHA-2 ou SHA-256;
• SHA é o padrão do NIST;
• SHA-224, 256, 384 e 512;
![Page 51: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/51.jpg)
Hash e algoritmos
Mensagem 100...0
K bits
L x 512 bits = N x 32 bits
Padding(1 a 512 bits)
Tamanho daMensagem(K mod 264)
Y0 Y1
512 bits 512 bits
HSHA HSHA
Yq
512 bits
HSHA
YL-1
512 bits
HSHA
512 512 512 512
160 160 160 160
CV1 CVq CVL-1
160 bitsdigest
ValorInicial
A = 67452301 B = EFCDAB89C = 98BADCFE D = 10325476E = C3D2E1F0
![Page 52: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/52.jpg)
Assinatura Digital
• A criptografia assimétrica permite a implementação de assinatura digital;
• Assinar é cifrar algo com a chave privada;
• Assinar toda a informação a ser enviada é um processo muito caro computacionalmente;
![Page 53: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/53.jpg)
Assinatura Digital
M E M MD
KRa
EKRa(M)
Fonte Destino
KUa
![Page 54: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/54.jpg)
Assinatura Digital
• É necessário cifrar todo o conteúdo para garantir a origem?
![Page 55: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/55.jpg)
Assinatura Digital
• Não!!!
• Basta cifrar apenas o hash do conteúdo;
• O hash irá garantir a autenticidade e a integridade de todo o conteúdo;
![Page 56: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/56.jpg)
Assinatura Digital – Transmissão
![Page 57: Segurança de Redes de Computadores](https://reader035.fdocumentos.tips/reader035/viewer/2022062321/5681394e550346895da0e9c7/html5/thumbnails/57.jpg)
Assinatura Digital – Recepção