SponsoredNordVPN — 온라인 프라이버시 보호 — 군사급 암호화로 안전하게 브라우징하세요. 111개국 6,800개 이상의 서버. 30일 환불 보장. 지금 보호
지식 베이스로 돌아가기

프라이버시 우선 설계로 Tempy.email을 구축한 방법

대부분의 이메일 서비스는 메시지를 데이터베이스에 저장하고, 검색을 위해 인덱싱하고, 백업을 유지하며, 무기한으로 보관합니다.

우리는 반대로 합니다: 모든 것이 메모리에 존재합니다. 타이머가 만료되면 데이터는 사라집니다.

전통적인 이메일의 프라이버시 문제

Gmail, Outlook 또는 기존 이메일 서비스를 사용할 때:

  1. 이메일이 디스크에 저장됨 → 소환장, 유출 또는 판매 가능
  2. 검색을 위해 인덱싱됨 → 통신에 대한 메타데이터 생성
  3. 백업됨 → 여러 사본이 존재하여 노출 증가
  4. 무기한 보관됨 → 10년 전 이메일이 여전히 존재
  5. 광고를 위해 스캔됨 → 타겟 광고를 위해 콘텐츠 분석
  6. 로그 유지됨 → IP 주소, 타임스탬프, 접근 패턴 추적

진정으로 삭제되는 것은 없습니다.

"삭제"를 눌러도 데이터는 다음에 존재할 수 있습니다:

  • 백업 테이프
  • 검색 인덱스
  • 서버 로그
  • 컴플라이언스 아카이브
  • 법적 보존 시스템

우리의 접근 방식: 메모리 전용 아키텍처

tempy.email은 하나의 원칙 위에 구축되었습니다: RAM에 없으면 존재하지 않습니다.

전통적인 이메일:
사용자 → 웹 서버 → 데이터베이스 → 디스크 → 백업 → 아카이브
(데이터가 영원히 존재)

tempy.email:
사용자 → 웹 서버 → Redis (RAM 전용) → 만료 → 사라짐
(데이터가 10분간 존재)

영구 저장소 없음

없는 것:

  • ❌ PostgreSQL, MySQL 또는 디스크 기반 데이터베이스 없음
  • ❌ 파일 스토리지 없음 (S3, 디스크, NAS)
  • ❌ 백업 없음
  • ❌ 아카이브 없음
  • ❌ 이메일 콘텐츠 로그 없음
  • ❌ "소프트 삭제" 없음 (삭제로 표시하지만 데이터 유지)

있는 것:

  • ✅ Redis (인메모리 키-값 저장소)
  • ✅ TTL (Time-To-Live) 모든 키에 적용
  • ✅ 자동 만료

이메일 저장 방식

이메일이 도착하면:

// TTL과 함께 Redis에 이메일 저장
await redis.set(
  `mailbox:${address}:emails`,
  JSON.stringify(email),
  'EX', 600  // 600초(10분) 후 만료
);

10분 후:

  • Redis가 자동으로 키를 삭제
  • 메모리가 해제됨
  • 데이터가 완전히 사라짐 (삭제 표시가 아닌 실제로 사라짐)

복구할 것이 없으므로 "복구" 프로세스도 없습니다.

서버 로그는?

로깅을 최소화합니다:

전통적인 서버 로그:

2026-02-12 10:15:23 User john@gmail.com logged in from 203.0.113.5
2026-02-12 10:15:45 john@gmail.com opened email "Password Reset"
2026-02-12 10:16:12 john@gmail.com deleted 3 emails

tempy.email 로그:

2026-02-12 10:15:23 Mailbox created (no email address logged)
2026-02-12 10:15:45 Email received (no content logged)
2026-02-12 10:25:23 Mailbox expired

이벤트를 기록하지, 식별 가능한 데이터를 기록하지 않습니다.

프라이버시 기능

1. 사용자 계정 없음

원해도 계정을 만들 수 없습니다:

  • 가입 양식 없음
  • 비밀번호 없음
  • "내 계정" 페이지 없음
  • 사용자 데이터베이스 없음

이유: 계정은 신원을 만듭니다. 우리는 당신이 누구인지 알고 싶지 않습니다.

2. 추적이나 분석 없음

많은 "프라이버시 우선" 서비스도 여전히 사용하는 것들:

  • Google Analytics
  • Facebook Pixel
  • Mixpanel
  • Hotjar

우리가 사용하는 것: 위의 어떤 것도 없음.

추적하는 것:

  • 생성된 총 메일박스 수 (카운터)
  • 처리된 총 이메일 수 (카운터)

추적하지 않는 것:

  • 누가 생성했는지
  • 언제 생성했는지
  • 어떤 IP에서 왔는지
  • 어떤 브라우저를 사용했는지

3. 이메일 콘텐츠 스캔 없음

이메일 콘텐츠를 분석하지 않습니다:

  • 광고
  • 머신러닝 훈련
  • 패턴 감지
  • 콘텐츠 분류

이메일은 사람이나 알고리즘이 읽지 않은 상태로 시스템을 통과합니다.

