Syrinx는 게시물 데이터를 이용자 기기에 분산 저장하고 서버에는 콘텐츠를 남기지 않는 분산형 소통 플랫폼 실험이다. 제작자는 이 구조가 서버를 장악당하거나 서비스가 차단돼도 새 서버에서 빠르게 운영을 재개할 수 있다고 설명하지만, 이용자들이 기존 앱에서 데이터를 내보내 새 시스템으로 가져와야 한다.

Syrinx 저장소

Syrinx는 초대제로 운영되며, 커뮤니티 운영진의 조치와 서명을 공개 원장에 기록해 회원이 열람할 수 있도록 설계됐다. 각 커뮤니티는 다른 커뮤니티와 연합할 수 있고, 운영 방식에 동의하지 않는 회원은 별도의 커뮤니티를 만들 수 있다는 구상이다.

서버는 토렌트 추적기처럼 어떤 이용자가 어떤 데이터를 갖고 있는지는 알지만 콘텐츠 자체는 알지 못한다. 클라이언트가 콘텐츠를 암호화해 서버로 보내면 서버가 요청자에게 전달하고, 클라이언트가 복호화·검증한 뒤 저장한다. 이용자 간 직접 연결은 NAT를 거치는 공유기 환경에서 안정성이 낮아 서버가 중계 역할을 한다. 따라서 제작자는 Syrinx를 문서에서 완전한 P2P가 아닌 ‘P2P에 가까운’ 시스템으로 표현했다.

게시물은 텍스트만 지원하며 140자로 제한된다. 프로필 사진도 올릴 수 없고, 서버가 생성한 사용자 ID를 바탕으로 아바타를 자동 생성한다. 제작자는 이를 통해 비슷한 문자로 다른 이용자를 사칭하더라도 계정별로 구별되는 아바타가 표시된다고 설명한다. 푸시 알림도 현재는 제공하지 않는다.

이용 조건과 한계

요청한 콘텐츠를 전달할 이용자가 온라인이 아니면 해당 콘텐츠에 접근할 수 없다. 다른 시간대의 이용자가 콘텐츠를 가까운 시간대의 이용자에게 전달해 두는 방식으로 해결할 수 있지만, 전달에 몇 시간이나 며칠이 걸릴 수도 있다.

서버가 장악돼도 이용자 이름 외에는 유용한 정보를 얻기 어렵다는 것이 제작자의 설명이다. 이메일과 자기소개는 선택 항목이다. 다만 기존 커뮤니티가 영구적으로 사라졌을 때 다른 서버로 계정과 데이터를 옮기는 방법은 해결되지 않았다. 새 서버가 이전 서버의 공개키만으로 게시물 서명을 신뢰할 수 있는지 확인하기 어렵고, 비공개 대화까지 옮기는 문제도 남아 있다고 제작자는 밝혔다.

이 프로젝트는 제작자가 기본적인 운영 도구를 갖추고 검열에 견디는 연합형 소셜 네트워크를 만들 수 있는지 살펴본 개념 증명이다. 제작자는 실험 결과에 만족한다면서도 향후 방향은 커뮤니티에 달렸다고 밝혔다.