Coprocessador criptográfico padrão advanced encryption standard (AES) baseado em lógica programável. - Duarte, Neimar Marques (2004)
Um dos grandes desafios para sistemas de processamento e transmissão de dados seguros é a capacidade computacional necessária para se criptografar e decriptografar blocos de dados. O atual algoritmo de criptografia simétrico oficial para uso não-militar é o Advanced Encryption Standard (AES), algoritmo desenvolvido por Joan Daemen e Vincent Rijman e selecionado como o novo algoritmo de criptografia oficial em 2000. As principais características deste algoritmo são ter blocos de dados de 128 bits e chaves de 128, 192 ou 256 bits. Neste trabalho é apresentada uma proposta de uma arquitetura padrão para a implementação de um coprocessador criptográfico AES, com 128 bits de chave e implementado em um dispositivo lógico programável do tipo FPGA da Altera. O coprocessador pode ser configurado para operar com processadores de 8, 16, 32 ou 64 bits. Para testar o conceito, o coprocessador foi configurado como coprocessador de um processador NIOS. O NIOS é um processador RISC de 32 bits do tipo SoftCore, desenvolvido pela Altera, implementado em VHDL e que pode ser implementado em qualquer FPGA da Altera. O algoritmo AES foi implementado em software e em hardware, como coprocessador, e foram feitas medidas de desempenho, comparando a capacidade de processamento crioptográfico do sistema sem e com o uso do coprocessador. Os resultados apresentados mostram o aumento de desempenho do sistema para efetuar operações criptográficas usando o algoritomo AES com e sem o uso do coprocessador. A implementação feita valida também o conceito de uma arquitetura de coprocessador AES que pode ser adapatado para diferentes processadores.