Implementação em hardware reconfigurável do algoritmo de criptografia clefia com suporte completo à expansão de chaves - Bittencourt, João Carlos Nunes (2016)
O CLEFIA é um algoritmo de criptografia simétrica proposto e desenvolvido pela Sony Corporation com ênfase em Gerenciamento de Direitos Autorais.A estrutura proposta para o CLEFIA suporta chaves compartilhadas de 128, 192 e 256 bits. O algoritmo aperfeiçoa a segurança da cifra a partir do uso de técnicas como Diffusion Switch Mechanisms, representada por múltiplas matrizes de difusão organizadas em uma ordem predeterminada, tendo em vista garantir imunidade contra ataques diferenciais e lineares. Whitening Keys também são utilizadas, a partir da combinação do dado com partes da chave de codificação, antes da primeira iteração e ao final do processo de codificação. Trabalhos recentes indicam que o CLEFIA mostra-se uma solução eficiente, particularmente quando implementada em hardware, com estrutura compatível a padrões populares como o AES. Estruturas compactas em hardware têm significativa importância no projeto de sistemas embutidos, tais como aplicações com RFID ou plataformas de Sistemas-em-Chip, como pequenos dispositivos de comunicação. Apesar de pesquisas recentes terem explorado implementações do CLEFIA baseadas em tecnologias ASIC, soluções em FPGA podem também ser exploradas devido a suas vantagens em termos de adaptatividade computacional, reduzido time-to-market e custos de projeto para soluções dedicadas. Este trabalho propõe uma estrutura em hardware compacta e de alta taxa de transferência de dados, para o cômputo do algoritmo CLEFIA e seu respectivo mecanismo de expansão de chaves completo. Embora o presente estado da arte suporte apenas expansão de chaves de 128 bits, característica justificada pela necessidade de modificações na rede Feistel utilizada na cifra, neste trabalho demonstramos ser viável a implementação de uma estrutura com suporte completo à expansão de chaves do CLEFIA, ao custo de 200 SLICEs e baixo impacto em termos de desempenho, com frequência máxima de 369 MHz. Os resultados foram obtidos a partir da utilização de registradores de deslocamento endereçáveis, presentes em dispositivos FPGA modernos, e uma estrutura de controle de escalonamento adaptável, permitindo o cômputo das redes Feistel 4-branch e 8-branch sobre a mesma estrutura. Os resultados obtidos a partir de a implementação do circuito em um dispositivo Xilinx Virtex 5 sugerem que taxas de transferência superiores a 1 Gbps podem ser alcançadas com baixo custo em termos de área, com medidas de eficiência semelhantes àquelas apresentadas pelo estado da arte.