Zstandard straume (.zstd)

IETF Standarts

Zstandard (Zstd) ir Meta modernais reāllaika bezzaudējumu saspiešanas algoritmts, kas nodrošina saspiešanas koeficientus, kuri ir salīdzināmi ar Deflate, vienlaikus nodrošinot dekompresijas ātrumu vairāku gigabaitu sekundē apmērā uz mūsdienu aparatūras.

Konvertēt ZSTD uz GZIP

Bezmaksas ZSTD uz GZIP konvertētājs pārlūkprogrammā. Konvertējiet failus uzreiz savā ierīcē.

Pārbaudīt un metadati

Operētājsistēmas un failu analizatori identificē Zstandard failus, pārbaudot sākotnējo bināro baitu secību:

Atlasiet vai velciet failus šeit

100% privāta konvertēšana pārlūkprogrammā - faili nekad neatstāj jūsu ierīci

vai ielīmējiet Ctrl+V
Privātuma garantija bez datu pārraides tīklā: 0 baitu augšupielādēti ārējos serveros. Visa apstrāde notika lokāli jūsu pārlūkprogrammas smilškastē.

Baitu līmeņa galvenes paraksts (maģiskie baiti)

Operētājsistēmas un failu analizatori identificē Zstandard failus, pārbaudot sākotnējo bināro baitu secību:

HEKSADECIMĀLAIS PARAKSTS (NOBĪDE 0):

28 B5 2F FD

