타임스탬프의 원리 — 시점 증명은 왜 어렵고 블록체인이 해결하는가
파일을 저장하면 운영체제가 자동으로 "생성 시각"과 "수정 시각"을 기록합니다.
디지털 증거에서 가장 빈번하게 다투어지는 쟁점 중 하나가 "이 증거가 정말 그 시점에 존재했는가"입니다. 파일의 날짜를 바꾸는 것은 클릭 몇 번이면 되기 때문입니다. 컴퓨터 시계는 왜 믿을 수 없고, 이 문제를 어떻게 해결하는지 알아보겠습니다.
컴퓨터 시간은 왜 신뢰할 수 없는가?
파일을 저장하면 운영체제가 자동으로 "생성 시각"과 "수정 시각"을 기록합니다. 많은 분이 이 시간을 믿지만, 사실 이 시간은 매우 쉽게 조작할 수 있습니다.
조작 방법 1: 시스템 시계 변경 컴퓨터의 날짜와 시간을 원하는 시점으로 변경한 뒤 파일을 저장하면, 그 시점에 만든 것처럼 보입니다.
조작 방법 2: 파일 속성 직접 수정 명령어 한 줄이나 간단한 도구로 파일의 생성 시각, 수정 시각, 접근 시각을 자유자재로 변경할 수 있습니다.
조작 방법 3: EXIF 날짜 편집 사진 파일의 EXIF 데이터에 포함된 촬영 날짜도 무료 도구로 수정 가능합니다.
정리하면, 내 컴퓨터에만 존재하는 시간 정보는 내가 마음대로 바꿀 수 있기 때문에 증거로서 의미가 없습니다. 제3자가 객관적으로 확인할 수 있는 시간 기록이 필요합니다.
타임스탬프 서버(TSA)의 원리
이 문제를 해결하기 위해 **타임스탬프 서버(TSA, Time Stamping Authority)**라는 개념이 등장했습니다. 국제 표준 RFC 3161에 정의된 방식입니다.
TSA의 동작 방식 (우체국 소인 비유) ❶ 나 → TSA: "이 문서의 해시값에 시간 도장을 찍어주세요" ❷ TSA: 현재 시각 + 해시값 + TSA 서명 → 타임스탬프 토큰 발급 ❸ 나: 이 토큰을 문서와 함께 보관 마치 우체국이 편지에 소인(postmark)을 찍어주는 것과 같습니다. "이 시점에 이 문서가 존재했다"는 제3자의 확인 도장입니다.
TSA의 한계
TSA는 오래된 검증된 방식이지만, 몇 가지 한계가 있습니다.
- 중앙 의존 TSA 운영 기관 하나에 의존합니다. 해당 기관이 폐업하거나, 서버가 해킹당하거나, 기관 자체가 담합하면 신뢰가 무너집니다.
- 검증에 TSA 참여 필요 타임스탬프를 검증하려면 해당 TSA의 인증서와 시스템이 필요합니다. TSA가 서비스를 종료하면 과거 기록의 검증이 어려워집니다.
- 비용 공인 TSA 서비스는 건당 수수료가 발생하며, 대량 사용 시 비용이 상당합니다.
블록체인이 시점 증명을 해결하는 방법
블록체인은 TSA의 한계를 구조적으로 극복합니다. **"전 세계 수만 대의 컴퓨터가 동시에 보관하는, 수정 불가능한 시간 장부"**이기 때문입니다.
TSA의 3가지 한계 → 블록체인의 해결 ❶ 중앙 의존 → 수만 개 노드가 분산 보관. 특정 기관에 의존하지 않음 ❷ 검증에 제3자 필요 → 블록체인 익스플로러에서 누구나 무료로 독립 검증 가능 ❸ 비용 → Polygon의 경우 건당 약 $0.001 (1원 미만)으로 경제적
블록체인 타임스탬프가 믿을 수 있는 이유
- 네트워크 합의 시간 블록의 타임스탬프는 단일 서버가 아닌, 전 세계 수만 개 노드의 합의로 결정됩니다. 개인이 이 시간을 조작하는 것은 물리적으로 불가능합니다.
- 수정 불가능 한번 블록에 포함된 데이터는 이후 모든 블록과 체인으로 연결됩니다. 과거 기록을 바꾸려면 그 이후의 모든 블록을 다시 계산해야 하므로, 사실상 불가능합니다.
- 영구 보존 블록체인은 특정 기관이 운영하는 것이 아니므로, 서비스 종료의 개념이 없습니다. 기록은 네트워크가 존재하는 한 영구적으로 보존됩니다.
- 누구나 무료 검증 TXID(트랜잭션 ID)만 있으면 PolygonScan 같은 블록체인 익스플로러에서 기록과 시간을 직접 확인할 수 있습니다.
TrueSnap의 Polygon 앵커링 프로세스
// TrueSnap의 블록체인 앵커링 과정 Step 1. 캡처 완료 → 구성 요소별 SHA-256 해시 생성 screenshot.png → a49f39bb... page-source.html → ad308e8b... network.har → 2af2dd73... Step 2. 3개 해시를 결합 → Evidence Fingerprint 생성 → 7b3e9f1a4c8d2b5e... (32바이트) Step 3. Evidence Fingerprint를 Polygon 트랜잭션의 Input Data에 기록 Step 4. 네트워크 합의 → 블록 생성 (평균 2초) → TXID, Block Number, Block Timestamp 확정 Step 5. 블록체인 영수증(blockchain-receipt.json)을 증거 패키지에 포함
시점 증명 방식 비교
| 비교 항목 | 파일 시간 | TSA 서버 | 블록체인 |
|---|---|---|---|
| 조작 가능성 | 매우 쉬움 | 기관 신뢰 필요 | 불가능 |
| 독립 검증 | 불가 | TSA 참여 필요 | 누구나 무료 |
| 영구성 | 삭제 가능 | 기관 존속 필요 | 영구 보존 |
| 보증 주체 | 없음 | 단일 기관 | 분산 네트워크 |
| 비용 | 무료 | 건당 유료 | 건당 ~1원 |
핵심 정리
- 컴퓨터의 파일 시간은 쉽게 조작 가능 → 증거로 의미 없음 2. TSA(타임스탬프 서버)는 제3자 시점 증명을 제공하지만 중앙 의존 한계 3. 블록체인은 수만 개 노드의 합의로 시간을 기록 → 조작·삭제 불가능 4. TrueSnap은 증거 지문을 Polygon 블록체인에 자동 앵커링 5. TXID로 누구나 PolygonScan에서 무료 검증 가능