EXIF 위치 정보 태그 지정의 숨겨진 위협: 디지털 카메라가 물리적 위치를 노출하는 방법
최신 스마트폰이나 전용 디지털 카메라로 찍은 모든 디지털 사진에는 다음과 같은 보이지 않는 보조 페이로드가 포함되어 있습니다.EXIF 메타데이터(교환 가능한 이미지 파일 형식). JEITA(일본전자정보기술산업협회)에 의해 표준화된 EXIF는 원래 노출 매개변수(조리개, 셔터 속도, ISO 감도 및 렌즈 초점 거리)를 보존하여 사진작가, 사진 편집자 및 인쇄소를 지원하도록 설계되었습니다.
그러나 모바일 장치에 GPS, Galileo 및 GLONASS 내비게이션 칩셋이 대량 채택되면서 카메라 펌웨어가 추가되기 시작했습니다.정확한 위성 좌표(위도, 경도, 고도)이미지 헤더에 직접 넣습니다. 거실, 발코니, 뒷마당에서 사진을 찍으면 이미지 파일에 집의 정확한 좌표가 영구적으로 찍힙니다.3~5미터.
EXIF 세그먼트의 기술적 분석: APP1 마커 및 TIFF 엔디안
표준 JPEG 이미지 파일에서 이진 데이터는 2바이트 이미지 시작 마커로 시작됩니다.0xFFD8(SOI). 애플리케이션별 메타데이터는 다음과 같은 특수 세그먼트에 포함됩니다.APP0~APP15. EXIF 메타데이터는 다음에만 존재합니다.APP1 마커(0xFFE1):
- 마커 및 길이:
0xFFE1그 뒤에 세그먼트의 전체 바이트 크기를 선언하는 2바이트 부호 없는 정수가 옵니다. - 헤더 서명:6바이트 포함
45 78 69 66 00 00— ASCII 문자열"Exif"그 뒤에 두 개의 널 바이트가 옵니다. - TIFF 헤더:바이트 순서를 선언하는 8바이트. 처음 2바이트가 다음과 같은 경우
0x4949(Intel, Little-Endian, 최하위 바이트부터) 또는0x4D4D(Motorola, Big-Endian, 최상위 바이트 먼저), 그 뒤에 매직 상수가 옵니다.42(0x002A) 및 기본 이미지 파일 디렉터리(IFD0)에 대한 4바이트 포인터입니다. - IFD 디렉토리:IFD0은 다음을 포함한 보조 하위 디렉터리에 연결됩니다.ExifIFD(태그
0x8769)광학 노출 측정 항목의 경우GPSInfo IFD(태그0x8825)지리적 위치 기록용.
무손실 EXIF 스트리핑과 손실 있는 캔버스 재압축
많은 기본 온라인 도구는 사진을 HTML5로 렌더링하여 메타데이터를 제거합니다.<canvas>요소 및 호출canvas.toDataURL('image/jpeg'). 이 방법은 메타데이터 헤더를 삭제하지만 손실이 있는 JPEG 압축 해제 및 재인코딩 과정을 통해 전체 이미지를 강제로 처리합니다. 이로 인해 눈에 띄는 압축 아티팩트, 크로마 서브샘플링 저하가 발생하고 픽셀 휘도 값이 변경됩니다.
FlashSoft의온라인 EXIF 스트리퍼수행하다순수 바이너리 세그먼트 스트리핑원시 파일 바이트 버퍼에 직접. 양자화 테이블(DQT), 허프만 테이블(DHT), 프레임 시작(SOF0/SOF2) 및 스캔 시작(SOS) 엔트로피 페이로드는 그대로 유지하면서 APP1(EXIF/XMP), APP2(ICC), APP13(Photoshop/IPTC) 및 COM 마커를 외과적으로 제거합니다. 결과적으로 깨끗한 이미지가 유지됩니다.100% 비트별 광학 충실도압축 손실이 전혀 없습니다.