TEA
Un pequeño algoritmo de encripcion (TEA) es un sistema de cifrado de bloque de dominio público que se caracteriza por su sencillez, y al mismo tiempo, no compromete la velocidad y la seguridad. Fue creado por David Wheeler y Roger Needham del Laboratorio de Computación de Cambridge. Dado que el algoritmo TEA esta sin patentar y está en el dominio abierto, cualquier persona puede utilizar, modificar, personalizar sin pagar derechos de licencia.
Detalles del Algoritmo
TEA es un cifrado simétrico de 64 bits y utiliza texto plano como bloques de datos y cifra por una clave de 128 bits. TEA usa operaciones no destructivas, XOR, ADD SHIFT para crear el texto cifrado. Uso suplente de XOR y ADD proporciona no linealidad y una mayor protección contra el criptoanálisis.
En general, 64 ciclos del algoritmo se recomiendan para una mayor seguridad, pero unos 32 ciclos se considera suficiente, y hasta 16 ciclos se considera lo suficientemente seguro en donde los sistemas de datos sensibles rápidamente las edades (por ejemplo, video en tiempo real).
Debilidad
TEA sufre de algunos inconvenientes. Una de las principales debilidades del algoritmo es que cada clave es equivalente a otras tres, lo que reduce la eficacia del tamaño de la clave. Esta debilidad particular se exploto cuando la consola de juegos Xbox de Microsoft fue jaqueado recientemente, en la que TEA se implementó como una función dura. Además, TEA también se ha encontrado a ser propensos a otras deficiencias, como las relacionadas con los ataques claves. Estas debilidades causaron la revisión del algoritmo TEA, y esto dio lugar a las variantes Block XTEA y TEA. TEA variantes se abordan algunas de estas debilidades inherentes.
Fuente de Código TEA
El algoritmo TEA es ligero en la naturaleza, y, por lo tanto, es bastante portátil, y está disponible en varias formas. Para mostrar cómo pequeño en realidad es, en este caso es la aplicación del algoritmo TEA, que se publican en el dominio público por David Wheeler y Roger Needham:
CIFRADO:

Como se puede ver no le dicen pequeño por nada!
Descifrado:

Aplicaciones de TEA
El código permite a la TEA a ser usados bajo severas limitaciones de hardware, en términos de la cantidad de memoria RAM (Memoria de Acceso Aleatorio). Este es el caso típico en muchos sistemas de hardware embebidos.
Referencias
- The Tiny Encryption Algorithm (TEA)
- http://www.simonshepherd.supanet.com/tea.htm
- TEA, a Tiny Encryption Algorithm.
- http://www.ftp.cl.cam.ac.uk/ftp/papers/djw-rmn/djw-rmn-tea.html
- TEA - Encrypted autorization with protected password
- http://www.hw-group.com/support/tea/index_en.html