Criptoanálise Integral Criptoanálise diferencial: diferença (subtração) entre duas cifragens Criptoanálise integral: efeito cumulativo (soma) entre várias cifragens distintas
Criptoanálise Integral Algoritmos onde a criptoanálise Integral pode ser utilizada: Cifradores de bloco operando sobre bytes (Não se adapta bem a operações sobre bits) Cifradores com funções bijetoras Cifradores com redes de Substituição-Permutação
Criptoanálise Integral Método básico: Utilizar 256 cifragens, com blocos de n bytes, onde (n-1) bytes são constantes, e onde o byte restante varia e assume todos os 256 valores possíveis “Integrando” (somando) os blocos das 256 cifragens, o byte sob análise fica zero Este zero simplifica o algoritmo, e pode permitir deduzir valores sobre os bytes da chave
Criptoanálise Integral Método básico: Utilizar 256 cifragens, com blocos de n bytes, onde (n-1) bytes são constantes, e onde o byte restante varia e assume todos os 256 valores possíveis “Integrando” (somando) os blocos das 256 cifragens, o byte sob análise fica zero Como as funções são lineares, bytes nas rodadas seguintes também “integram” para zero Estes zeros simplificam o algoritmo, e podem permitir deduzir valores sobre os bytes da chave
Criptoanálise Integral no AES Para AES de 6 rodadas: 2 ^ 32 textos de entrada (2 ^24 textos onde um único byte varia sobre os 256 valores possíveis) 2 ^32 posíções de memória para armazenar pares e texto plano/texto cifrado 2 ^72 passos para deduzir 9 bytes da chave (cada passo opera sobre 256 textos cifrados)
Criptoanálise Integral no AES Para AES de 6 rodadas: 2 ^ 32 textos de entrada (2 ^24 textos onde um único byte varia sobre os 256 valores possíveis) 2 ^32 posíções de memória para armazenar pares e texto plano/texto cifrado 2 ^72 passos para deduzir 9 bytes da chave (cada passo opera sobre 256 textos cifrados)
Criptoanálise Integral no AES Rodadas Chave Dados Tempo 6 Todas 2^32 2^72 7 192 19.2^32 2^155 256 21.2^32 2^172 2^128-2^119 2^120 8 2^188 2^204 9 2^224