사용자가 어떤 형태로든 비공개를 기대하는 데이터를 공개하고 있다면, 현재로서는 애플리케이션 개발자의 과실이라고 봄. atproto의 사용자 데이터가 완전히 공개된다는 사실은 숨겨진 적이 없음. 최종 사용자가 알 것까지 기대하지는 않지만, 이 프로토콜 위에 앱을 만드는 개발자라면 최소한의 사전 검토는 해야 함.
atproto에 인증 기반 데이터 접근 기능을 추가하는 작업이 진행 중이지만, 지금은 “at:// 대신 다른 URI 스킴을 써야 하나?” 같은 세부 사항에 발목이 잡혀 있음. HTTP와 HTTPS의 관계도 아닌 만큼, 타당한 답은 당연히 “아니요”라고 봄.
다른 프로토콜은 데이터 조회 방식과 기대하는 동작이 크게 다른 만큼, 별도의 URI 스킴을 쓰는 것도 충분히 타당할 수 있다고 봄.
atproto 개발 전반에 LLM 보조 개발이 널리 퍼진 걸 보면, 개발자가 기본적인 사전 검토를 하리라는 기대도 하기 어려움.
“사용자가 알고 있나?”라는 질문의 답은 대체로 “아니요”임. 그래서 사용자가 몰라도 피해를 입지 않도록 시스템을 만드는 것이 엔지니어의 의무라고 봄.
직접 확인하려고 Skyreader를 열어 봤는데, 앱과 문서 여러 곳에서 데이터는 자체 서버에 비공개로 저장되며, 사용자가 선택해야 인터넷에 공개된다고 안내하고 있음. https://docs.skyreader.app/your-data/#at-a-glance
앱의 사용자 경험에서도 이를 명시적인 선택 사항으로 제시함. 사용자가 비공개 데이터를 게시한다면 의도했거나 개의치 않는 것이라고 봄. 인터넷에 공개한다는 사실이 화면에서 꽤 분명하게 드러남.
처음 atproto를 살펴봤을 때 프라이버시 보호가 전혀 없다는 점에 강한 거부감이 들었음. 주말 프로젝트를 쉽고 재미있게 만들 수 있어서 인기를 얻는 듯하지만, 근본적으로 비공개인 것은 아무것도 없음.
Signal, Matrix, Mastodon 같은 다른 프로토콜에 익숙하면 비공개 메시지나 선택적 공개, 민감한 개인정보를 다룰 수 있는 부분이 당연히 있을 거라고 선의로 추정하기 쉬움. 하지만 모든 것이 공개됨. 나중에 암호화를 덧붙이더라도 메타데이터는 전부 공개되므로, 이런 사회적 시도에는 관여하고 싶지 않음.
ATProto는 공개하려는 데이터를 위해 설계된 프로토콜이며, 그게 목적임. 현재 설계·구현 중인 ATProto spaces에서는 접근 권한을 설정해 비공개 데이터를 다룰 수 있게 될 예정임.
ATProto는 공개 데이터를 널리 배포하는 용도 외에는 근본적인 결함이 있다고 봄. 결국 용도가 Twitter 복제 서비스와 정부의 대국민 공지 정도로 좁혀짐. 프라이버시는 프로토콜을 만든 지 4년 뒤에 덧붙일 수 있는 기능이 아님. 전체 구조의 아킬레스건인 PLC DID는 말할 것도 없음.
고등학교 때 아는 남학생 몇 명이 Twitter를 쓰기 시작했는데, 전부 공개된다는 사실을 모르고 있었음. 꽤 끔찍한 내용들을 올려 두고 몇 년이 지나서야 알아차렸음.