복잡한 프라이버시 프로토콜 테스트, 어떻게 단순화할까?
OHTTP(Oblivious HTTP, 클라이언트의 IP 주소를 숨겨 서버에 요청을 보내는 방식) 같은 프라이버시 프로토콜을 구현하다 보면 테스트 단계에서 벽에 부딪히곤 한다. 일반적인 HTTP 요청과 달리 중간에 프록시가 끼어들고 암호화 과정이 복잡해서, 단순한 curl 명령만으로는 요청이 어디서 왜 깨지는지 파악하기 어렵기 때문이다.
처음에는 기존의 네트워크 디버깅 도구들을 조합해 보려 했다. 하지만 프라이버시 프록시의 특성상 페이로드가 암호화되어 있어, 패킷을 뜯어봐도 실제 어떤 데이터가 오가는지 알 수 없는 상황이 반복됐다. 결국 프로토콜의 각 단계(암호화, 전달, 복호화)를 개별적으로 검증하면서도 전체 흐름을 유지할 수 있는 전용 도구가 필요하다는 결론에 도달했다.
그래서 설계한 것이 pvcli다. 이 도구는 curl처럼 명령줄에서 간편하게 사용할 수 있게 만들되, OHTTP 같은 복잡한 프로토콜의 세부 설정을 쉽게 제어할 수 있도록 설계했다. 복잡한 암호화 설정을 매번 코드로 짤 필요 없이, CLI 인자만으로 테스트 요청을 보낼 수 있게 한 것이 핵심이다.
Cloudflare는 이 도구를 통해 "pvcli is a curl-like tool designed to simplify the testing of complex privacy protocols like OHTTP"라고 정의하며, 개발자가 프로토콜의 동작을 빠르게 확인하고 디버깅하는 데 초점을 맞췄다. 이는 내부적으로만 사용하던 도구를 오픈소스로 공개함으로써 생태계 전체의 프라이버시 표준 구현을 돕겠다는 판단이 작용한 결과로 추정된다.
단순히 라이브러리를 제공하는 것보다, 실행 가능한 CLI 도구를 제공하는 것이 개발자 경험(DX) 측면에서 훨씬 유리하다. 프로토콜의 정교함보다 중요한 것은 그것을 실제로 구현하는 사람이 얼마나 쉽게 검증할 수 있느냐 하는 점이기 때문이다.