본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 생산성·자동화 · 윈도우즈 유틸

SP2P – Secure P2P File Transfer

0

SP2P는 Zyno Consulting에서 개발한 엔드투엔드 암호화된 피어투피어 파일 전송 도구입니다.

MIT 라이선스Windows암호화오픈소스파일 전송피어투피어

소개

SP2P는 Zyno Consulting에서 개발한 엔드투엔드 암호화된 피어투피어 파일 전송 도구입니다. CLI와 브라우저 간에도 파일을 직접 전송할 수 있으며, NAT traversal을 위해 TURN 릴레이를 마지막 수단으로 사용합니다. 오픈소스 MIT 라이선스로 제공되며, Windows, macOS, Linux를 지원합니다.

상세정보

파일 및 폴더 전송

SP2P는 개별 파일, 여러 파일, 전체 폴더를 전송할 수 있습니다. stdin을 통해 파이프 입력도 지원하여 tar 아카이브와 같은 스트림 데이터를 전송할 수 있습니다.

암호화 및 보안

모든 데이터 전송은 AES-256-GCM 암호화를 사용하며, X25519 Diffie-Hellman 키 교환과 HKDF를 통해 세션 키를 생성합니다. TURN 릴레이를 사용할 때도 데이터는 암호화된 상태로 유지되어 릴레이 서버가 내용을 볼 수 없습니다.

연결 전략

SP2P는 대칭 TCP와 WebRTC 두 가지 연결 방식을 동시에 시도하여 먼저 성공한 방식을 사용합니다. 자동 모드에서는 64MiB 이상의 대용량 파일 전송 시 TCP를 우선적으로 시도하여 더 빠른 전송 속도를 제공합니다.

AI 에이전트 지원

SP2P는 JSON Lines 인터페이스를 제공하여 AI 에이전트와의 자동화를 지원합니다. 에이전트는 간단한 프롬프트를 통해 파일 전송을 지시할 수 있으며, 세션 이벤트와 진행 상황을 실시간으로 받을 수 있습니다.

Windows에서의 설치

Windows 사용자는 Scoop 패키지 관리자를 통해 SP2P를 설치할 수 있습니다. 먼저 zyno-io 버킷을 추가한 후 sp2p 패키지를 설치합니다.

scoop bucket add zyno-io https://github.com/zyno-io/scoop-bucket
scoop install sp2p

Chocolatey 및 WinGet을 통한 설치는 현재 준비 중이며, 소스 코드로부터 직접 빌드하는 방법도 제공됩니다.

파일 보내기

파일을 보내려면 sp2p send 명령어를 사용합니다. 수신자는 전송 코드를 입력하여 파일을 받을 수 있습니다.

sp2p send document.pdf
sp2p receive abc123-xYz456

여러 파일을 보내거나 폴더 전체를 전송할 수도 있습니다.

sp2p send ./my-folder
sp2p send *.jpg  # 여러 파일을 tar 아카이브로 전송

stdin을 통한 전송

파이프 입력을 통해 데이터를 보낼 수 있습니다. 예를 들어 에코 명령어나 tar 출력을 직접 전송할 수 있습니다.

echo "hello world" | sp2p send -
tar czf - src/ | sp2p send -name src.tar.gz -

수신 및 출력 옵션

수신 시 출력 디렉터리를 지정하거나 stdout으로 직접 출력할 수 있습니다. tar과 결합하여 아카이브를 바로 풀 수도 있습니다.

sp2p receive abc123-xYz456 -output ~/Downloads
sp2p receive abc123-xYz456 -stdout | tar xzf -

이런 경우에 유용합니다

SP2P는 클라우드 서버에 업로드하지 않고도 두 대의 컴퓨터 간에 큰 파일을 빠르게 전송해야 하는 상황에서 유용합니다. 특히 재택근무 중 회사 컴퓨터와 집 컴퓨터 간에 작업 파일을 주고받을 때, 복잡한 클라우드 스토리지 설정 없이 직접 전송할 수 있습니다. 또한 개발자는 AI 에이전트와의 통합을 통해 자동화된 파일 전송 워크플로우를 구축할 수 있습니다.

시스템 요구사항

별도의 시스템 요구사항이 등록되지 않았습니다.