Архів 7-Zip (.7z)
Специфікація Стандарт7-Zip Archive (7Z): це відкритий формат-контейнер із високим ступенем стиснення, що використовує алгоритми LZMA та LZMA2, забезпечує значно вищий ступінь стиснення, ніж застарілий ZIP, і має вбудоване шифрування заголовка AES-256.
Конвертувати з ZIP у 7Z
Безкоштовний конвертер з ZIP у 7Z у браузері. Миттєво конвертуйте файли на своєму пристрої.
Аналіз та метадані
Операційні системи та аналізатори файлів ідентифікують файли 7Z, перевіряючи початкову послідовність бінарних байтів:
Сигнатура заголовка на байтовому рівні (Magic Bytes)
Операційні системи та аналізатори файлів ідентифікують файли 7Z, перевіряючи початкову послідовність бінарних байтів:
ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):
37 7A BC AF 27 1CПОДАННЯ В ASCII: 7z¼¯'\x1c
Стандартизація: Специфікація відкритої архітектури 7-Zip
Технічні характеристики
| Архітектура контейнера | Відкрита модульна архітектура заголовків, що підтримує багатошарові фільтри стиснення та імена файлів у Юнікоді |
| Стиснення | LZMA, LZMA2, PPMd (текст), BZip2, Deflate, BCJ / BCJ2 (фільтри переходу виконуваних файлів) |
| Порядок байтів (Endianness) | Порядок байтів від молодшого до старшого (Intel x86) |
| Колірні простори | Не застосовується (Архівний контейнер) |
| Канали та структура | Дерево каталогів із кількома файлами, багатотомні архіви та суцільні блоки стиснення |
| Максимальні розміри | Підтримує файли та загальний обсяг архіву до 16 ексабайтів (16 мільярдів ГБ) |
| Прозорість | Усі атрибути файлів, права доступу Unix та точні 64-бітні часові мітки NTFS |
| Потокове та прогресивне завантаження | За замовчуванням заголовок зберігається в кінці файлу; потокове передавання неможливе без спеціалізованої несуцільної структури |
Технічна матриця порівняння: 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.
Аналіз безпеки та векторів атак на парсери
Архіви 7z підтримують складні ланцюжки декодування з кількома фільтрами, а спеціально сформовані послідовності фільтрів можуть спричинити вразливості, пов’язані з безпекою пам’яті.
Відомі вектори атак
- Відмова в обслуговуванні через надмірно рекурсивне розпакування словника LZMA за принципом «zip-бомби».
- Запис за межі буфера в динамічній пам’яті під час обчислення фільтра адрес переходів виконуваного файлу BCJ2.
- Переповнення цілого числа під час виділення пам'яті для багатотомних структур заголовків архіву.
Рекомендації щодо захисту: Обмежуйте максимальний обсяг пам’яті та ступінь розпакування в автоматизованих конвеєрах розпакування на сервері.
Історичне походження та віхи
Основні переваги
- Видатний ступінь стиснення: зазвичай файли на 30-70 % менші, ніж у застарілому ZIP, і на 10-20 % менші, ніж у RAR.
- Суцільне стиснення блоків об'єднує подібні файли в безперервний потік, максимізуючи усунення надлишкових даних.
- Шифрування AES-256 військового рівня дає змогу шифрувати імена файлів і приховувати вміст архіву від несанкціонованого перегляду.
Технічні обмеження та недоліки
- Суцільне стиснення вимагає розпакування попередніх файлів у блоці під час витягування одного окремого файлу.
- Більше споживання пам'яті під час кодування LZMA/LZMA2 з максимальним стисненням.
- Вимагає використання сторонніх утиліт на старіших версіях Windows без вбудованої підтримки 7z.
Цікаві технічні факти
- 7-Zip публікує специфікацію формату 7z. Програма 7-Zip ліцензується за LGPL, а SDK LZMA є суспільним надбанням.
- Фільтр BCJ2 у форматі 7z відокремлює адреси цілей переходів у 32-бітному виконуваному коді x86 в окремий потік, щоб максимально підвищити ступінь стиснення.
- У кінці 2023 року Windows 11 нарешті інтегрувала вбудовану підтримку розпакування архівів 7z через 24 роки після її винайдення.
Поширені технічні запитання
Чому 7z стискає краще, ніж ZIP?
Формат 7z використовує вдосконалений алгоритм LZMA2 з величезними розмірами словника (до 1 ГБ) та 'суцільним' стисненням, яке стискає кілька файлів разом як єдиний безперервний потік, усуваючи надлишкові дані між файлами.
Чи можна відкривати файли 7z без встановлення програми 7-Zip?
Windows 11 версії 24H2 підтримує архіви 7z. File2File.app може обробляти файли 7z у підтримуваних браузерах і на сумісних пристроях.
Чи безпечне шифрування паролем у форматі 7z?
Так. 7z використовує стандартизоване шифрування AES-256 із виведенням ключа на основі SHA-256, яке за умови використання надійних паролів математично стійке до атак перебором.
Пов'язані пари конвертації 7Z
Перетворення ZIP на 7z перепаковує архів з іншим набором параметрів стиснення; результат може бути меншим або більшим залежно від файлів і налаштувань.
Перетворення 7z на ZIP може полегшити відкриття архіву в програмах із підтримкою ZIP. Ступінь стиснення залежить від типу файлів і налаштувань.