7z
보이기
(7-Z에서 넘어옴)
![]() | |
파일 확장자 | .7z |
---|---|
인터넷 미디어 타입 |
application/x-7z-compressed |
UTI | org.7-zip.7-zip-archive |
매직 넘버 | '7', 'z', 0xBC, 0xAF, 0x27, 0x1C |
개발 | Igor Pavlov[1] |
발표일 | 1999년[2] |
포맷 종류 | 데이터 압축 |
오픈 포맷? | 예: GNU LGPL / 퍼블릭 도메인 |
웹사이트 | 7-zip |
7z은 각기 다른 데이터 압축, 암호화, 전처리 알고리즘을 지원하는 압축 파일 포맷이다. 7z 포맷은 본래 7-zip 압축 프로그램이 제공한 데에서 비롯하였다. 7-zip 프로그램은 GNU 약소 일반 공중 라이선스 조항에 의거하여 사용할 수 있다.
7z의 MIME는 application/x-7z-compressed
.이다.
공식 7z 파일 포맷 규격은 7-zip의 소스 코드와 함께 배포된다. 이 규격은 소스 코드 배포판의 doc\sub 디렉터리에 순수 텍스트로 된 문서 안에서 볼 수 있다.
압축 방식
[편집]7-Zip은 7z 형식을 기본 압축 형식으로 삼고 있다. 이고르 파블로프가 만든 LZMA 알고리즘을 비롯한 여러 가지 알고리즘을 지원하는 열린 구조방식(Open Architecture)이다.[3]
압축포맷 | 설명 |
---|---|
LZMA | 기존의 LZ77 알고리즘을 개선하고 최적화한 것으로서 range coder를 바탕으로 하며 최대 4기비바이트까지 올라가는 거대 LZ 기반 sliding dictionary로 이루어져 있다. |
LZMA2 | LZMA를 멀티쓰레드로 분할하여 압축하도록 개선하여 압축 속도를 향상시킨 알고리즘. |
PPMD | Dmitry Shkarin의 PPMdH를 약간 변경하여 사용하였다. |
BCJ | 32비트의 x86 실행파일용 압축 변환기이다. |
BCJ2 | 32비트의 x86 실행파일용 압축 변환기이다. |
BZip2 | 표준 BWT 방식의 압축 알고리즘이다. |
DEFLATE | 표준적인 LZ77 기반의 압축 알고리즘이다. |
장점
[편집]- 다수의 폴더 및 파일을 담을 수 있다(16,000,000,000 GiB(기비바이트), 즉 16 EiB(엑스비바이트)까지 가능).
- 압축률은 RAR, ACE 등과 비슷하다.
- 컨테이너(container) 형식으로서 전처리기, 압축 알고리즘, 암호화 필터 등의 조합을 통해 보안 및 압축을 구현한다.
- 모든 파일 이름들은 유니코드로 저장된다.
- 256비트 AES 계산을 따라 압축함으로 압축 파일 안의 파일들의 이름까지 암호화할 수 있다.
단점
[편집]- 높은 압축율을 위해서 솔리드 압축, 헤더 압축 등의 기술을 사용하기 때문에 물리적으로 단 1비트라도 파일이 손상된 경우 데이터의 복구가 불가능하다. 따라서 별도의 사본이 없는 중요한 데이터는 7z 포맷으로 압축하지 않는 것이 좋다.[4]
같이 보기
[편집]각주
[편집]- ↑ “A Few Questions for Igor Pavlov”. Dr. Dobb's Data Compression Newsletter. 2003년 4월 30일. 2009년 12월 26일에 확인함.
- ↑ History of 7-zip changes
- ↑ 7z 포맷
- ↑ 반디집 - 7z 포맷 소개