1장 개요 및 보안 범위

이 장에서는 백서의 목적, 규범적 표현, 용어를 정의하고 FileBolt의 보안 목표와 경계 조건을 명시합니다. 범위 내 위험과 범위 외 위험을 명확히 구분하면 시스템이 보장할 수 있는 사항에 대한 오해를 막을 수 있습니다.

문서 메타데이터

백서 버전
v1.0
최종 업데이트
2026-01-14

돌아가기: 보안 및 개인정보 보호 백서(개요)

1.0 목적

  • 사용자와 감사자를 위해 FileBolt의 보안 설계와 신뢰 경계를 설명합니다.
  • 업로드, 저장, 다운로드 전 과정에서 기밀성/무결성이 어떻게 보호되는지 설명합니다.
  • 검토와 재현을 위해 검증 가능한 증거 링크와 클레임 ID를 제공합니다.

1.1 규범적 언어 및 용어

  • 규범적 키워드: MUST / SHOULD / MAY (RFC 2119 방식의 사용).
  • CEK: 콘텐츠 암호화 키(Content Encryption Key). 16바이트(128비트)이며 파일마다 하나씩 사용합니다.
  • E2EE / 영지식: 암호화와 복호화는 클라이언트에서 이루어집니다. 서버는 암호문과 공개 매개변수만 처리하며 CEK를 획득해서는 안 됩니다(MUST NOT).
  • transferId / fileId / chunkIndex: 각각 전송, 파일, 청크 인덱스를 나타내는 식별자입니다.
  • manifest: 다운로드, 조립, 복호화에 필요한 공개 매개변수(예: cryptoVersion, chunkSize, 매핑). CEK를 포함해서는 안 됩니다(MUST NOT).
  • 단기 액세스 토큰: 암호문/매니페스트 접근을 승인하는 데 사용하는 서버 측 세션 토큰(조회 방식). 설계상 일정 시간이 지나면 만료됩니다.

1.2 보안 목표

  • 기밀성: 영지식 모델에서 서버는 사용자 콘텐츠를 복호화할 수 없어야 합니다(MUST NOT be able to decrypt).
  • 무결성: 변조는 반드시 감지되어야 하며(MUST), AEAD 인증 실패 시에는 반드시 처리를 중단(fail closed)해야 합니다.
  • 접근 제어: 암호문 접근은 범위가 한정되고 만료되는 토큰으로 보호되어야 하며(MUST), 보낸 사람은 접근을 철회할 수 있어야 합니다(MUST).
  • 감사 가능성: 민감한 데이터 노출을 최소화하면서, 보낸 사람이 확인할 수 있는 최소한의 전달 증거를 제공합니다.

1.3 범위 내 항목

  • 영지식/E2EE 경계와 키 처리(URL 프래그먼트 모델)
  • 청크 단위 암호화 및 인증 매개변수(cryptoVersion=v1)
  • 업로드/다운로드 및 매니페스트 조회를 위한 토큰 기반 인가와 철회 의미 체계
  • 다운로드/복호화 페이지의 웹 보안 기준(CSP, 서드파티 스크립트 없음)

1.4 범위 외 항목

  • 침해된 단말: 악성코드, 악성 브라우저 확장 프로그램, 루팅된 기기
  • 사용자가 의도적으로 링크를 유출하는 경우, 소셜 엔지니어링, 잘못된 설정
  • 서버 측 콘텐츠 검사(엄격한 영지식 콘텐츠 보호와 양립할 수 없음)