Архів 7-Zip (.7z)

Специфікація Стандарт

7-Zip Archive (7Z): це відкритий формат-контейнер із високим ступенем стиснення, що використовує алгоритми LZMA та LZMA2, забезпечує значно вищий ступінь стиснення, ніж застарілий ZIP, і має вбудоване шифрування заголовка AES-256.

Конвертувати з ZIP у 7Z

Безкоштовний конвертер з ZIP у 7Z у браузері. Миттєво конвертуйте файли на своєму пристрої.

Аналіз та метадані

Операційні системи та аналізатори файлів ідентифікують файли 7Z, перевіряючи початкову послідовність бінарних байтів:

Виберіть або перетягніть файли сюди

Приватно - файли ніколи не залишають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності без передавання даних мережею: Жодного байта не передано на зовнішні сервери. Уся обробка відбувалася локально в ізольованому середовищі браузера.

Сигнатура заголовка на байтовому рівні (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 (Поточний)ZIPRARTAR.GZ
Алгоритм стисненняLZMA / LZMA2 / PPMdDeflate (традиційний)Власний алгоритм RAR5Deflate (поверх потоку 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.
  • Переповнення цілого числа під час виділення пам'яті для багатотомних структур заголовків архіву.

Рекомендації щодо захисту: Обмежуйте максимальний обсяг пам’яті та ступінь розпакування в автоматизованих конвеєрах розпакування на сервері.

Історичне походження та віхи

2008У 7-Zip v9 представлено алгоритм LZMA2, що забезпечує ефективне багатопотокове паралельне стиснення.
2002Додано повне шифрування AES-256, включаючи необов'язкове шифрування імен файлів архіву та структури каталогів.
1999Ігор Павлов випускає 7-Zip 1.00 та представляє формат з відкритим вихідним кодом 7z.

Основні переваги

  • Видатний ступінь стиснення: зазвичай файли на 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, яке за умови використання надійних паролів математично стійке до атак перебором.