segurança de redes de computadores prof. paulo fernando da silva
TRANSCRIPT
Segurança de Redes de Computadores
Prof. Paulo Fernando da Silva
Criptografia
• Conceitos Básicos;• Criptografia Simétrica;• Algoritmos Simétricos;• Criptografia Assimétrica;• Algoritmos Assimétricos;
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;
Conceitos Básicos
Conceitos Básicos
Conceitos Básicos
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;
Criptografia Simétrica
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;
Criptografia Simétrica
• Possui um problema sério na distribuição de chave;
• A chave deve ser compartilhada, mas deve ser secreta;
Criptografia Simétrica
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
• Outro cifrador é o playfair
Algoritmos Simétricos
• Outros:– DES;– 3DES ou DES-EDE;– IDEA;– Blowfish;– Cast-128;– RC6;– AES: atual padrão americano;
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;
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;
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;
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;
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;
Criptografia Assimétrica
• Criado em 1976 por Dffie & Hellman;• Também conhecido como criptografia de
chave pública;• Motivado pelo problema de distribuição de
chaves simétricas;
Criptografia Assimétrica
• Usa uma chave pública e ou chave privada;
• As chaves formam um par e trabalham em conjunto;
• O que uma chave cifra a outra chave decifra;
Criptografia Assimétrica
• A chave pública todos podem conhecer;
• A chave privada apenas o dono pode conhecer;
Criptografia Assimétrica
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;
Criptografia Assimétrica
Criptografia Assimétrica
Criptografia Assimétrica
Criptografia Assimétrica
Criptografia Assimétrica
Algoritmos Assimétricos
• Dois algoritmos mais conhecidos: – RSA e ElGamal;
• Algoritmos RSA:• É o mais usado comercialmente;
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;
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;
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
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”
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}
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;