웹 오픈 폰트 형식 (.woff)

W3C 표준

WOFF(Web Open Font Format)은 W3C에서 승인한 역사적인 1세대 오픈 표준 웹 폰트 포맷으로, 표준 TrueType 또는 OpenType 폰트를 zlib 압축 및 XML 라이선싱 메타데이터로 감싸는 방식을 사용합니다.

검사 및 메타데이터

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

여기에 파일을 선택하거나 놓으세요

100% 브라우저 내 프라이버시 변환 - 파일이 기기를 절대 떠나지 않습니다

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

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

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

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

77 4F 46 46

ASCII 표현: wOFF

표준화: W3C Recommendation (2012)

기술 사양

컨테이너 아키텍처44-byte WOFF header followed by table directory, zlib-compressed table data, optional extended metadata, and private data
압축Deflate (zlib) compression applied to each individual font table
바이트 엔디안Big-Endian (SFNT standard)
색 공간Inherited from underlying font tables
채널 및 구조TrueType ('glyf') or PostScript ('CFF ') glyph outlines, metrics, and typographic features
최대 크기Up to 65,535 glyphs per font file
투명도Inherited from underlying font format
스트리밍 및 프로그레시브Table-by-table decompression enables streaming font loading

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

기술적 속성WOFF (현재)WOFF2TTFOTF
압축 코덱테이블당 Deflate (zlib)테이블 전처리가 포함된 Brotli비압축 SFNT비압축 SFNT
매직 시그니처wOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
상대적 파일 크기TTF 대비 ~40% 더 작음TTF 대비 ~60% 더 작음기준 표준 (100%)기준 표준 (100%)
대상 환경구형 웹 브라우저 (IE9+, 사파리 5+)최신 웹 브라우저 (범용)데스크톱 운영 체제전자출판 및 인쇄

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

브라우저 콘솔 경고 발생: 'Failed to downloaded font: OTS parsing error'.

근본 원인: 선언된 비압축 테이블 길이 불일치 또는 손상된 zlib 스트림.

복구: 폰트 테이블을 재압축하거나 File2File 폰트 변환기를 사용하여 WOFF2로 변환하십시오.

보안 분석 및 파서 공격 벡터

웹 브라우저는 공격 페이로드를 차단하기 위해 OpenType Sanitizer(OTS)를 사용하여 신뢰할 수 없는 웹 도메인에서 다운로드한 WOFF 파일을 구문 분석합니다.

알려진 공격 벡터

  • 손상된 폰트 테이블 청크의 zlib 압축 해제 중 버퍼 오버리드.
  • 폰트 렌더러에서 힙 버퍼 오버플로를 유발하는 일치하지 않는 테이블 길이 필드.
  • 폰트 테이블 확장 중 메모리 고갈을 통한 서비스 거부.

방어적 모범 사례:

역사적 배경 및 주요 이력

2018우수한 Brotli 압축 덕분에 선호되는 웹 폰트 표준으로서 WOFF2가 그 뒤를 잇게 됨.
2012W3C에서 WOFF 1.0을 공식 웹 표준 권고사항으로 정식 발표함.
2009헨릭 뤼드가르(Henrik Rydgård), 탈 레밍(Tal Leming), 조나단 큐(Jonathan Kew)가 웹 폰트 라이선스 문제를 해결하기 위해 WOFF를 명세함.

주요 장점

  • 압축되지 않은 원본 TTF 또는 OTF 파일에 비해 웹 폰트 파일 크기를 30%에서 50%까지 줄여줍니다.
  • 2011년 이후 출시된 모든 데스크톱 및 모바일 웹 브라우저에서 보편적인 하위 호환성을 제공합니다.
  • 폰트 라이선스, 제작자 크레디트, 파운드리 저작권 정보를 위한 선택적 XML 메타데이터 블록을 포함합니다.

기술적 제한 사항 및 단점

  • Brotli 알고리즘을 사용하여 약 30% 더 작게 압축하는 WOFF2로 대체되었습니다.
  • TTF/OTF로 변환하지 않으면 데스크톱 운영 체제(Windows/Mac)에 직접 설치할 수 없습니다.
  • 구형 zlib 압축 알고리즘은 현대적인 엔트로피 인코더에 비해 효율성이 떨어집니다.

흥미로운 기술적 상식

  • WOFF 1.0의 매직 바이트는 'wOFF'(0x77 0x4F 0x46 0x46)인 반면, WOFF 2.0은 'wOF2'를 사용합니다.
  • 활자 주조소들은 WOFF가 생성된 후에야 웹 폰트가 복제 가능한 데스크톱 폰트와 구별되는 특수 컨테이너를 가졌기 때문에 웹상에서의 폰트 사용을 허용하기로 동의했습니다.
  • WOFF는 공식 W3C 권고사항이 되기 전인 2010년에 파이어폭스 3.6에 처음 구현되었습니다.

자주 묻는 기술 질문

WOFF와 WOFF2의 차이점은 무엇인가요?

WOFF는 zlib 압축을 사용하는 반면, WOFF2는 Google의 최신 Brotli 알고리즘과 테이블 변환을 사용하여 WOFF보다 약 30% 작은 파일을 생성합니다.

데스크톱용으로 WOFF 글꼴을 TTF나 OTF로 어떻게 변환할 수 있나요?

웹 브라우저에서 직접 File2File.app을 사용하여 몇 초 만에 WOFF 파일을 설치 가능한 데스크톱 TTF 또는 OTF 글꼴로 변환할 수 있습니다.

최신 웹사이트에서 여전히 WOFF 1.0이 필요한가요?

아니요. 모든 최신 브라우저는 WOFF2를 기본적으로 지원합니다. WOFF 1.0은 Internet Explorer와 같은 구형 레거시 브라우저를 지원해야 하는 경우에만 필요합니다.