250 likes | 494 Views
AES. Advanced Encryption Standard. Redes de Computadores. Professor : Otto Muniz Aluno : Diogo Ventura Nomiya. AES – Advanced Encryption Standard. Índice. Princípios de Criptografia Tipos de Criptografia DES e AES Algoritmo AES Cifra Reversa Conclusão. UFRJ – Redes de Computadores.
E N D
AES Advanced Encryption Standard Redes de Computadores Professor : Otto Muniz Aluno : Diogo Ventura Nomiya
AES – Advanced Encryption Standard Índice • Princípios de Criptografia • Tipos de Criptografia • DES e AES • Algoritmo AES • Cifra Reversa • Conclusão • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Princípios de Criptografia • Do grego: kryptós – escondido gráphein – escrita • Código ou Cifra de César • 25 combinações possíveis • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Princípios de Criptografia • Decifrando a Cifra de César • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Princípios de Criptografia • Cifra Monoalfabética • Exemplo • 26! combinações possíveis (algumas ruins) • Técnicas mais elaboradas do que força bruta • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Tipos de Criptografia • Sistema de Chaves Simétricas • A e B têm chaves iguais chave B chave A m K(m) m • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Tipos de Criptografia • Sistema de Chaves Públicas • B tem uma chave privada e outra pública chave pública chave privada A B m K(m) m • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard DES e AES • DES (Data Encryption Standard) • Proposto e 1974 pela IBM – Lucifer • Escolhido como padrão em 1976 pelo NIST (National Institute of Standards and Tecnology) • Proposto um cracker em 1977 de 20 milhões U$ • Quebrado pela Deschall em 1997 • Construído um cracker de 250 mil U$ • AES (Data Encryption Standard) • Concurso AES em 1997 • Rijndael adotado como padrão em 2001 • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • Blocos de dados 128 bits • Chaves de 128, 192 ou 256 bits • Matriz de estados de 16 bytes • Nb = 4 colunas • Nk = 4, 6 ou 8 chaves • Nr = 10, 12 ou 14 rodadas • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES Cifra AddRoundKey Para rodada = 1 até Nr-1 SubBytes ShiftRows MixColumns AddRoundKey Fim Para SubBytes ShiftRows AddRoundKey Fim Cifra • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • SubBytes • Mapeia cada byte S-box • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • SubBytes • S-box • Para um dado byte: • Inverso multiplicativo • Transformação • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • SubBytes • S-box • Exemplo: • Byte 01 • Inverso multiplicativo: 01 • A = 01111100 = 7c • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • ShiftRows • Para esquerda • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • MixColumns • Exemplo • Forma geral • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • AddRoundKey • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Algoritmo AES • Expansão de Chave • Assim, para um dado wi tal que i>3, e Nk= 4 ou 6 • - se i não for múltiplo de Nk, então wi = wi-1+ wi-Nk • - se i for múltiplo de Nk, então wi = SubWord(RotWord(wi-1)) + Rcon(R) + wi-Nk • Rcon(R) - [(02)R-1 00 00 00] (valores em hexadecimal), onde R é o número da rodada. • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Cifra Reversa Cifra Inversa InvAddRoundKey Para rodada = Nr-1 até 1 InvShiftRows InvSubBytes InvAddRoundKey InvMixColumns Fim Para InvShiftRows InvSubBytes InvAddRoundKey Fim Cifra Inversa • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Cifra Reversa • InvSubytes • S-box inversa • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Cifra Reversa • InvShiftRows • InvMixColumns • InvAddRoundKey • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Conclusão • Avanço tecnológico e queda nos preços de componentes eletrônicos • crackers • Necessário um estudo contínuo • UFRJ – Redes de Computadores
AES – Advanced Encryption Standard Perguntas 1) Explique criptografia de chaves simétricas e de chaves públicas. 2) O fato de o algoritmo AES estar disponível ao público e ninguém ter afirmado que conseguiu quebrar o código significa que o algoritmo é 100% seguro? R: Não, as chances de se encontrar a chave do algoritmo nunca são nulas. Além do mais, o fato de ninguém ter dito que quebrou o código não significa que ninguém tenha realmente quebrado. 3) Explique as 4 transformações realizadas a cada rodada no algoritmo AES. 4) No AES, a chave principal é expandida em Nb(Nr+1) chaves menores. Por que esse número? R: Porque a transformação AddRoundKey adiciona uma chave para cada coluna, sendo que são Nb colunas. Como a transformação AddRoundKey é aplicada uma vez a cada rodada (Nr rodadas ao todo) e uma vez no início do algoritmo, o número de chaves necessárias é Nb(Nr+1). 5) Pronuncie Rijndael. • UFRJ – Redes de Computadores