Tpicos Avanados em Redes Prof Alessandro Brawerman Introduo
Tópicos Avançados em Redes Prof. Alessandro Brawerman
Introdução n n n Encriptação é o processo que converte dados sensíveis para uma forma codificada Quando recuperada por usuários autorizados, esta forma codificada é então convertida (decodificada) em texto com significado novamente A encriptação esconde ou disfarça a informação de recipientes mal-intencionados, mas permite que usuários autorizados a recuperem 2
Introdução n n O estudo da comunicação secreta é chamado criptologia A prática ou arte de codificar mensagens é chamada de criptografia Dados não criptografados são chamados de texto puro (plaintext) A saída criptografada é chamada de texto cifra ou só cifra (ciphertext ou cipher) 3
Introdução n n n Criptografia já é usada desde os tempos de Nero, na Roma antiga Foi muito usada na II Guerra Aumento de interesse na década de 70 4
Introdução Texto puro (arquivo ou mensagem) Encriptação cifra (armazenada ou transmitida de maneira segura) Decriptação Texto puro (arquivo ou mensagem) 5
Introdução n Criptógrafos q n Criptoanalistas q n Inventam algoritmos de criptografia. Códigos secretos Encontrar maneiras de quebrar os códigos Decifrar uma mensagem q Encontrar uma maneira de chegar no texto puro, sem a chave ou algoritmo secreto 6
Introdução n Quebrar um código q n n Encontrar uma maneira sistemática de decifrar as cifras criadas com o código secreto, usando recursos normais Algoritmos de criptografia são provavelmente confiáveis se eles não são quebrados após vários criptoanalistas testarem Implica que tais algoritmos poderiam ser publicados 7
Introdução n n Manter um algoritmo secreto faz com que a possibilidade de quebrar o código seja muito mais difícil Mas, como o executável do algoritmo deve estar em cada localização que o use, fica muito difícil de distribuí-lo 8
Criptografia n n Criptógrafos adoram XOR 0 ou 1 XOR 1 = 0 0 XOR 1 ou 1 XOR 0 = 1 Exemplo: q q Texto puro – 1010 Chave – 0011 Cifra – 1001 A combinação de duas sempre resulta na outra 9
Caesar Cipher n Letras e símbolos formam uma roleta n A chave é um número inteiro de posições a serem puladas n Pode ser positiva ou negativa 10
Caesar Cipher n Exemplo: In: ABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890_ Out: DEFGHIJKLMNOPQRSTUVWXYZ 1234567890_ABC Nao irei a festa hoje Qdrcluhlcdcjhvwdckrmh 1 a cada 4 caracteres em média é espaço 11
Tipos de Criptografia n Simétrica q q q n 1 chave secreta Texto | chave | cifra Cifra | chave | text Assimétrica q q 1 par de chaves Chave privada e pública Texto | chave pública | cifra Cifra | chave privada | texto 12
Computacionalmente Seguro n Um esquema de criptografia é computacionalmente seguro se a cifra gerada alcança um de 2 objetivos: q q O custo de quebrar a cifra excede o valor da informação criptografada O tempo para quebrar a cifra excede o tempo útil de vida da informação 13
Computacionalmente Seguro n n Assumindo que não há fraquezas matemáticas no algoritmo, então o único ataque possível é o de força bruta Este ataque envolve testar cada uma das possíveis chaves até se chegar a uma informação legível 14
Curiosidade Computacionalmente Seguro n n n Na média, metade de todas as chaves possíveis devem ser tentadas para chegar na chave verdadeira Assuma que leva-se 1 s para executar uma decodificação, razoável para as máquinas de hoje Com processamento paralelo pode-se atingir ordens ainda maiores 15
Curiosidade Computacionalmente Seguro Tamanho da Chave (bits) Número de Chaves Tempo usando 1 por s Tempo usando 106 por s 32 232 = 4. 3 x 109 231 s = 35. 8 min 2. 15 ms 56 (DES) 256 = 7. 2 x 1016 255 s = 1142 anos 10 horas 128 2128 = 3. 4 x 1038 2127 s = 5. 4 x 1024 anos 5. 4 x 1018 anos 168 2168 = 3. 7 x 1050 2167 s = 5. 9 x 1036 anos 5. 9 x 1030 anos 16
Criptografia Simétrica n n n Comunicação segura entre 2 participantes é efetuada pela troca de uma chave secreta (privada) A chave é usada tanto para codificar quanto para decodificar mensagens Idealmente, a chave não deveria ser trocada eletronicamente, mas sim pessoalmente 17
Criptografia Simétrica n Vantagem: velocidade com que as mensagens são encriptadas e decriptadas n Desvantagem: q q Número de chaves requeridas quando mais pessoas estão envolvidas Troca inicial das chaves secretas 18
Curiosideda Criptografia Simétrica n Para 10 pessoas envolvidas são necessárias 45 chaves n Geralmente, n pessoas requerem: (n)(n-1)/2 chaves secretas 19
Criptografia Simétrica 20
Algoritmos de Criptografia Simétrica n n Um bloco de cifra processa o texto puro dado como entrada em um bloco de tamanho fixo, produzindo um bloco de cifra de mesmo tamanho Mais comuns: q q q DES - Data Encryption Standard TDES - Triple DES AES - Advanced Encryption Standard 21
Curiosidade DES n n Texto puro é de 64 bits de tamanho Textos puros maiores são transformados em blocos de 64 bits Chave é de 56 bits Processamento é de 3 fases para o texto q q q Texto puro é permutado, rearranchando os bits 16 rodadas da mesma função, metades trocadas Inverso da permutação original 22
Curiosidade DES n Para a chave q q q n A chave passa por uma permutação inicial A cada rodada a chave é dividida em duas metades de 28 bits cada, denominadas C 0 e D 0 C e D passam por uma combinação de um shift left circular de 1 ou 2 bits, junção e uma permutação O processo de decodificação é feito na ordem reversa 23
Curiosida de DES
Curiosidade - DES 25
Triple DES n n Usa 3 chaves e 3 execuções do DES Segue Encriptação-Decriptação-Encriptação (EDE) para criptografia Segue Decriptação-Encriptação-Decriptação (DED) para decriptação Encriptação q n C = EK 3 [DK 2 [EK 1 [M]]] Decriptação q M = DK 1 [EK 2 [DK 3 [C]]] 26
TDES - Chaves de 168 bits Encryption m 1 There are 168 unique bits in key Decryption c 1 E Key 1 D Key 3 D Key 2 E Key 3 D Key 1 c 1 m 1 27
TDES - Chaves de 112 bits Encryption m 1 There are 112 unique bits in key Decryption c 1 E Key 1 D Key 2 E Key 1 D Key 1 c 1 m 1 28
IDEA - International Data Encryption Algorithm n n Chaves de 128 bits Difere do DES na função das rodadas e no algoritmo de geração de sub-chaves F é uma combinação de XOR, adição e multiplicação binária Algoritmo de geração de chaves é feita através de shifts circulares 29
Blowfish n n Fácil de implementar e alta velocidade Compacto, roda em menos de 5 K de memória 16 rodadas Chaves até 448 bits, normalmente 128 bits 30
RC 5 n n n n Bom desempenho para hardware e software Rápido Número de rodadas variáveis Tamanho de chaves variádos Baixa memória Alta segurança Rotações dependentes de dados 31
AES n n n O TDES é baseado no DES, portanto foi muito testado durante os anos Nenhum erro foi encontrado e nenhum ataque, a não ser o de força bruta no DES foi feito Então por que o TDES não se tornou o padrão? 32
AES n n n Porque o DES foi feito em hardwares, a implementação do TDES via software é muita lenta Performance é um problema Tem uma segurança ainda maior que o TDES e melhora a performance para software Tamanho do bloco é de 128 bits Suporta chaves de 128, 192 e 256 bits 33
- Slides: 33