Para mi proyecto de ciencias, estaré estudiando cifrado AES y el análisis de los resultados de diferentes teclas de tamaño para cifrado AES. Por ejemplo, me gustaría estudiar sobre 40 bits de tamaño teclas y observar cuánto tiempo se necesita para romperlos. Sé como AES-128 obras (clave de 16 bytes, crea una matriz de bits y los cambios en consecuencia), sin embargo, me preguntaba cómo iba a ser capaz de código de 40 bits AES mediante vez de 128 bits?
Nota: Esto es sólo con fines educativos, (en realidad no van a utilizar para nada seguro), y el idioma de preferencia es Java, sin embargo otros idiomas también son bienvenidos.
Así AES sólo está definido para los tamaños de clave 128, 192 y 256. Por lo tanto AES-40 no es una cosa.
Ahora supongo que podría limitar el tamaño de clave de 40 bits mediante la adopción de una de las variantes de AES reconocido y pasando unas llaves de 40 bits con ceros. Pero no llame a este AES, ya que no es real AES.
La Wikipedia tiene una descripción de alto nivel del algoritmo AES (s) y enlaces a otros recursos.