570 likes | 716 Views
Segurança de Redes de Computadores. Prof. Paulo Fernando da Silva Faculdades SENAC Florianópolis Pós-Graduação em Segurança da Informação. Criptografia. Conceitos Básicos; Criptografia Simétrica; Algoritmos Simétricos; Criptografia Assimétrica; Algoritmos Assimétricos; Hash e algoritmos;
E N D
Segurança de Redes de Computadores Prof. Paulo Fernando da Silva Faculdades SENAC Florianópolis Pós-Graduação em Segurança da Informação
Criptografia • Conceitos Básicos; • Criptografia Simétrica; • Algoritmos Simétricos; • Criptografia Assimétrica; • Algoritmos Assimétricos; • Hash e algoritmos; • Assinatura digital;
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 • 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?
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 • 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; • Para um grupo de n participantes, serão necessárias n(n-1)/2 chave distintas;
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
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”
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;
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
Algoritmos Simétricos • SDES é um algoritmo didático; • Outros: • DES; • 3DES ou DES-EDE; • IDEA; • Blowfish; • Cast-128; • RC6; • AES: atual padrão americano;
Algoritmo SDES IP = 2 6 3 1 4 8 5 7 e IP-1= 4 1 3 5 7 2 8 6
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 Diffie & 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 uma 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; • Função de chaves: f(x) = y; • Conhecendo y é muito difícil descobrir o valor de x; • Baseado na complexidade matemática;
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;
Algoritmos Assimétricos • Como fazer um algoritmo assimétrico válido? • Usam duas técnicas: • Aritmética exponencial modular; • Curvas elípticas;
Algoritmos Assimétricos • Dois algoritmos mais conhecidos: • RSA e ElGamal; • Algoritmos RSA: • É o mais usado comercialmente; • Cifra blocos de tamanho variado = n;
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;
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;
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;
Hash e algoritmos • É usado para gerar impressão digital de arquivos (por exemplo); • Também é usado em certificados e assinatura digital;
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;