Blowfish

En cryptographie, Blowfish est un chiffrement par blocs symétrique à clé, fabriqué en 1993 par Bruce Schneier et qui, depuis 1993, a été inclus dans un grand nombre de produits de cryptage. Blowfish a un bon taux de cryptage dans les logiciels et jusqu'en 2008, aucun modèle d'attaque cryptanalytique n'a été trouvé. Cependant, l'algorithme de chiffrement par blocs AES fait désormais l'objet d'une plus grande attention.

Schneier a conçu Blowfish comme un algorithme à usage général, destiné à remplacer l'ancien algorithme DES et à supprimer les problèmes et difficultés des autres algorithmes de cryptage. À l'époque où Blowfish a été lancé, de nombreux autres algorithmes étaient propriétaires ou secrets. Schneier a déclaré que "Blowfish n'est pas breveté et le restera dans tous les pays. L'algorithme est par la présente placé dans le domaine public, et peut être utilisé librement par n'importe qui".

Les principales caractéristiques de la conception comprennent des boîtes S dépendantes des clés et un calendrier des clés très complexe. Blowfish est l'un des chiffrages par blocs les plus rapides utilisés par de nombreuses personnes, sauf lors du changement de clés. Chaque nouvelle clé doit être prétraitée, ce qui prend le même temps que le cryptage d'environ 4 kilo-octets de texte, ce qui est très lent par rapport aux autres codes de chiffrement par blocs. Cela met fin à son utilisation dans certaines applications (comme dans les plus petits systèmes intégrés comme les premières cartes à puce), mais ce n'est pas un problème dans d'autres applications. Dans l'une des applications, c'est en fait une bonne chose : la méthode de hachage de mot de passe utilisée dans OpenBSD utilise un algorithme issu de Blowfish qui utilise l'horaire des touches lentes ; l'idée est que l'effort de calcul supplémentaire requis offre une protection contre les attaques par dictionnaire. Voir renforcement des clés.

Blowfish a une taille de bloc de 64 bits et une longueur de clé variable de 0 à 448 bits. Il s'agit d'un code Feistel à 16 chiffres et utilise de grandes boîtes S dépendantes de la clé. Sa structure est similaire à celle du CAST-128, qui utilise des S-boxes fixes.

En 1996, Serge Vaudenay a découvert une attaque de texte connu nécessitant 28r + 1 plaintexts connus pour être brisés, où r est le nombre de coups. De plus, il a également trouvé une classe de touches faibles qui peuvent être détectées et brisées par la même attaque avec seulement 24r + 1 plausibles connus. Cette attaque ne peut pas être utilisée contre les Blowfish ordinaires ; elle suppose la connaissance des S-box dépendantes des clés. Vincent Rijmen, dans ses articles de doctorat, a introduit une attaque différentielle de second ordre qui peut briser quatre coups et pas plus. Il n'y a toujours pas de moyen connu de briser les 16 coups, à part une recherche par la force brute. Un bogue d'extension de signe dans l'un des codes C publiés a été trouvé en 1996.

La version complète de Blowfish, connue du public jusqu'en 2008, n'a pas fait l'objet d'une bonne cryptanalyse. Cependant, en 2007, Bruce Schneier a noté que, bien que Blowfish soit toujours utilisé, il a recommandé d'utiliser le nouvel algorithme Twofish à la place

Pages connexes

  • Norme de cryptage avancée
  • eSTREAM - Une évaluation des nouveaux codes de flux menée par l'UE.
  • Deux poissons
  • MacGuffin

Questions et réponses

Q : Qu'est-ce que Blowfish ?


R : Blowfish est un chiffrement par blocs symétrique à clé qui a été créé en 1993 par Bruce Schneier. Il a été inclus dans de nombreux produits de chiffrement depuis lors.

Q : Dans quel but Blowfish a-t-il été créé ?


R : Blowfish a été conçu comme un algorithme à usage général pour remplacer l'ancien algorithme DES et pour éliminer les problèmes et les difficultés des autres algorithmes de cryptage.

Q : Quelle peut être la longueur de la clé pour Blowfish ?


R : La longueur de la clé pour Blowfish peut aller de 0 à 448 bits.

Q : Quelles sont les caractéristiques de la conception de Blowfish ?


R : Parmi les caractéristiques de la conception, citons les boîtes S dépendantes de la clé et un programme de clé très complexe.

Q : Existe-t-il une cryptanalyse connue sur la version full-round de Blowfish ?


R : En 2008, il n'existe aucun moyen connu de casser les 16 rounds complets en dehors d'une recherche par force brute.

Q : Quel type d'attaque Serge Vaudenay a-t-il trouvé contre Blowfish ?


R : Serge Vaudenay a découvert une attaque par texte en clair connu nécessitant 28r + 1 textes en clair connus pour être percée, où r est le nombre de tours. Il a également trouvé une classe de clés faibles qui pouvaient être détectées et cassées par cette même attaque avec seulement 24r + 1 textes en clair connus.

Q : Bruce Schneier recommande-t-il maintenant d'utiliser Twofish au lieu de Blowfish ?


R : Oui, Bruce Schneier recommande d'utiliser Twofish au lieu de Blowfish maintenant en raison de ses mesures de sécurité améliorées par rapport aux anciens algorithmes comme DES ou même aux plus récents comme AES.

AlegsaOnline.com - 2020 / 2023 - License CC3