|
Vantagens e Desvantagens do uso do AES |
|
Vantagens |
As vantagens serão apresentadas relativas à:
Implementação
Pode rodar bem rapidamente em relação a outros algoritmos.
Pode ser implementado em um SmartCard usando pouco código e memória.
Algumas funções podem ser feitas em paralelo, assim tornando o processo mais rápido. Isto é, pode se fazer a substituição dos bytes usando a S-box, vários de uma vez, e não seqüencialmente, 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().
Como a encriptação não emprega operações aritméticas, não exige muito poder de processamento.
Simplicidade do projeto
Não usa elementos já previamente processados, por ex. a 9a rodada não necessita de nenhum elemento das rodadas anteriores a não ser única e exclusivamente do State da 8a .
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
Possíveis modificações:
O projeto permite a especificação de variantes com o comprimento do bloco e da chave, ambos variando de 32 em 32 bits no intervalo de 128 até 256 bits.
Embora o número das rodadas de seja fixo na especificação, pode ser modificado como um parâmetro caso haja problemas de segurança.
|
Desvantagens |
As limitações ficam por conta da inversa
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.
Em software, a encriptação e sua inversa empregam códigos diferentes e/ou tabelas.
Em hardware a inversa pode usar apenas uma parte do circuito usado no processo de encriptação.