Intel® Advanced Encryption Standard (AES) Instructions Set - Rev 3

Introdução

As instruções Intel® AES são um novo conjunto de instruções disponíveis à partir família de processadores Intel® Core™ baseadas na microarquitetura de 32nm da Intel® codename Westmere. Estas instruções permitem a criptografia e a descriptografia rápida e acelerada, usando o AES (Advanced Encryption Standard) que é um padrão definido pela publicação FIPS número 197. Como o AES é atualmente o cifrador em bloco dominante e é usado por diversos protocolos, as novas instruções são valiosas para uma ampla gama de aplicações.

A arquitetura consiste de seis instruções que oferecem suporte total no hardware para o AES. Quatro instruções suportam a criptografia e descriptografia AES e duas outras instruções suportam a expansão de chaves AES.

As instruções AES possuem a flexibilidade necessária para suportar todas as utilizações de AES, incluindo todos os tamanhos padrão de chaves, modos padrão de operação e mesmo alguns não padronizados ou variantes futuras. Elas oferecem um aumento significativo no desempenho quando comparado com as implementações atuais totalmente baseadas apenas em software.

Além de aprimorar o desempenho, as instruções AES provêm alguns benefícios importantes de segurança. Por serem executadas em um tempo independente dos dados e por não utilizar tabelas, elas ajudam a elimintar a maioria dos ataques por tempo ou baseados em cache que ameaçam as implementações do AES baseadas em tabelas. Adicionalmente, elas tornam o AES mais fácil de implementar, com tamanho reduzido de código, que ajuda a reduzir o risco de introdução inadvertida de brechas de segurança, como os vazamentos side-channel, difíceis de detectar.

Este artigo apresenta uma visão geral do algoritmo AES e das novas instruções AES da Intel. Ele apresenta orientações e demonstrações sobre o uso destas instruções para desenvolver implementaçòes seguras e com alta performance do AES. Esta versão do artigo também oferece uma biblioteca de alta performance para implementar o AES nos modos ECB/CBC/CTR, e apresenta pela primeira vez os números de performance medidos.

Download do Artigo (em inglês)

Faça o download do artigo Intel® Advanced Encryption Standard (AES) Instructions Set [PDF 875KB].

Optimization Notice

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804

Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.