Flux Zstandard (.zstd)

IETF Standard

Zstandard (Zstd) est l'algorithme moderne de compression sans perte en temps réel de Meta, offrant des taux de compression comparables à Deflate tout en décompressant à des vitesses de plusieurs gigaoctets par seconde sur du matériel moderne.

Convertir ZSTD en GZIP

Convertisseur gratuit de ZSTD vers GZIP dans le navigateur. Convertissez des fichiers instantanément sur votre appareil.

Inspecter et métadonnées

Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers Zstandard en inspectant la séquence d'octets binaires de tête :

Sélectionnez ou déposez des fichiers ici

Conversion 100 % privée dans le navigateur - les fichiers ne quittent jamais votre appareil

ou coller Ctrl+V
Garantie de confidentialité sans transmission réseau : 0 octet téléchargé vers des serveurs externes. Tout le traitement a lieu localement dans le bac à sable de votre navigateur.

Signature d'en-tête au niveau des octets (Magic Bytes)

Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers Zstandard en inspectant la séquence d'octets binaires de tête :

SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :

28 B5 2F FD

REPRÉSENTATION ASCII : (µ/ý

Normalisation : IETF RFC 8878

Spécifications techniques

Architecture de conteneurEn-tête de trame avec le nombre magique 0xFD2FB528, descripteur de trame, blocs de données et somme de contrôle optionnelle de 32 bits/64 bits
CompressionCodage FSE (Finite State Entropy) + codage Huffman + LZ77 avec de grandes fenêtres de recherche (jusqu'à 2 Go)
Boutisme des octetsOrdre des octets et des flux de bits petit-boutiste
Espaces colorimétriquesN/A (Flux de compression de données)
Canaux et structureCompression de flux d'octets à usage général
Dimensions maximalesCapacité de données en flux illimitée
TransparenceReproduction de données sans perte bit à bit exacte à 100 %
Streaming et progressifFlux à ultra-haute capacité conçu pour saturer les liens NVMe multi-gigabits et réseau

Matrice de comparaison technique : Zstandard vs Concurrents

Attribut techniqueZstandard (Actuel)GZBROTLILZ4
Vitesse de décompressionUltra-rapide (1,5 - 3,0 Go/s)Modérée (~300 Mo/s)Rapide (~400 Mo/s)Fulgurante (~4,0 Go/s)
Efficacité de compressionSupérieure à Gzip, égale Bzip2Norme de référenceLa plus élevée sur le texte webFaible (axée sur la vitesse)
Entraînement par dictionnaireDictionnaires personnalisés entraînésAucunDictionnaire web fixe de 120 KoAucun
Adoption par les OS modernesNoyau Linux, Arch, Fedora, BtrfsUnix hérité universelNavigateurs web & périphérie CDNNoyau Linux & moteurs de jeux

Modes de corruption courants et guide de récupération hexadécimale

Erreur de décompression : « ZSTD_error_checksum_wrong: Checksum verification failed ».

Cause racine: Octet corrompu dans le bloc de données provoquant l'échec de la vérification xxHash 32 bits ou 64 bits.

Récupération: Extrayez avec « --force » pour contourner la somme de contrôle ou réparez avec le convertisseur Zstd File2File.

Analyse de sécurité et vecteurs d'attaque de l'analyseur

La machine à états de décodage FSE de Zstandard doit valider rigoureusement les descriptions de table pour empêcher les sauts d'état invalides.

Vecteurs d'attaque connus

  • Tables de compteurs normalisées FSE corrompues provoquant des recherches de tables d'états hors limites.
  • Dépassement d'entier lors de l'allocation d'un grand tampon de fenêtre.
  • Déni de service par épuisement de la mémoire du dictionnaire personnalisé.

Bonnes pratiques de défense: Validez les limites de taille de fenêtre de l'en-tête de trame et restreignez les allocations de dictionnaire maximales autorisées.

Origines historiques et jalons

2021L'IETF publie Zstandard en tant que RFC 8878 ; les principales distributions Linux (Arch, Fedora, Ubuntu) l'adoptent pour leur empaquetage.
2018Le noyau Linux 4.14 intègre la compression Zstandard pour les systèmes de fichiers Btrfs et SquashFS.
2015Yann Collet publie Zstandard chez Facebook, introduisant la technologie FSE (Finite State Entropy).

Principaux avantages

  • Vitesse de décompression incroyable : décompresse à 1,5 à 3,0 Go/s par cœur, saturant les SSD NVMe haute vitesse.
  • Échelle de compression hautement flexible : propose 22 niveaux de compression, allant du temps réel ultra-rapide à l'archivage ultra-compact.
  • L'entraînement par dictionnaire personnalisé permet d'obtenir une compression 3x à 5x meilleure sur de petits enregistrements tels que JSON et les lignes de base de données.

Limites techniques

  • Empreinte mémoire légèrement supérieure à celle de Deflate hérité lors d'une compression de haut niveau avec de grandes tailles de fenêtres.
  • Nécessite des outils modernes ; les serveurs Unix hérités peuvent manquer d'utilitaires zstd préinstallés.
  • Les flux bruts .zst nécessitent une conteneurisation (comme TAR) pour préserver les hiérarchies de répertoires.

Anecdotes techniques

  • Zstandard utilise l'entropie d'état fini (tANS), une percée dans les systèmes numériques asymétriques développée par Jarek Duda qui atteint les limites d'entropie de Shannon aux vitesses du matériel.
  • Arch Linux et Fedora ont basculé leurs gestionnaires de paquets (pacman et dnf) vers .tar.zst, accélérant l'installation des logiciels de plus de 400 %.
  • Les octets magiques 0x28 0xB5 0x2F 0xFD ont été choisis pour être facilement reconnaissables et éviter les collisions avec les formats hérités.

Foire aux questions techniques

Pourquoi Zstandard remplace-t-il Gzip dans le Linux moderne ?

Zstandard compresse les fichiers plus petits que Gzip tout en les décompressant 5 à 10 fois plus vite, réduisant considérablement les temps d'installation des logiciels et l'utilisation du processeur du serveur.

Qu'est-ce que la compression par dictionnaire dans Zstd ?

Zstd peut s'entraîner sur un ensemble de petits fichiers (comme des réponses d'API JSON) pour créer un dictionnaire personnalisé, permettant aux fichiers suivants de se compresser jusqu'à 5 fois plus petit en référençant des motifs partagés.

Comment puis-je décompresser un fichier .zst ou .zstd ?

Vous pouvez décompresser les fichiers .zst et .tar.zst directement dans votre navigateur web à l'aide de File2File.app sans installer d'outils en ligne de commande.