Advanced Encryption Standard
Este artigo precisa de máis fontes ou referencias que aparezan nunha publicación acreditada que poidan verificar o seu contido, como libros ou outras publicacións especializadas no tema. Por favor, axude mellorando este artigo. (Desde maio de 2017.) |
Advanced Encryption Standard (AES), tamén coñecido como Rijndael, é un esquema de cifrado por bloque adoptado como un estándar de encriptación polo goberno estadounidense, e esperase que sexa usado en todo o mundo, como tamén analizado exhaustivamente, como foi o caso do seu predecesor, o DES. Foi adoptado polo Instituto Nacional de Estándares e Tecnoloxía (NIST) como un FIPS (PUB 197) en novembro do 2001 despois de 5 anos do proceso de estandarización.
O cifrado foi desenvolvido por dous criptologos Belgas, Joan Daemen e Vincent Rijmen, e enviado ó proceso de selección AES baixo o nome "Rijndael".
Descrición do cifrado
[editar | editar a fonte]Estritamente falando, AES non é precisamente Rijndael (aínda que na práctica chamaselle de maneira indistinta) xa que Rijndael permite un maior rango de tamaño de bloque e clave; AES ten un tamaño de bloque fixo de 128 bits e tamaños de chave de 128, 192 ó 256 bits, mentres que Rijndael pode ser especificado por unha clave que sexa múltiplo de 32 bits, cun mínimo de 128 bits e un máximo de 256 bits.
A maioría dos cálculos do algoritmo AES fanse nun campo finito determinado.
AES opera nun arranxo de 4×4 bytes, chamado state (algunhas versións de Rijndael cun tamaño de bloque maior teñen columnas adicionais no state). Para o cifrado, cada rolda da aplicación do algoritmo AES (excepto a última) consiste en catro pasos:
- SubBytes — neste paso realizase unha substitución non lineal onde cada byte é substituído por outro seguindo unha táboa lookup table.
- ShiftRows — neste paso realizase unha transposición onde cada fila do state é rotado de maneira cíclica un número determinado de veces.
- MixColumns — operación de mesturado que opera nas columnas do «state», combinando os catro bytes en cada columna usando unha transformación lineal.
- AddRoundKey — cada byte do «state» é combinado coa clave «round»; cada clave «round» deriva da clave de cifrado usando unha key schedule.
A rolda final omite a fase MixColumns.
Este artigo sobre informática é, polo de agora, só un bosquexo. Traballa nel para axudar a contribuír a que a Galipedia mellore e medre.
Existen igualmente outros artigos relacionados con este tema nos que tamén podes contribuír. |