GZIP 압축파일 (.gz)

IETF 표준

Gzip(GZ)은 표준 GNU 압축 유틸리티이자 파일 형식으로, 빠른 파일 및 웹 자산 압축을 위해 Unix 운영체제와 인터넷 HTTP 서버에서 널리 사용됩니다.

TAR을(를) GZ(으)로 변환

무료 브라우저 내 TAR에서 GZ로 변환하는 도구입니다. 기기에서 파일을 즉시 변환할 수 있습니다.

검사 및 메타데이터

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 GZ 파일을 식별합니다:

여기에 파일을 선택하거나 놓으십시오

비공개 - 파일은 기기를 벗어나지 않습니다

또는 붙여넣기 Ctrl+V
네트워크 전송 없음에 대한 개인정보 보호 보장: 외부 서버로 업로드된 데이터는 0바이트입니다. 모든 처리는 브라우저 샌드박스 내에서 로컬로 수행되었습니다.

바이트 단위 헤더 시그니처 (매직 바이트)

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 GZ 파일을 식별합니다:

16진수 시그니처 (오프셋 0):

1F 8B 08

ASCII 표현: ..\x08

표준화: IETF RFC 1952

기술 사양

컨테이너 아키텍처10바이트 헤더(매직 바이트 0x1F 0x8B, 방식 8, 플래그, 수정 시각, OS), DEFLATE 스트림 및 8바이트 푸터로 구성
압축DEFLATE 알고리즘(LZ77 슬라이딩 윈도 및 허프만 코딩)
바이트 엔디안리틀 엔디안 헤더 및 푸터 정수
색 공간해당 없음(아카이브 컨테이너)
채널 및 구조단일 파일의 압축 바이트 스트림
최대 크기압축 해제 크기를 2^32 모듈로 기록(길이 제한 없는 스트림 지원)
투명도데이터를 비트 단위로 정확하게 보존하는 100% 무손실 압축
스트리밍 및 프로그레시브파이프와 HTTP 네트워크를 통한 순차 단일 패스 스트리밍 재생

기술 비교 매트릭스: GZ 대 경쟁사

기술적 속성GZ (현재)BZ2BROTLIZSTD
압축 해제 속도빠름 (~300 MB/s)느림 (~40 MB/s)매우 빠름 (~400 MB/s)초고속 (>1.5 GB/s)
웹에서 널리 사용모든 브라우저 및 서버의 100%웹 브라우저 지원 없음모든 브라우저에서 HTTPS를 통해 지원브라우저 및 서버 지원 증가 중
다중 파일 패키징TAR 컨테이너 필요 (.tar.gz)TAR 컨테이너 필요 (.tar.bz2)원시 스트림 또는 사용자 정의 컨테이너TAR 컨테이너 필요 (.tar.zst)
체크섬 검증32비트 CRC (CRC-32)블록당 32비트 CRC스트림에 내장되지 않음64비트 xxHash

일반적인 손상 모드 및 헥스 복구 가이드

추출 오류: 'gzip: stdin: unexpected end of file'.

근본 원인: DEFLATE 스트림 또는 8바이트 CRC32 푸터를 차단하는 조기 파일 전송 종료.

복구: gzip -d --keep broken.gz 명령이나 File2File.app Gzip 추출기를 사용해 일부 콘텐츠를 추출하십시오.

보안 분석 및 파서 공격 벡터

Gzip 파서는 압축 해제 폭탄으로부터 보호되어야 하는 사용자 제어 헤더 및 DEFLATE 비트스트림을 처리합니다.

알려진 공격 벡터

  • 메가바이트의 Gzip 데이터를 수백 기가바이트의 디스크 공간으로 확장하는 압축 해제 폭탄(zip bomb).
  • 헤더에서 선택적 원본 파일 이름 문자열을 읽을 때 발생하는 버퍼 오버플로.
  • 32비트 CRC 체크 비교 중 발생하는 정수 오버플로.

방어적 모범 사례: 자동화된 데이터 수집 서비스에서 압축 해제 할당량과 최대 메모리 사용량을 엄격히 제한하십시오.

역사적 배경 및 주요 이력

1996IETF가 Gzip 파일 형식 사양을 RFC 1952로 공식화했습니다.
1993GNU 프로젝트가 이를 채택해 독점 Unix 'compress' 유틸리티(.Z 파일)를 대체했습니다.
1992Jean-loup Gailly와 Mark Adler가 자유 소프트웨어 운동을 위한 특허 없는 압축 도구로 Gzip을 만들었습니다.

주요 장점

  • 웹 클라이언트 100%가 지원하는 HTTP 웹 압축의 보편적인 기준입니다(“Content-Encoding: gzip”).
  • 10바이트 헤더 내에 원본 파일 수정 타임스탬프와 선택적 원본 파일 이름을 보존합니다.
  • 압축 해제 시 CPU 사용량이 적어 저전력 모바일 기기와 라우터에서도 원활하게 작동합니다.

기술적 제한 사항 및 단점

  • 단일 파일만 압축할 수 있으므로 여러 파일이나 디렉터리를 압축하려면 먼저 TAR 컨테이너에 묶어야 합니다.
  • 현대 웹 텍스트에서 Brotli 및 Zstandard와 같은 최신 알고리즘보다 압축률이 낮습니다.
  • 푸터의 압축되지 않은 크기 필드가 32비트 모듈로 2^32이므로 4 GB를 초과하는 파일에서 롤오버 표시 버그를 유발합니다.

흥미로운 기술적 상식

  • 매직 바이트 0x1F 0x8B는 0x1F가 역사적으로 Unix 'compress' 파일의 첫 번째 바이트였던 반면, 0x8B는 Gzip을 식별했기 때문에 선택되었습니다.
  • 인터넷 상의 모든 웹사이트 중 80% 이상이 웹페이지를 브라우저에 전달하기 위해 Gzip 압축을 활용합니다.
  • Jean-loup Gailly가 압축 코드를 작성하고 Mark Adler가 압축 해제(인플레이트) 코드를 작성했으며, 두 사람 모두 ACM 소프트웨어 시스템 상을 수상했습니다.

자주 묻는 기술 질문

Gzip으로 폴더를 압축할 수 없는 이유는 무엇입니까?

Gzip은 단일 바이트 스트림을 압축하도록 설계되었습니다. 폴더를 압축하려면 유닉스 시스템에서는 먼저 폴더를 하나의 .tar 파일로 묶은 다음 Gzip으로 압축하여 .tar.gz 파일을 만듭니다.

.gz와 .zip은 어떻게 다릅니까?

.zip은 디렉터리 인덱스와 함께 여러 파일을 하나로 묶는 아카이브 형식입니다. .gz는 단일 파일만 압축하며 유닉스 시스템에서는 주로 tar와 함께 사용됩니다.

Windows 또는 Mac에서 .gz 파일의 압축을 어떻게 해제할 수 있습니까?

소프트웨어를 설치하지 않아도 File2File.app을 사용해 웹 브라우저에서 .gz 파일의 압축을 바로 해제할 수 있습니다.