BLAKE3 une fonction de hachage cryptographique sécurisée, rapide et parallélisable

BLAKE3 es une fonction de hachage cryptographique Quoi il se caractérise par être beaucoup plus rapide que MD5, SHA-1, SHA-2, SHA-3 et BLAKE2, en plus il est plus sécurisé, contrairement à MD5 et SHA-1. Et sûr contre l'extension de longueur, contrairement à SHA-2.

Il est hautement parallélisable sur n'importe quel nombre de threads et de voies SIMD, car il s'agit d'un arbre Merkle à l'intérieur et possède un algorithme sans variante, qui est rapide sur x86-64 et également sur des architectures plus petites.

BLAKE3 repose sur une instance optimisée de la fonction de hachage établie BLAKE2 et dans le mode arbre Bao d'origine. Les spécifications et la justification de la conception sont disponibles sur papier BLAKE3. La taille de sortie par défaut est de 256 bits.

Dans le test de génération de hachage pour un fichier de 16 Ko, BLAKE3 avec une clé de 256 bits surpasse SHA3-256 de 17 fois, SHA-256 de 14 fois, SHA-512 9 fois, SHA-1 6 fois et BLAKE2b 5 fois.

Il s'agit d'un écart important qui subsiste même lors du traitement de grandes quantités de données, par exemple BLAKE3 s'est avéré 8 fois plus rapide que SHA-256 lors du calcul d'un hachage pour 1 Go de données aléatoires.

L'amélioration des performances a été obtenue en réduisant le nombre de tours de 10 à 7 et en hachant les blocs séparément en morceaux de 1 Ko. Selon les créateurs, ils ont trouvé une preuve mathématique convaincante que vous pouvez vous en tirer avec 7 tours au lieu de 10 tout en conservant le même niveau de fiabilité.

Dans le même temps, certains chercheurs expriment des doutes, estimant que même si actuellement 7 tours sont suffisants pour contrer toutes les attaques connues dans les hachages, alors 3 tours supplémentaires peuvent être utiles si de nouvelles attaques sont détectées à l'avenir.

À propos de BLAKE3

La fonction de hachage est conçu pour des applications telles que la vérification de l'intégrité des fichiers, l'authentification des messages et la génération de données pour les signatures numériques cryptographiques. BLAKE3 n'est pas conçu pour hacher les mots de passe, car il vise à calculer les hachages le plus rapidement possible (pour les mots de passe, il est recommandé d'utiliser les fonctions de hachage lent et escrypt, bcrypt, scrypt ou Argon2).

La fonction de hachage en question est insensible à la taille des données en cours de traitement et est protégée contre la recherche de collision et les attaques de pré-image.

L'algorithme était développé par des cryptographes renommés et poursuit le développement de l'algorithme BLAKE2 et utilise le mécanisme Bao pour coder l'arbre blockchain. Contrairement à BLAKE2 (BLAKE2b, BLAKE2s), BLAKE3 propose un algorithme unique pour toutes les plateformes qui n'est pas lié à la largeur de bit et à la taille de hachage.

Quant à la division de bloc, dans BLAKE3, le flux est divisé en morceaux de 1 Ko et chaque morceau est haché indépendamment. Un grand hachage est formé sur la base de hachages de morceaux basés sur l'arbre binaire de Merkle.

Cette séparation permet de résoudre le problème de parallélisation du traitement des données lors du calcul d'un hachage ; par exemple, vous pouvez utiliser des instructions SIMD à 4 fils pour calculer simultanément des hachages à 4 blocs. Les fonctions de hachage SHA-* traditionnelles traitent les données de manière séquentielle.

Autre du Les fonctionnalités de BLAKE3 sont :

  • Application en modes PRF, MAC, KDF, XOF et comme hachage normal ;
  • Un algorithme pour toutes les architectures, rapide sur les systèmes x86-64 et les processeurs ARM 32 bits.

Concernant les principales différences entre BLAKE3 et BLAKE2 :

  • Utilisation d'une arborescence binaire pour obtenir un parallélisme illimité dans le calcul du hachage.
  • Réduction du nombre de tours de 10 à 7.
  • Trois modes de fonctionnement : Hash, Keyed Hash (HMAC) et Key Generation (KDF).
  • Il n'y a pas de surcharge supplémentaire lors du hachage d'une clé en raison de l'utilisation de la zone précédemment occupée par le bloc de paramètres de la clé.
  • Mécanisme intégré pour fonctionner sous la forme d'une fonction de sortie extensible (XOF) qui le permet
  • parallélisation et positionnement (recherche).

Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails dans le lien suivant.


Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.