7z — формат стиснення файлів в архів, підтримує декілька різних алгоритмів стиснення, шифрування і попередньої обробки даних. Формат 7z спочатку був випущений в архіваторі 7-Zip. Програма 7-Zip загальнодоступна на умовах ліцензії GNU LGPL. LZMA SDK 4.62 був розміщений у відкритому доступі в грудні 2008 року. Остання стабільна версія 7-Zip і LZMA SDK — версія 19.00.
Розширення файлу: | .7z [1] |
---|---|
MIME-тип: | application/x-7z-compressed[2] |
Узагальнений ідентифікатор типу: | org.7-zip.7-zip-archive |
(Магічне число): | '7', 'z', 0xBC, 0xAF, 0x27, 0x1C |
Рік випуску: | 1999 |
Тип формату: | стиснення даних |
Специфікація формату 7z поширюється з початковим кодом 7-Zip. Специфікацію можна знайти в текстовому форматі в підкаталозі 'doc' дистрибутива початкового коду.
Особливості та поліпшення
Формат 7z забезпечує такі основні функції:
- Відкрита модульна архітектура, яка дозволяє використовувати будь-який метод стискування, перетворення або шифрування.
- Високі коефіцієнти стиснення (залежно від використовуваного методу стиснення).
- AES-256-шифрування.
- Підтримка великих файлів (приблизно до 16 ексбібайт, або 264 байт).
- Імена файлів Юнікод.
- Підтримка безперервного стиснення, за якого кілька файлів однакового типу стискаються в одному потоці, щоб використовувати об'єднану надмірність, притаманну файлам.
- Стиснення і шифрування заголовків архіву.
- Підтримка архівів, що складаються з декількох частин: наприклад, xxx.7z.001, xxx.7z.002, … (див. Пункти контекстного меню «Розділити файл…», щоб створити їх, і «Об'єднати файли…», щоб повторно зібрати архів із набору файлів-компонентів).
- Підтримка користувацьких бібліотек додатків-кодеків.
Відкрита архітектура формату дозволяє додавати в стандарт майбутні методи стиснення.
Методи стиснення
В даний час визначено такі методи стиснення:
- LZMA — варіант алгоритму, що використовує словник об'ємом до 4 ГБ. Після етапу LZ йде ентропійне кодування з використанням інтервального кодування на основі ланцюгів Маркова і двійкових дерев.
- LZMA2 — модифікована версія LZMA, яка забезпечує кращу підтримку багатопотоковості і менше розширення нестискуваних даних.
- Bzip2 — стандартний алгоритм перетворення Берроуза-Вілера. Bzip2 використовує два оборотних перетворення: BWT, а потім з кодування Гаффмана для зменшення символів (фактичний елемент стиснення).
- — PPMdH Дмитра Шкаріна 2002 року (PPMII / cPPMII) з невеликими змінами: PPMII — поліпшена версія алгоритму стиснення PPM 1984 року (прогнозування шляхом часткового зіставлення).
- Deflate — стандартний алгоритм, заснований на кодуванні LZ77 32 кБ і кодуванні Гаффмана. Deflate зустрічається в декількох форматах, зокрема в Zip, gzip, PNG і PDF. 7-Zip містить кодер Deflate з нуля.
Набір інструментів повторного стиснення, званий AdvanceCOMP, містить копію кодера Deflate з реалізації 7-Zip. Ці утиліти можна використовувати для подальшого стиснення файлів gzip, ZIP, PNG або MNG.
Фільтри попередньої обробки
LZMA SDK постачається з включеними препроцесорами BCJ і BCJ2, так що на пізніших етапах може досягатися більше стиснення: для процесорів x86, ARM, PowerPC (PPC), IA-64 Itanium і цілі переходу «нормалізовані» до стиснення шляхом зміни відносного положення в абсолютні значення. Для x86 це означає, що близькі переходи, виклики та умовні переходи (але не короткі переходи і умовні переходи) перетворюються з машинної мови «перейти на 1655 байт назад» в нормалізовану нотацію «перейти на адресу 5554»; таким чином усі переходи до 5554, можливо, спільної підпрограми, кодуються однаково, що робить їх більш стисливими.
- BCJ — конвертер для 32-бітних файлів x86.
- BCJ2 — препроцесор для 32-бітних файлів x86. BCJ2 є поліпшенням BCJ, додаючи додаткову обробку команд переходу / виклику x86. Близький перехід, близький виклик, умовні близькі цілі переходу поділяються і стискаються окремо в іншому потоці.
- Дельта-кодування — дельта-фільтр, базовий препроцесор для мультимедійних даних.
Подібна технологія попередньої обробки виконуваних файлів включена до іншого програмного забезпечення; RAR-компресор оснащений стисненням зміщень для 32-розрядних x86 виконуваних файлів і IA-64 виконуваних файлів, а компресор виконуваних файлів періоду виконання включає підтримку для роботи з 16-бітовими значеннями в межах двійкових файлів DOS.
Шифрування
Формат 7z підтримує шифрування за алгоритмом AES з 256-бітовим ключем. Ключ генерується з наданої користувачем парольної фрази за алгоритмом, заснованим на хеш-функції SHA-256. SHA-256 виконується 218 (262144) разів, що викликає значну затримку на малопродуктивних ПК перед початком стиснення або вилучення. Цей метод називається розтягуванням клавіш і використовується для ускладнення пошуку парольної фрази. Поточні атаки на основі графічного процесора і користувацькі апаратні засоби обмежують ефективність цього методу розтягання ключа. Тому все ще важливо вибрати надійний пароль. Формат 7z дозволяє шифрувати імена файлів архіву 7z.
Формати
Формат 7z не зберігає файлової системи (наприклад, прав доступу власника / групи UNIX або списків ACL NTFS) і, отже, може не підходити для цілей резервного копіювання / архівування. Обхідним шляхом в UNIX-подібних системах для цього є перетворення даних на потік бітів tar перед стисненням в 7z. Але варто відзначити, що GNU tar (поширений у багатьох середовищах UNIX) також може стискати за допомогою алгоритму LZMA без використання 7z, в цьому випадку використовується розширення назви файла архіву «.tar.lzma» (або просто «.tlz»), а не «.tar.7z». З іншого боку, важливо відзначити, що tar не зберігає кодування файлової системи, тому стиснуті в tar-файли назви файлів можуть бути спотворені, якщо їх розпакувати на іншому комп'ютері. Також можна використовувати LZMA2, запустивши його через інструмент xz. Останні версії GNU tar підтримують комутатор -J
, який запускає TAR через XZ. Розширення файлу: «.tar.xz» або «.txz». Цей метод стиснення був прийнятий для паукунків у багатьох дистрибутивах, таких як Arch Linux, Debian (deb), Fedora (rpm) і Slackware.
Формат 7z не дозволяє видобувати деякі «зіпсовані файли». Наприклад, якщо у вас є перший сегмент серії файлів 7z, 7z не може дати початок файлів всередині архіву — він повинен чекати, поки завантажаться всі сегменти. У форматі 7z також відсутні дані для відновлення, що робить його вразливим щодо деградації даних, якщо тільки він не використовується спільно з зовнішніми рішеннями, такими як архіви, або в складі файлових систем з надійним виправленням помилок. Для порівняння, в zip-файлах також відсутня функція відновлення.
Примітки
- https://www.file-extension.info/format/7z
- History of 7-zip changes
Посилання
- Офіційний сайт
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
7z format stisnennya fajliv v arhiv pidtrimuye dekilka riznih algoritmiv stisnennya shifruvannya i poperednoyi obrobki danih Format 7z spochatku buv vipushenij v arhivatori 7 Zip Programa 7 Zip zagalnodostupna na umovah licenziyi GNU LGPL LZMA SDK 4 62 buv rozmishenij u vidkritomu dostupi v grudni 2008 roku Ostannya stabilna versiya 7 Zip i LZMA SDK versiya 19 00 7zRozshirennya fajlu 7z 1 MIME tip application x 7z compressed 2 Uzagalnenij identifikator tipu org 7 zip 7 zip archiveMagichne chislo 7 z 0xBC 0xAF 0x27 0x1CRik vipusku 1999Tip formatu stisnennya danih Specifikaciya formatu 7z poshiryuyetsya z pochatkovim kodom 7 Zip Specifikaciyu mozhna znajti v tekstovomu formati v pidkatalozi doc distributiva pochatkovogo kodu Osoblivosti ta polipshennyaFormat 7z zabezpechuye taki osnovni funkciyi Vidkrita modulna arhitektura yaka dozvolyaye vikoristovuvati bud yakij metod stiskuvannya peretvorennya abo shifruvannya Visoki koeficiyenti stisnennya zalezhno vid vikoristovuvanogo metodu stisnennya AES 256 shifruvannya Pidtrimka velikih fajliv priblizno do 16 eksbibajt abo 264 bajt Imena fajliv Yunikod Pidtrimka bezperervnogo stisnennya za yakogo kilka fajliv odnakovogo tipu stiskayutsya v odnomu potoci shob vikoristovuvati ob yednanu nadmirnist pritamannu fajlam Stisnennya i shifruvannya zagolovkiv arhivu Pidtrimka arhiviv sho skladayutsya z dekilkoh chastin napriklad xxx 7z 001 xxx 7z 002 div Punkti kontekstnogo menyu Rozdiliti fajl shob stvoriti yih i Ob yednati fajli shob povtorno zibrati arhiv iz naboru fajliv komponentiv Pidtrimka koristuvackih bibliotek dodatkiv kodekiv Vidkrita arhitektura formatu dozvolyaye dodavati v standart majbutni metodi stisnennya Metodi stisnennyaV danij chas viznacheno taki metodi stisnennya LZMA variant algoritmu sho vikoristovuye slovnik ob yemom do 4 GB Pislya etapu LZ jde entropijne koduvannya z vikoristannyam intervalnogo koduvannya na osnovi lancyugiv Markova i dvijkovih derev LZMA2 modifikovana versiya LZMA yaka zabezpechuye krashu pidtrimku bagatopotokovosti i menshe rozshirennya nestiskuvanih danih Bzip2 standartnij algoritm peretvorennya Berrouza Vilera Bzip2 vikoristovuye dva oborotnih peretvorennya BWT a potim z koduvannya Gaffmana dlya zmenshennya simvoliv faktichnij element stisnennya PPMdH Dmitra Shkarina 2002 roku PPMII cPPMII z nevelikimi zminami PPMII polipshena versiya algoritmu stisnennya PPM 1984 roku prognozuvannya shlyahom chastkovogo zistavlennya Deflate standartnij algoritm zasnovanij na koduvanni LZ77 32 kB i koduvanni Gaffmana Deflate zustrichayetsya v dekilkoh formatah zokrema v Zip gzip PNG i PDF 7 Zip mistit koder Deflate z nulya Nabir instrumentiv povtornogo stisnennya zvanij AdvanceCOMP mistit kopiyu kodera Deflate z realizaciyi 7 Zip Ci utiliti mozhna vikoristovuvati dlya podalshogo stisnennya fajliv gzip ZIP PNG abo MNG Filtri poperednoyi obrobkiLZMA SDK postachayetsya z vklyuchenimi preprocesorami BCJ i BCJ2 tak sho na piznishih etapah mozhe dosyagatisya bilshe stisnennya dlya procesoriv x86 ARM PowerPC PPC IA 64 Itanium i cili perehodu normalizovani do stisnennya shlyahom zmini vidnosnogo polozhennya v absolyutni znachennya Dlya x86 ce oznachaye sho blizki perehodi vikliki ta umovni perehodi ale ne korotki perehodi i umovni perehodi peretvoryuyutsya z mashinnoyi movi perejti na 1655 bajt nazad v normalizovanu notaciyu perejti na adresu 5554 takim chinom usi perehodi do 5554 mozhlivo spilnoyi pidprogrami koduyutsya odnakovo sho robit yih bilsh stislivimi BCJ konverter dlya 32 bitnih fajliv x86 BCJ2 preprocesor dlya 32 bitnih fajliv x86 BCJ2 ye polipshennyam BCJ dodayuchi dodatkovu obrobku komand perehodu vikliku x86 Blizkij perehid blizkij viklik umovni blizki cili perehodu podilyayutsya i stiskayutsya okremo v inshomu potoci Delta koduvannya delta filtr bazovij preprocesor dlya multimedijnih danih Podibna tehnologiya poperednoyi obrobki vikonuvanih fajliv vklyuchena do inshogo programnogo zabezpechennya RAR kompresor osnashenij stisnennyam zmishen dlya 32 rozryadnih x86 vikonuvanih fajliv i IA 64 vikonuvanih fajliv a kompresor vikonuvanih fajliv periodu vikonannya vklyuchaye pidtrimku dlya roboti z 16 bitovimi znachennyami v mezhah dvijkovih fajliv DOS ShifruvannyaFormat 7z pidtrimuye shifruvannya za algoritmom AES z 256 bitovim klyuchem Klyuch generuyetsya z nadanoyi koristuvachem parolnoyi frazi za algoritmom zasnovanim na hesh funkciyi SHA 256 SHA 256 vikonuyetsya 218 262144 raziv sho viklikaye znachnu zatrimku na maloproduktivnih PK pered pochatkom stisnennya abo viluchennya Cej metod nazivayetsya roztyaguvannyam klavish i vikoristovuyetsya dlya uskladnennya poshuku parolnoyi frazi Potochni ataki na osnovi grafichnogo procesora i koristuvacki aparatni zasobi obmezhuyut efektivnist cogo metodu roztyagannya klyucha Tomu vse she vazhlivo vibrati nadijnij parol Format 7z dozvolyaye shifruvati imena fajliv arhivu 7z FormatiFormat 7z ne zberigaye fajlovoyi sistemi napriklad prav dostupu vlasnika grupi UNIX abo spiskiv ACL NTFS i otzhe mozhe ne pidhoditi dlya cilej rezervnogo kopiyuvannya arhivuvannya Obhidnim shlyahom v UNIX podibnih sistemah dlya cogo ye peretvorennya danih na potik bitiv tar pered stisnennyam v 7z Ale varto vidznachiti sho GNU tar poshirenij u bagatoh seredovishah UNIX takozh mozhe stiskati za dopomogoyu algoritmu LZMA bez vikoristannya 7z v comu vipadku vikoristovuyetsya rozshirennya nazvi fajla arhivu tar lzma abo prosto tlz a ne tar 7z Z inshogo boku vazhlivo vidznachiti sho tar ne zberigaye koduvannya fajlovoyi sistemi tomu stisnuti v tar fajli nazvi fajliv mozhut buti spotvoreni yaksho yih rozpakuvati na inshomu komp yuteri Takozh mozhna vikoristovuvati LZMA2 zapustivshi jogo cherez instrument xz Ostanni versiyi GNU tar pidtrimuyut komutator J yakij zapuskaye TAR cherez XZ Rozshirennya fajlu tar xz abo txz Cej metod stisnennya buv prijnyatij dlya paukunkiv u bagatoh distributivah takih yak Arch Linux Debian deb Fedora rpm i Slackware Format 7z ne dozvolyaye vidobuvati deyaki zipsovani fajli Napriklad yaksho u vas ye pershij segment seriyi fajliv 7z 7z ne mozhe dati pochatok fajliv vseredini arhivu vin povinen chekati poki zavantazhatsya vsi segmenti U formati 7z takozh vidsutni dani dlya vidnovlennya sho robit jogo vrazlivim shodo degradaciyi danih yaksho tilki vin ne vikoristovuyetsya spilno z zovnishnimi rishennyami takimi yak arhivi abo v skladi fajlovih sistem z nadijnim vipravlennyam pomilok Dlya porivnyannya v zip fajlah takozh vidsutnya funkciya vidnovlennya Primitkihttps www file extension info format 7z https svn apache org repos asf httpd httpd tags 2 4 37 docs conf mime types History of 7 zip changesPosilannyaOficijnij sajt