
Threefish se creó en 2008 como parte de la función hash de Skein , una presentación a la competencia SHA-3 de NIST. Se puede encontrar una especificación completa de Threefish en las secciones 2.2 y 3.3 del documento de envío de Skein. El código fuente y los vectores de prueba también están disponibles.
Threefish consta de solo tres operaciones: adición, XOR y rotaciones de una cantidad fija, todas operando en palabras de 64 bits. Threefish-256 y Threefish-512 consisten en 72 rondas; Threefish-1024 consta de 80 rondas. Debido a que Threefish solo usa operaciones simples y porque fue diseñado pensando en el rendimiento, Threefish-512 cifra los datos a 6.1 ciclos de reloj por byte en máquinas de 64 bits; Threefish-1024 cifra los datos a 6,5 ciclos de reloj por byte. Se puede encontrar información detallada sobre el rendimiento, tanto en el software como en el hardware, en el documento de envío de Skein.
Actualmente no hay un criptoanálisis exitoso de Threefish. Más información se puede encontrar en la página de Skein.
Threefish no está patentado, y el código fuente no tiene derechos de autor ni licencia; Es gratis para todos los usos.
Threefish fue creado y analizado por: Niels Ferguson - Stefan Lucks - Bruce Schneier - Doug Whiting - Mihir Bellare - Tadayoshi Kohno - Jon Callas - Jesse Walker
Implementación en C # de Skein y Threefish por Alberto Fajardo
.NET / Mono implementación de Threefish-256 por Marcus Griep
AVR Implementación de 8 bits de Threefish y Skein por Jörg Walter
Skein y Threefish para Java, C y Go (Skein3Fish)
Threefish para Linux kernel by bogdankernel
S4 Cryptographic Library (incluye Skein y Threefish)
.NET / Mono implementación de Threefish-256 por Marcus Griep
AVR Implementación de 8 bits de Threefish y Skein por Jörg Walter
Skein y Threefish para Java, C y Go (Skein3Fish)
Threefish para Linux kernel by bogdankernel
S4 Cryptographic Library (incluye Skein y Threefish)
Comentarios