ASCII ATTEIOLOJUMS: (µ/ý

Standartizācija: IETF RFC 8878

Tehniskās specifikācijas

Konteinera arhitektūraFrame header with magic 0xFD2FB528, frame descriptor, data blocks, and optional 32-bit/64-bit checksum
SaspiešanaFinite State Entropy (FSE) coder + Huffman coding + LZ77 with large search windows (up to 2 GB)
Baitu secībaLittle-Endian byte and bitstream order
Krāsu telpasN/A (Data Compression Stream)
Kanāli un struktūraGeneral-purpose byte stream compression
Maks. izmēriUnbounded streaming data capacity
Caurspīdīgums100% bit-exact lossless data reproduction
Straumēšana un progresīvā ielādeUltra-high-throughput streaming designed to saturate multi-gigabit NVMe and network links

Tehniskā salīdzinājuma matrica: Zstandard pret konkurentiem

Tehniskais atribūtsZstandard (Pašreizējais)GZBROTLILZ4
Dekompresijas ātrumsĪpaši ātrs (1.5 - 3.0 GB/s)Mērens (~300 MB/s)Ātrs (~400 MB/s)Zibenīgs (~4.0 GB/s)
Saspiešanas efektivitāteAugstāka nekā Gzip, atbilst Bzip2Bāzes standartsAugstākā tīmekļa tekstamZema (orientēta uz ātrumu)
Vārdnīcas apmācībaPielāgotas apmācītas vārdnīcasNavFiksēta 120 KB tīmekļa vārdnīcaNav
Mūsdienu OS atbalstsLinux kodols, Arch, Fedora, BtrfsUniversāls mantotais UnixTīmekļa pārlūki un CDN malējie mezgliLinux kodols un spēļu dzinēji

Biežākie bojājumu veidi un heksadecimālās atkopšanas ceļvedis

Dekompresijas kļūda: 'ZSTD_error_checksum_wrong: Checksum verification failed'.

Pamatcēlonis: Bojāts baits datu blokā, kura dēļ neizdodas 32 bitu vai 64 bitu xxHash kontroļsummas pārbaude.

Atkopšana: Izgūt ar '--force', lai apietu kontroļsummu, vai salabot ar File2File Zstd Converter.

Drošības analīze un parsētāja uzbrukuma vektori

Zstandard FSE dekodēšanas stāvokļu mašīnai stingri jāvalidē tabulas apraksti, lai novērstu nederīgas stāvokļu pārejas.

Zināmie uzbrukuma vektori

  • Bojātas FSE normalizēto skaitītāju tabulas, kas izraisa ārpus robežām esošus stāvokļu tabulas vaicājumus.
  • Veselu skaitļu pārpilde liela logu bufera تخصيص (alokācijas) laikā.
  • Pakalpojuma atteice (DoS), izmantojot pielāgotas vārdnīcas atmiņas izsmelšanu.

Aizsardzības labākā prakse:

Vēsturiskā izcelsme un pavērsieni

2021IETF publicē Zstandard kā RFC 8878; lielākie Linux distributīvi (Arch, Fedora, Ubuntu) to pieņem pakotņu veidošanai.
2018Linux kodols 4.14 iekļauj Zstandard saspiešanu Btrfs un SquashFS failu sistēmām.
2015Yanns Kolē (Yann Collet) izdod Zstandard Facebook, ieviešot galīgo stāvokļu entropijas (Finite State Entropy - FSE) tehnoloģiju.

Galvenās priekšrocības un plusi

  • Neticams dekompresijas ātrums: dekompresē ar ātrumu no 1.5 līdz 3.0 GB/s uz vienu kodolu, pilnībā noslogojot ātrgaitas NVMe SSD diskus.
  • Ļoti elastīga saspiešanas skala: piedāvā 22 saspiešanas līmeņus, sākot no zibenīgi ātra reāllaika līdz īpaši blīvai arhīvu saglabāšanai.
  • Pielāgota vārdnīcas apmācība ļauj sasniegt 3x līdz 5x labāku saspiešanu maziem ierakstiem, piemēram, JSON un datubāzes rindām.

Tehniskie ierobežojumi un mīnusi

  • Nedaudz lielāks atmiņas patēriņš nekā vecākajam Deflate, veicot augsta līmeņa saspiešanu ar lieliem logu izmēriem.
  • Nepieciešami moderni rīki; vecākiem Unix serveriem var nebūt iepriekš instalētu zstd utilītu.
  • Neapstrādātām .zst straumēm ir nepieciešama konteinerizācija (piemēram, TAR), lai saglabātu direktoriju hierarhiju.

Interesanti tehniski fakti

  • Zstandard izmanto galīgo stāvokļu entropiju (tANS) - asimetrisko skaitļu sistēmu sasniegumu, ko izstrādājis Jareks Duda (Jarek Duda) un kas sasniedz Šenona entropijas robežas aparatūras ātrumā.
  • Arch Linux un Fedora nomainīja savus pakotņu pārvaldniekus (pacman un dnf) uz .tar.zst, paātrinot programmatūras instalēšanu par vairāk nekā 400%.
  • Maģiskie baiti 0x28 0xB5 0x2F 0xFD tika izvēlēti tā, lai tie būtu viegli atpazīstami un neradītu kolīzijas ar vecākiem formātiem.

Bieži uzdotie tehniskie jautājumi

Kāpēc Zstandard aizstāj Gzip mūsdienu Linux?

Zstandard saspiež failus mazākos izmēros nekā Gzip, vienlaikus veicot dekompresiju 5 līdz 10 reizes ātrāk, ievērojami saīsinot programmatūras instalēšanas laiku un samazinot servera CPU noslodzi.

Kas ir vārdnīcas kompresija (dictionary compression) Zstd formātā?

Zstd var apmācīties no mazu failu kopas (piemēram, JSON API atbildēm), lai izveidotu pielāgotu vārdnīcu, ļaujot nākamajiem failiem saspiesties līdz pat 5 reizēm mazākos izmēros, atsaucoties uz kopīgiem šabloniem.

Kā es varu atspiest .zst vai .zstd failu?

Jūs varat atspiest .zst un .tar.zst failus tieši savā tīmekļa pārlūkprogrammā, izmantojot File2File.app, neinstalējot komandrindas rīkus.