4. IP 로깅 없음

기록하지 않는 것:

  • IP 주소
  • 지리적 위치
  • ISP
  • 기기 핑거프린트

이유: "익명화된" IP 로그조차 상관관계 공격을 통해 역익명화될 수 있습니다.

5. 타사 서비스 없음

사용하지 않는 것:

  • 추적하는 CDN (프라이버시 모드의 Cloudflare만 사용)
  • 분석 플랫폼
  • 광고 네트워크
  • 소셜 미디어 위젯
  • 타사 폰트 (Google Fonts를 로컬로 제공)

이유: 모든 타사 서비스는 잠재적인 데이터 유출 경로입니다.

기술적 구현

Redis 설정

// 모든 키에 기본 TTL 적용
const DEFAULT_TTL = 600; // 10분

// 메일박스 키
await redis.setex(
  `mailbox:${address}`,
  DEFAULT_TTL,
  JSON.stringify({ created: Date.now() })
);

// 이메일 키
await redis.rpush(`mailbox:${address}:emails`, emailJson);
await redis.expire(`mailbox:${address}:emails`, DEFAULT_TTL);

자동 정리

Redis가 만료를 자동으로 처리합니다:

T+0: 이메일 도착 → Redis에 저장
T+600초: TTL 만료 → Redis가 키 삭제 → 메모리 해제

크론 작업 없음. 수동 정리 없음. "소프트 삭제" 없음.

이메일 새니타이제이션

이메일을 저장하기 전에 HTML을 새니타이즈하여 다음을 방지합니다:

  • XSS 공격
  • 추적 픽셀
  • 악성 스크립트
  • 프라이버시 유출
var sanitizer = new HtmlSanitizer();
sanitizer.AllowedTags = ["p", "a", "b", "i", "ul", "ol", "li"];
// <img> 없음, <script> 없음, 추적 없음
var cleanHtml = sanitizer.Sanitize(rawHtml);

접근할 수 없는 것들

원한다 해도 (원하지 않지만), 우리가 물리적으로 할 수 없는 것:

  1. 삭제된 이메일 복구 → 백업이 존재하지 않음
  2. 과거 데이터 보기 → TTL이 모든 것을 삭제
  3. 사용자 행동 추적 → 분석할 로그가 없음
  4. 사용자 식별 → 계정도 없고, 기록된 IP도 없음
  5. 데이터 요청에 응하기 → 넘길 데이터가 없음

이것은 정책적 결정이 아닙니다. 아키텍처적인 것입니다.

우리가 받아들이는 트레이드오프

프라이버시 우선 설계는 제한을 수용한다는 것을 의미합니다:

제공할 수 없는 것:

  • ❌ 이메일 검색 (인덱싱 없음)
  • ❌ 장기 저장 (기본 10분)
  • ❌ 이메일 복구 (만료되면 사라짐)
  • ❌ 사용자 계정 (메일박스를 "저장"할 수 없음)
  • ❌ 실제 받은편지함으로 이메일 전달

제공할 수 있는 것:

  • ✅ 완벽한 프라이버시
  • ✅ 제로 추적
  • ✅ 즉시 삭제
  • ✅ 데이터 유출 위험 없음 (유출할 데이터가 없음)
  • ✅ 마음의 평화

"프라이버시 중심" 이메일과의 비교

기능 ProtonMail Tutanota tempy.email
암호화 ✅ E2E ✅ E2E ⚠️ 전송 중만
영구 저장 ✅ 예 ✅ 예 ❌ 아니오 (10분 TTL)
사용자 계정 ✅ 예 ✅ 예 ❌ 계정 없음
데이터 소환장 위험 ⚠️ 암호화된 데이터 존재 ⚠️ 암호화된 데이터 존재 ✅ 소환할 데이터 없음
IP 로깅 ⚠️ 선택적 ⚠️ 선택적 ❌ 절대 없음
사용 목적 영구 비공개 이메일 영구 비공개 이메일 일회용/테스트

ProtonMail과 Tutanota는 영구적인 비공개 이메일에 탁월합니다.

tempy.email은 데이터가 전혀 존재하지 않기를 원하는 일회용 사용을 위한 것입니다.

결론

대부분의 서비스가 말합니다: "우리는 당신의 데이터를 보지 않겠습니다" 우리는 말합니다: "우리는 당신의 데이터를 볼 수 없습니다 (충분히 오래 존재하지 않습니다)"

대부분의 서비스가 말합니다: "요청하시면 삭제하겠습니다" 우리는 말합니다: "요청 여부와 관계없이 10분 후 자동 삭제됩니다"

대부분의 서비스가 말합니다: "우리는 프라이버시 중심입니다" 우리는 말합니다: "프라이버시가 우리의 아키텍처입니다"

이것은 정책에 의한 프라이버시가 아닌, 설계에 의한 프라이버시입니다.

직접 확인해보세요: 임시 주소를 생성하세요. 10분 후 그 이메일은 영원히 사라집니다. "보관"된 것도 아니고, "삭제"된 것도 아닙니다. 사라진 것입니다.

업데이트됨 2월 12, 2026