Claude Code로 Warp 구축: 서버가 바이트를 볼 수 없는 P2P 암호화 파일 전송 (오픈 소스)
요약
Claude Code를 활용하여 서버가 파일 내용을 절대 볼 수 없는 P2P 암호화 파일 전송 도구 'Warp'를 구축한 과정을 공유합니다. 이 도구는 WebRTC와 Cloudflare Worker/Durable Object를 사용하여, 시그널링 서버가 데이터에 접근할 수 없도록 설계되었습니다.
핵심 포인트
- Claude Code를 활용하여 P2P 암호화 파일 전송 도구를 개발함.
- WebRTC 채널을 통해 파일을 스트리밍하며, 시그널링 서버는 데이터를 전혀 볼 수 없음.
- Cloudflare Worker와 Durable Object로 시그널링 프로토콜을 구현하고 안정성을 높임.
Warp는 제가 Claude Code를 사용하여 만든 P2P(peer-to-peer) 파일 전송 도구입니다. 파일을 선택하고 짧은 코드나 QR 코드를 공유하면, 해당 파일이 암호화된 WebRTC 채널을 통해 브라우저 간에 스트리밍됩니다. 시그널링 서버는 단지 두 피어(peers)를 소개하는 역할만 할 뿐, 그 이상은 하지 않습니다. 절대 하나의 바이트도 보거나, 저장하거나, 중계하지 않습니다. 업로드 제한 없음, 계정 필요 없음, 용량 제한 없음, 무료입니다. 이 구축 과정에서 Claude Code가 실제로 큰 역할을 한 부분들은 다음과 같습니다:
- Cloudflare Worker와 Durable Object를 이용한 시그널링 프로토콜 (WebSocket 핸드셰이크, 룸 라이프사이클, 유휴 시 하이버네이트).
- 256KB 청킹(chunking) 및 백프레셔(backpressure) 구현으로, 수 GB에 달하는 파일도 RAM에 버퍼링되지 않고 바로 디스크로 스트리밍됩니다.
- DTLS 데이터 채널과 브라우저 내 키 핸들링에 대한 보안 검토를 거쳤습니다.
저는 아키텍처를 주도했으며 솔직하게 목표하지 않은 부분들을 설정했습니다: TURN 릴레이는 사용하지 않아, 두 개의 엄격한 NAT(Network Address Translator)가 통신을 성공적으로 연결하지 못하면 바이트를 조용히 중계하는 대신 실제 오류를 표시하도록 했습니다. 이것이 '서버가 파일을 절대 볼 수 없다'는 보장을 실제로 유지하게 합니다. 이 프로젝트는 완전한 오픈 소스(MIT)입니다: https://github.com/Ishannaik/warp WebRTC의 세부 사항이나 제가 Claude Code를 사용하여 어떻게 여기까지 왔는지에 대해 더 이야기해 드릴 준비가 되어 있습니다. /u/Ishannaik 님이 제출했습니다. [링크] [댓글]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/ClaudeAI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기