7-Zip архив (.7z)
Спецификация Стандарт7-Zip Archive (7Z) е отворен контейнерен формат с висока степен на компресия, който използва алгоритмите LZMA и LZMA2, постига значително по-висок коефициент на компресия от наследения ZIP и предлага вградено AES-256 криптиране на заглавната част.
Конвертиране от ZIP към 7Z
Безплатен конвертор от ZIP към 7Z в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Проверка и метаданни
Операционните системи и файловите анализатори идентифицират 7Z файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на заглавката (сигнатурни байтове)
Операционните системи и файловите анализатори идентифицират 7Z файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
37 7A BC AF 27 1CASCII ПРЕДСТАВЯНЕ: 7z¼¯'\x1c
Стандартизация: Спецификация на отворената архитектура 7-Zip
Технически спецификации
| Контейнерна архитектура | Отворена модулна структура на заглавната част, която поддържа последователно прилагане на филтри за компресия и имена на файлове в Unicode |
| Компресия | LZMA, LZMA2, PPMd (текст), BZip2, Deflate, BCJ / BCJ2 (филтри за преходи в изпълним код) |
| Поредност на байтовете (Endianness) | Младши байт първи (Little-Endian, Intel x86) |
| Цветови пространства | Неприложимо (контейнер за архиви) |
| Канали и структура | Дърво с директории за множество файлове, многотомни архиви и блокове с плътна компресия |
| Максимални размери | Поддържа отделни файлове и общ обем на архива до 16 екзабайта (16 милиарда GB) |
| Прозрачност | Пълни файлови атрибути, разрешения Unix и времеви отметки NTFS с 64-битова точност |
| Поточно предаване и прогресивно зареждане | По подразбиране заглавната част се съхранява в края на файла; поточно предаване е възможно със специално разположение без плътна компресия |
Техническа сравнителна матрица: 7Z спрямо конкуренти
| Технически атрибут | 7Z (Текущ) | ZIP | RAR | TAR.GZ |
|---|---|---|---|---|
| Алгоритъм за компресия | LZMA / LZMA2 / PPMd | Deflate (традиционен) | Проприетарен алгоритъм RAR5 | Deflate (върху поток Tar) |
| Криптиране на имената на файловете | Поддържа се (AES-256 криптиране на заглавката) | Не се поддържа (имената на файловете са видими) | Поддържа се (AES-256 криптиране на заглавката) | Не се поддържа (обикновени tar метаданни) |
| Плътна компресия | Поддържа се (може значително да подобри компресията при обединяване на файлове) | Не се поддържа в стандартен ZIP | Поддържа се в RAR архиви | Естествено образува плътен поток (tarball) |
| Лиценз | Свободен с отворен код (GNU LGPL) | Отворено достояние / PKWARE | Проприетарен търговски (WinRAR) | Свободен с отворен код (POSIX/GNU) |
Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни
Извличането е неуспешно и се показва грешка 'Data error in encrypted file. Wrong password?'.
Първопричина: Повреден CRC32 контролен сбор в криптирания LZMA поток или повредена граница на блок.
Възстановяване: Опитайте възстановяване с флага 'Запазване на повредените файлове' в 7-Zip или използвайте File2File.app Archive Repair.
Анализ на сигурността и вектори на атака към парсера
Архивите 7z поддържат сложни вериги за декодиране с множество филтри, при които специално създадени последователности от филтри могат да предизвикат проблеми със сигурността на паметта.
Известни вектори на атака
- Отказ от услуга чрез силно рекурсивна декомпресия на LZMA речник, подобна на „zip bomb“.
- Запис извън границите на динамичната памет при изчисляването на филтъра BCJ2 за адресите на разклоненията в изпълнимия файл.
- Целочислено препълване (integer overflow) при заделянето на памет за структури на хедъра в многотомни архиви.
Най-добри практики за защита: Ограничете максималната памет за декомпресия и коефициентите на декомпресия в автоматизирани сървърни процеси за извличане.
Исторически произход и етапи
Основни предимства
- Изключително висока степен на компресия: обикновено архивите са с 30% до 70% по-малки от наследения ZIP и с 10% до 20% по-малки от RAR.
- Плътната компресия обединява сходни файлове в общ поток и така може да премахне повече повтарящи се данни.
- Военен клас AES-256 криптиране позволява криптиране на имената на файловете и скрива съдържанието на архива от неоторизиран достъп.
Технически ограничения и минуси
- Плътната компресия изисква декомпресиране на предходните файлове в блок при извличане само на един файл.
- По-голяма консумация на памет по време на кодиране с LZMA/LZMA2 при максимална компресия.
- Изисква програми от трети страни на по-стари версии на Windows без вградена поддръжка за 7z.
Интересни технически факти
- 7-Zip публикува спецификацията на формата 7z. Програмата 7-Zip е лицензирана по LGPL, а SDK на LZMA е обществено достояние.
- Филтърът BCJ2 в 7z разделя адресите на целите за скок в 32-битови x86 изпълними файлове в отделен поток за максимизиране на компресията.
- Windows 11 добави вградена поддръжка за извличане на 7z архиви в края на 2023 г., 24 години след създаването на формата.
Често задавани технически въпроси
Защо архивите 7z обикновено са по-малки от ZIP?
7z използва усъвършенствания алгоритъм LZMA2 с огромни размери на речника (до 1 GB) и „плътна“ (solid) компресия, която компресира множество файлове заедно като един непрекъснат поток, премахвайки излишните данни между файловете.
Мога ли да отварям 7z файлове без да инсталирам 7-Zip?
Windows 11, версия 24H2, поддържа 7z архиви. File2File.app може да обработва 7z файлове в поддържани браузъри и на съвместими устройства.
Сигурно ли е криптирането с парола при 7z?
7z поддържа AES-256 криптиране, но сигурността зависи от реализацията, силата на паролата и начина на работа с архива.
Свързани двойки за конвертиране на 7Z
Конвертирането от ZIP в 7z преопакова архива с различни настройки за компресиране; крайният файл може да е по-малък или по-голям в зависимост от файловете и настройките.
Конвертирането на 7z в ZIP може да улесни отварянето на архива в софтуер с поддръжка на ZIP; степента на компресиране варира според файловете и настройките.