메타 데이터(Metadata)는 파일에 대한 추가 정보를 담고 있는 데이터이다.
이 정보는 파일 자체에 포함되며, 파일의 내용을 설명하거나 파일에 대한 속성을 제공한다. 문서의 메타 데이터는 그 문서를 생성한 사람, 생성 날짜, 수정 이력, 소프트웨어 정보 등과 같은 다양한 세부 사항을 포함할 수 있다.
문서 메타 데이터의 일반적인 예시에는
이러한 메타 데이터는 문서 파일의 내용과는 별도로 저장되며, 특정 소프트웨어나 도구를 사용해 읽고 수정할 수 있다.
그 말은 즉, 메타데이터는 사진이나 문서 파일에 사용자의 위치, 장치 정보, 시간, 날짜 등 상당히 상세한 정보를 포함할 수 있다. 이 정보들은 디지털 포렌식 조사에서 활용되어 범죄와 관련된 디지털 증거의 출처, 저자, 시간대 등을 확인할 수 있다. 이는 범죄 행위를 추적하고 증거를 확보하는 데 중요하다.
하지만 이 정보를 잘못 사용될 경우 개인의 프라이버시를 심각하게 침해할 수 있다. 또한 메타데이터는 문서나 이미지가 수정되었는지 여부를 판단하는 데 사용될 수 있다. 파일의 생성 날짜와 수정 날짜가 일치하지 않는 경우, 파일이 조작되었을 가능성이 있다.
ExifTool은 다양한 형식의 파일에서 메타 데이터를 읽고, 작성하고, 수정할 수 있는 강력한 도구이다. 원래는 이미지 파일의 메타 데이터(특히 EXIF 데이터)를 처리하기 위해 만들어졌지만, 현재는 이미지, 비디오, 오디오, 문서 등 여러 파일 형식을 지원한다.

exiftool과 같은 도구를 사용하여 메타데이터를 추출하고 분석하는 것은 이러한 정보가 어떻게 수집, 사용되고 있는지를 이해하고 적절한 보안 조치를 취하는 데 필수적이다.
문득 플랫폼 별로 사용자가 업로드한 이미지에 대해 어떻게 메타데이터 처리를 하는지 궁금해졌다. 이번 영역에서는 ExifTool을 이용하여 동일한 이미지들을 카카오톡, 네이버 블로그, 인스타그램, 디스코드에 업로드를 해보며 각 플랫폼에서는 어떻게 처리하는지에 대해 알아보겠다.
우선 이번 실험에 원본이 될 사진이다.
본 사진은 9월 11일 18시 경에 잠실에서 아이폰14pro로 촬영했으며 파일 유형 확장자는 jpg이다.
exiftool bonobono.jpg
터미널에서 해당 명령어를 입력해보니 다음과 같은 결과가 나왔다.

파일 정보(파일 이름, 크기, 시간, 확장자), 이미지 정보(해상도), 카메라 정보(카메라 모델, 기종, 초점 거리, 렌즈 등), 위치 정보(위도, 경도, 고도), 기타(이미지 크기, 메가픽셀)에 대한 전체적인 정보들을 확인해볼 수 있었다.

개인적으로 아이폰에서 지원하는 이미지 파일 하단에 위치해있는 지도 기능에 대해서 궁금했었는데 바로 메타데이터의 상세한 위도, 경도, 고도에 기반한 정보임을 알 수 있었다.
그렇다면 과연 다음 플랫폼들에서는 어떠한 정보를 유지하고 있을까?
일단 카카오톡으로 친구에게 한번 사진을 보내보았다.

터미널 창을 열어서 다음과 같은 명령어를 입력해준다.
exiftool kakaotalk.jpg (카카오톡에서 다운받은 이미지명)

개인 일상 기록용 네이버 블로그에도 업로드를 해보았다.

exiftool naverblog.jpg (네이버 블로그에서 다운받은 사진)

인스타그램 스토리로는 이미지를 추출하는 방법을 몰라서 피드에 올려보았다.

