내가 만든 Pastebin, 나조차도 당신의 데이터를 읽을 수 없어요
Source: Dev.to
The Problem
비밀번호나 API 키를 공유할 때마다 다음을 믿어야 합니다:
- 플랫폼의 서버
- 플랫폼 직원들
- 플랫폼의 보안
- 아직 일어나지 않은 모든 미래의 침해
“그냥 빠른 붙여넣기” 하나 때문에 이렇게 많은 신뢰를 줘야 합니다.
일반적인 pastebin은 데이터를 평문으로 저장합니다. (만약) 침해가 발생하면 모든 것이 노출됩니다.
The Solution: Zero‑Knowledge Architecture
CloakBin은 서버에 도달하기 전, 브라우저에서 모든 데이터를 암호화합니다. 우리는 원한다 하더라도 여러분의 붙여넣기를 읽을 수 없습니다.
1. Client‑Side Encryption
붙여넣기를 만들면 JavaScript가 AES‑256(은행에서 사용하는 것과 동일)으로 브라우저 내에서 바로 내용을 암호화합니다.
2. The Key Never Leaves Your Browser
암호화 키는 URL 조각, 즉 # 뒤에 저장됩니다:
https://cloakbin.com/abc123#your-secret-key
브라우저는 URL 조각을 서버에 전송하지 않습니다. #와 그 뒤의 모든 내용은 클라이언트 측에만 남습니다.
ℹ️ 이것은 기본적인 웹 보안 기능입니다. 브라우저의 네트워크 탭을 확인해 보세요—요청에 조각이 절대 나타나지 않을 것입니다.
3. What Our Server Actually Stores
Encrypted blob: U2FsdGVkX1+8K3...
Key: ¯\_(ツ)_/¯
우리는 암호화된 잡음만 저장합니다. 키가 없으면(우리는 절대 받지 않음) 읽을 수 없습니다.
The Two‑Factor Sharing Problem
“멋진데, Discord에 URL을 공유하면 키가 메시지에 그대로 있잖아.”
맞습니다. 그래서 비밀번호 보호 기능을 추가했습니다.
비밀번호 보호를 사용하면:
- 암호화 키가 비밀번호에서 파생됩니다(PBKDF2 사용).
- URL에 키가 나타나지 않으며,
https://cloakbin.com/abc123같은 깔끔한 링크만 남습니다. - 비밀번호를 아는 사람만 복호화할 수 있습니다.
Secure sharing workflow
- 비밀번호 보호와 함께 붙여넣기 생성.
- Discord/Slack/이메일에 링크 공유.
- 비밀번호는 다른 채널(문자, 전화 등)로 전달.
두 개의 채널을 사용하면 두 개를 모두 가로채기 훨씬 어려워집니다.
Try It Out
평문으로 비밀을 공유하는 것을 멈출 준비가 되셨나요?
- 🔗 Try CloakBin – 첫 번째 암호화된 붙여넣기를 만들어 보세요.
- 📖 View the Source Code – 유용하다면 레포지토리에 ⭐️를 눌러 주세요!
질문이나 피드백이 있나요? 아래에 댓글을 남기거나 GitHub에 이슈를 열어 주세요.
