·

Cursos Gerais ·

Rede de Computadores

Send your question to AI and receive an answer instantly

Ask Question

Preview text

AES ADVANCED ENCRYPTION STANDARD Introdução n Histórico da Criptografia n Data Encryption Standard DES 1977 n Chave de 56 bits n Quebrado em 1997 1998 e 1999 n Concurso NISTNational Institute of Standards and Technology Finalistas MARS RC6 Serpent Twofish e Rijndael n Vencedor Rijndael 02102000 n Adotado como padrão out2001 AES Introdução n O NIST estabeleceu como requisitos fundamentais n Não serem patenteados n Cifra simétrica de blocos n Todo projeto tem que ser público n Suporte de chaves de 128 192 e 256 bits n Implementação em software e hardware n Desempenho Bom em várias plataformas n Segurança forte Suportar ataques futuros AES Introdução n Qualidades do RijndaelJoan Daemen e Vincent Rijmen Belgas n Cifra simétrica de blocos n Flexibilidade de implementação n Até agora Sem ataques efetivos conhecidos n Adapta a CPUs Modernas e a Smart Cards n Características n Tamanho de chave variável 128 192 e 256 bits n Tamanho de bloco variável 128 192 e 256 bits n Número de Rounds Variável 10 12 e 14 Rounds n Bloco é processado em conjunto Subst e Permutações Fundamentos Matemáticos n No AES utilizase os seguintes polinômios n mx x8 x4 x3 x 1 ou 11Bh n x4 1 n Ax 03x3 01x2 01x 02 MixColumns n A1x 0Bx3 0Dx2 09x 0E InvMixColumns ByteSub SBox Gerada pela composição de duas funções obtenção do inverso multiplicativo no corpo GF28 aplicação da seguinte transformação afim ByteSub SBox SBOX 0 1 2 3 4 5 6 7 8 9 a b c d e f 0 63 7c 77 7b f2 6b 6f c5 30 01 67 2b fe d7 ab 76 1 ca 82 c9 7d fa 59 47 f0 ad d4 a2 af 9c a4 72 c0 2 b7 fd 93 26 36 3f f7 cc 34 a5 e5 f1 71 d8 31 15 3 04 c7 23 c3 18 96 05 9a 07 12 80 e2 eb 27 b2 75 4 09 83 2c 1a 1b 6e 5a a0 52 3b d6 b3 29 e3 2f 84 5 53 d1 00 ed 20 fc b1 5b 6a cb be 39 4a 4c 58 cf 6 d0 ef aa fb 43 4d 33 85 45 f9 02 7f 50 3c 9f a8 7 51 a3 40 8f 92 9d 38 f5 bc b6 da 21 10 ff f3 d2 8 cd 0c 13 ec 5f 97 44 17 c4 a7 7e 3d 64 5d 19 73 9 60 81 4f dc 22 2a 90 88 46 ee b8 14 de 5e 0b db a e0 32 3a 0a 49 06 24 5c c2 d3 ac 62 91 95 e4 79 b e7 c8 37 6d 8d d5 4e a9 6c 56 f4 ea 65 7a ae 08 c ba 78 25 2e 1c a6 b4 c6 e8 dd 74 1f 4b bd 8b 8a d 70 3e b5 66 48 03 f6 0e 61 35 57 b9 86 c1 1d 9e e e1 f8 98 11 69 d9 8e 94 9b 1e 87 e9 ce 55 28 df f 8c a1 89 0d bf e6 42 68 41 99 2d 0f b0 54 bb 16 AES ShiftRows AES MixColumn AES Processo de Cifragem Claro Cifrado AddRoundKey ByteSub ShiftRow MixColumns AddRoundKey ByteSub ShiftRow AddRoundKey K0 Ki Kr Example Plaintext 32 43 f6 a8 88 5a 30 8d 31 31 98 a2 e0 37 07 34 128bit key 2b 7e 15 16 28 ae d2 a6 ab f7 15 88 09 cf 4f 3c a Initial state matrix b Key added in round 1 c State matrix end of round 1 d After SubBytes MixColumns s00 α s00 β s10 s20 s30 02 d4 03 bf 5d 30 1b8 1c1 5d 30 04 s10 s00 α s10 β s20 30 d4 02 bf 03 5d 30 d4 17e e7 30 17d 17d mod px 17d px 7d x4 x3 x 1 7d 1b 66 n Chaves em ordem invertida n Inverso da ByteSub SBOX inversa n Inverso da MixColumns matriz inversa de M n Inverso da ShiftRow n Transformações em ordem invertida AES Processo de Decifragem n Pode rodar bem rapidamente em relação a outros algoritmos n Pode ser implementado em um SmartCard usando pouco código e memória n Algumas funções podem ser feitas em paralelo assim tornando o processo mais rápido Isto é podese fazer a substituição dos bytes usando a Sbox várias de uma vez e ainda a expansão da chave pode ser feita enquanto se executa as funções que não dependem dela como a ByteSub ou ShiftRow n Como a encriptação não emprega operações aritméticas não exige muito poder de processamento AES Vantagens Implementação n Não usa elementos já previamente processados Por exemplo a 9a rodada não necessita de nenhum elemento das rodadas anteriores a não ser única e exclusivamente do State da 8a n O algoritmo não baseia sua segurança ou parte dela em interações obscuras e não bem compreendidas entre operações aritméticas não permitindo assim espaço para esconder um trap door AES Vantagens Simplicidade do projeto n O projeto permite a especificação de variantes como o comprimento do bloco e da chave ambos variando de 32 em 32 bits no intervalo de 128 até 256 bits n Embora o número das rodadas seja fixo na especificação pode ser modificado como um parâmetro caso haja problemas de segurança AES Vantagens possíveis modificações n As limitações ficam por conta da inversa n A inversa é menos recomendável de ser implementada num SmartCard pois precisa de mais código e mais processamento Mesmo assim se comparado a outros algoritmos ela é bem rápida n Em software a encriptação e sua inversa empregam códigos diferentes eou tabelas n Em hardware a inversa pode usar apenas uma parte do circuito usado no processo de encriptação AES Desvantagens n O AES foi construído sobre as virtudes do DES n A matemática está integrada a criptografia atual n Devido ao tamanho da chave e o fato da chave ser variável novas técnicas de ataques terão que ser criadas n O NIST estima que o AES tenha vida igual ou superior a do DES AES Considerações