exiftool instagram.jpg(인스타그램에서 다운 받은 이미지 파일)

역시나 디스코드도 카카오톡처럼 친구에게 이미지를 보내보았다.

exiftool discord.jpg(디스코드에서 다운받은 이미지 파일)

메타데이터 처리의 차이는 각 플랫폼의 주요 사용 사례와 기능적 우선순위에 따라 달라짐을 확인할 수 있었다.
Instagram은 이미지 중심의 소셜 미디어 플랫폼으로, 사용자가 고화질의 사진을 공유하고 시각적 콘텐츠로 소통하는 데 초점을 맞추고 있다. 이 플랫폼은 이미지의 시각적 품질을 유지하면서도 사용자의 프라이버시를 보호하기 위해 촬영 기기 정보나 GPS 정보 같은 개인적인 메타데이터는 제거한다. 프로필 정보와 색상 정보는 남겨두어 이미지가 원래 의도한 대로 보이도록 한다.
Naver Blog는 다양한 콘텐츠를 지원하는 블로깅 플랫폼으로, 텍스트, 이미지, 비디오 등 다양한 미디어를 통합하여 사용자가 자신의 경험과 정보를 공유할 수 있다. 네이버 블로그는 데이터베이스 관리와 서버 부하를 최소화하기 위해 필요한 정보만을 저장한다. 이는 블로그 페이지의 로딩 시간을 줄이고, 더 많은 사용자에게 원활한 서비스를 제공하기 위함이다. 따라서 메타데이터에서는 필수적이지 않은 정보를 제거하고, 이미지의 표현력을 유지하기 위해 색상 프로필 정보는 보존한다.
KakaoTalk은 속도와 효율성이 중요한 메신저 서비스로, 사용자 간의 빠르고 효율적인 커뮤니케이션을 지원한다. 카카오톡은 주로 개인 및 소규모 그룹 간의 소통에 사용되기 때문에 메타데이터를 포함한 이미지 정보의 유지가 중요할 수 있다. 사용자가 공유한 이미지에 대한 정보를 그대로 유지하면서, 실시간으로 정보를 교환할 수 있는 환경을 제공한다.
Discord는 주로 게임 커뮤니티와 게이머들 사이의 커뮤니케이션을 위해 설계된 플랫폼이다. 게임 플레이 중 또는 대규모 커뮤니티에서 빠른 데이터 전송과 저지연 통신이 필요하므로, 이미지의 메타데이터가 필요하지 않은 경우가 많다. 디스코드는 이러한 환경을 고려하여 이미지 업로드 시 대부분의 메타데이터를 제거함으로써, 서버 부하를 줄이고 통신 속도를 최적화한다. 또한, 이는 사용자들이 자신의 위치나 기기 정보를 노출하지 않도록 하여 게이밍 커뮤니티 내에서의 프라이버시를 강화한다.
결론적으로,
Instagram과 Naver Blog는 시각적 품질과 사용자 경험을 중시하면서도 개인 정보 보호를 위해 필수적이지 않은 메타데이터는 제거한다.
그에 반해 KakaoTalk은 사용자 간의 신속한 정보 교환을 지원하기 위해 메타데이터를 유지할 필요가 있다.
같은 채팅 플랫폼이지만 목적은 다른 Discord는 게이밍 환경에서의 최적화와 사용자의 프라이버시 보호를 위해 이미지 메타데이터를 대부분 제거한다.
이러한 차이는 각 플랫폼의 핵심 기능과 사용자 기대에 따른 것으로, 플랫폼마다 다른 접근 방식을 취하는 이유를 잘 보여준다.
앞으로 내가 어떠한 플랫폼을 만들고 해당 플랫폼의 성격에 따라 메타데이터에 대한 처리 또한 중요함을 느끼게 되었다. 또한 이미지나 파일을 업로드할때 플랫폼 별로 이러한 특징이 있는 것을 인지하고 보안에 유념해야겠다는 생각이 들었다.