Concepteur(s) |
T. Shimoyama, H. Yanami, K. Yokoyama, M. Takenaka, K. Itoh, J. Yajima, N. Torii, et H. Tanaka (Fujitsu Laboratories LTD) |
---|---|
Première publication | 2000 |
Dérivé de | Aucun |
Chiffrement(s) basé(s) sur cet algorithme | Aucun |
Taille(s) du bloc | 128 bits |
---|---|
Longueur(s) de la clé | 128, 192 et 256 bits |
Structure | mixte de réseau de Feistel et réseau de substitution permutation |
Nombre de tours | 6½ ou 7½ |
Meilleure cryptanalyse
Raddum, Knudsen, Dunkelman, Keller en 2001
SC2000 est un algorithme de chiffrement par bloc conçu par des cryptographes japonais des laboratoires de Fujitsu. Présenté en 2000 au projet Nessie, il ne passa pas la phase I (comme six autres algorithmes).
SC2000 consiste en une couche de 32 tables de substitution (ou S-Box) de 4 bits chacune, puis de deux tours dans un réseau de Feistel. Pour chaque tour les clés sont combinées par XOR au bloc de données chiffré, avant et après le traitement via les S-Box. La demi-étape finale comprend des additions de clé et des recherches dans les S-Box. La fonction F du réseau de Feistel est une couche de quatre S-Box de 6 bits et de huit S-Box de 5 bits, d'une multiplication par une matrice de 32x32 bits et de la combinaison par opérations binaires des mots résultants. Deux mots sont obtenus en sortie de cette fonction dans le réseau de Feistel.
Le key schedule est une transformation complexe de la clé de l'utilisateur, dans le sens où chacun des 32 bits des clés intermédiaires dépend de l'ensemble de la clé.
En 2001, Raddum et Knudsen d'une part et Dunkelman et Keller d'autre part ont rapporté des possibilités d'attaque par cryptanalyse différentielle sur des variantes réduites de SC2000 en 3½ ou 4½ tours au lieu des 6½ de base. Une faiblesse qui permet d'extraire jusqu'à 32 bits des clés utilisées pour le premier et le dernier tour de la version en 4½ tours.