Camellia (algorithme)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir camellia.
Camellia
Résumé
Concepteur(s) Nippon Telegraph and Telephone Corporation, Mitsubishi Electric Corporation
Première publication 2000
Dérivé de E2
Chiffrement(s) basé(s) sur cet algorithme
Caractéristiques
Taille(s) du bloc 128 bits
Longueur(s) de la clé 128, 192, 256 bits
Structure schéma de Feistel
Nombre de tours 18 (clé 128 bits) ou 24 (clés de 192 ou 256 bits)
Meilleure cryptanalyse
Cryptanalyse conduite par les auteurs, résiste à toutes les attaques connues

Camellia est un algorithme de chiffrement symétrique par blocs de 128 bits, conçu pour fonctionner avec des clés de 128, 192 et 256 bits. Tous les six tours, une transformation nommée « FL-function » est appliquée.

Il a été développé conjointement par la Nippon Telegraph and Telephone Corporation et Mitsubishi Electric Corporation en 2000 sur la base de l'algorithme E2 ayant participé au concours AES.

Camellia a été sélectionné et recommandé par le projet NESSIE de l'Union européenne, c'est l'un des standards de chiffrement du gouvernement japonais.

Depuis octobre 2006, le code source de Camellia est librement disponible sous plusieurs licences libres (BSD, GPL, MPL, et licence OpenSSL) [1]. Il était auparavant disponible sous une autre licence sans royalties.

Avec une implémentation en C, il est globalement deux fois plus lent que AES mais offre des performances similaires à Blowfish[2].

Cryptanalyse[modifier | modifier le code]

La cryptanalyse publiée initialement par les créateurs de l'algorithme[3] a mis en évidence quelques faiblesses, bien qu'elles ne puissent casser l'algorithme dans son intégralité. D'après des estimations très optimistes, 6 tours de Camellia pourraient être attaqués par une analyse différentielle nécessitant 2108 textes clairs choisis, et par une analyse linéaire nécessitant 2110 textes clairs connus. Les 5 premiers tours de l'algorithme peuvent être différenciés d'une permutation aléatoire en utilisant 234 textes clairs choisis, et 250 textes clairs choisis sur 6 tours. L'attaque peut être étendue à 7 tours en utilisant 268 textes clairs choisis, mais cette attaque est opérée sur une version simplifiée de l'algorithme, à laquelle il manque la fonction FL/FL−1 utilisée tous les 6 tours de l'algorithme ; la fonction FL/FL−1 est donc efficace à empêcher l'extension de ces attaques à plus de 6 tours. À ce jour, il n'existe donc aucune attaque permettant de décrypter des données chiffrées plus rapidement que par une recherche exhaustive.

Références[modifier | modifier le code]

  • Kazumaro Aoki, Tetsuya Ichikawa, Masayuki Kanda, Mitsuru Matsui, Shiho Moriai, Junko Nakajima, Toshio Tokita. Camellia: A 128-Bit Block Cipher Suitable for Multiple Platforms — Design and Analysis. Selected Areas in Cryptography 2000, pp39–56.
  1. DLFP: NTT s'implique dans la cryptographie libre
  2. Benchmark Results (Thu Nov 27 15:46:11 2003) by decrypted bytes
  3. (en)http://www.ipa.go.jp/security/enc/CRYPTREC/fy15/doc/1082_camellia.pdf

Liens externes[modifier | modifier le code]