실제 상황: 주소가 나온 계약서 사진을 크기 변경할 때
사진을 선택하면 Canvas가 픽셀을 디코딩해 작은 결과를 만들지만 업로드 요청은 발생하지 않습니다. 촬영 위치 같은 EXIF는 재인코딩 과정에서 제거될 수 있어도 이를 완전한 메타데이터 삭제 도구로 보장하지는 않습니다.
판단 결과: Network 패널에서 미디어 전송이 없는지 확인하고, 결과 다운로드 뒤 별도 메타데이터 검사 도구로 민감 정보가 남았는지 점검합니다. 공용 PC라면 다운로드 파일과 브라우저 기록도 직접 정리합니다.
단계별로 적용하는 방법
- 파일 입력은 클릭 또는 드래그 뒤 사용자가 명시적으로 고른 파일에만 접근하도록 구현됩니다.
- 미리보기는 외부 URL이 아닌 메모리 기반 Object URL을 사용하고 파일 교체 시 이전 URL을 revoke합니다.
- 처리 Worker에는 필요한 ArrayBuffer만 전달하고, 취소·완료 시 임시 파일과 버퍼 참조를 해제합니다.
- 페이지 조회와 익명화된 성공·실패 정도 외에 파일 특성이나 편집 설정을 분석 이벤트로 만들지 않습니다.
- 결과 파일은 자동 업로드하거나 영구 저장하지 않으며 사용자가 다운로드를 선택해야 기기에 기록됩니다.
비교해서 선택하기
| 항목 | 사이트 내부 사용 | 서버·분석 전송 | 정리 시점 |
|---|---|---|---|
| 파일 바이너리 | 미리보기·변환 | 전송하지 않음 | 초기화·탭 종료 |
| 파일 이름 | 화면·결과 이름 제안 | 전송하지 않음 | 파일 교체 |
| 크기·길이·해상도 | 경고·편집 UI | 전송하지 않음 | 작업 초기화 |
| Object URL | 로컬 미리보기 | 외부 접근 주소 아님 | 교체·언마운트 |
| 페이지 경로 | 선택 동의 후 통계 가능 | 환경 설정 시 전송 가능 | 제공자 정책에 따름 |
주의할 점
- 광고와 Analytics가 향후 활성화되면 쿠키·IP·기기 정보가 제3자에게 전달될 수 있으므로 선택 동의와 실제 정책 검토가 필요합니다.
- Object URL은 비밀 암호가 아니라 현재 브라우저 컨텍스트의 임시 참조이므로 사용을 마치면 즉시 해제해야 합니다.
- 다운로드한 결과를 클라우드 동기화 폴더에 저장하면 해당 운영체제·서비스가 업로드할 수 있으며 이는 사이트의 로컬 처리 범위를 벗어납니다.
기술적 한계와 브라우저 차이
- 브라우저 보안 모델은 선택하지 않은 폴더의 자동 탐색을 막지만 사용자가 광범위한 폴더 권한을 다른 사이트나 확장에 허용한 상태까지 확인할 수는 없습니다.
- 탭 충돌이나 강제 종료 때 JavaScript 정리 콜백이 실행되지 않을 수 있으나 탭 프로세스의 메모리는 브라우저가 회수합니다.
- 저장 위치를 직접 고르는 File System Access API는 일부 Chromium 브라우저에서만 제공되며 다른 환경은 일반 다운로드를 사용합니다.
로컬 미디어 처리에서 개인정보가 보호되는 방식 FAQ
운영자는 제가 선택한 영상 내용을 볼 수 있나요?
사이트 구조에는 파일을 운영자 서버로 보내는 경로가 없어 운영자가 내용을 볼 수 없습니다. 다만 사용자의 확장 프로그램과 기기 보안 상태는 사이트가 보장할 수 없습니다.
Analytics가 켜지면 파일 정보도 수집되나요?
허용된 분석 항목은 페이지 조회와 익명화된 도구 성공·실패 정도로 제한하며 파일 이름, 크기, 길이, 형식, 해상도와 편집값은 이벤트에 넣지 않습니다.
광고를 거부하면 편집 기능이 막히나요?
아닙니다. 선택 쿠키를 거부해도 모든 로컬 편집과 다운로드 기능은 정상적으로 사용할 수 있어야 합니다.
파일 처리 내역이 브라우저에 남나요?
작업 파일과 편집 상태를 IndexedDB에 저장하지 않습니다. 다운로드한 결과와 브라우저의 일반 방문 기록은 사용자가 직접 관리해야 합니다.
가장 민감한 파일도 안전하다고 보장하나요?
절대적인 보장은 하지 않습니다. 조직 보안 규정, 기기 감염 여부, 확장 프로그램과 다운로드 위치까지 고려하고 극도로 민감한 자료는 승인된 오프라인 도구를 사용하세요.