용어집 / 프라이버시와 보안
Payjoin
별칭은 P2EP, Pay-to-endpoint입니다.
- Payjoin이란 무엇입니까?
- Payjoin은 코인을 받는 사람이 자신의 입력 중 하나를 귀하의 트랜잭션에 조용히 추가하여 온체인상의 금액이 귀하가 실제로 지불한 금액과 더 이상 일치하지 않게 되는 결제 방식입니다.
BIP-78에 명시되어 있습니다.
양측이 입력을 제공하므로 분석가들이 주소를 지갑으로 묶는 데 사용하는 규칙이 깨집니다. Nicolas Dorier는 2019년 5월에 이를 BIP78로 명세화했으며, 이는 이론이 아니라 실제로 배포되어 있습니다. BTCPay Server가 2020년에 지원을 내놓았습니다. 지불하는 사람 입장에서는 트랜잭션 수수료가 조금 더 들고 겉보기에는 완전히 평범해 보입니다.
작동 방식
payjoin 프로토콜은 귀하가 전송을 누르는 순간과 트랜잭션이 브로드캐스트되는 순간 사이에 이루어지는 짧은 대화입니다.
귀하의 지갑은 일반적인 지출 때와 똑같이 서명되지 않은 PSBT로 결제를 구성하고, 수취인이 결제 요청에서 알린 엔드포인트로 이를 전송합니다. 수취인은 자신의 미사용 출력 하나를 두 번째 입력으로 추가하고, 올바른 결제 금액을 계속 받을 수 있도록 같은 금액만큼 자신의 출력을 늘린 뒤 수정된 PSBT를 돌려보냅니다. 귀하의 지갑은 목적지와 금액이 바뀌지 않았는지 확인하고 서명한 뒤 브로드캐스트합니다.
온체인에 기록되는 것은 서로 다른 두 사람이 소유한 두 개의 입력입니다. 표준 클러스터링 규칙을 적용하는 분석가는 두 명의 낯선 사람을 하나의 지갑으로 합치게 되며, 이는 자신의 데이터셋에 영구적으로 기록되는 잘못된 결론입니다. 결제 금액 역시 사라집니다. 수취인의 출력은 결제 금액에 자신이 제공한 입력을 더한 것이므로 어느 출력도 귀하가 지불한 금액과 같지 않습니다. 감시자는 더 이상 트랜잭션에서 청구서를 읽어낼 수 없습니다.
BIP78은 귀하의 비용을 제한합니다. maxadditionalfeecontribution 매개변수는 수취인이 추가하는 입력에 대해 귀하가 기꺼이 지불할 사토시 수를 명시하므로, 수취인이 귀하의 수수료를 조용히 부풀릴 수 없습니다. 문제가 생기면, 즉 엔드포인트에 접속할 수 없거나 응답이 잘못된 형식이거나 금액이 맞지 않으면 귀하의 지갑은 원래 트랜잭션을 브로드캐스트하는 것으로 되돌아갑니다. 실패한 payjoin도 여전히 완료된 결제이므로, 아무것도 깨뜨리지 않고 이를 기본값으로 활성화할 수 있습니다.
수취인은 프라이버시와 무관한 두 번째 이점을 얻습니다. 모든 payjoin은 다른 사람이 대부분 비용을 부담하는 트랜잭션에 자신의 코인 하나를 접어 넣을 수 있게 해주며, 이는 작은 출력이 가득한 지갑을 상대로 하는 무료 정리 작업입니다.
확인할 수 있는 곳
Payjoin은 판매자 쪽에서 작동하므로 대부분의 사람은 그것을 알아차리지 못한 채 접하게 됩니다.
BTCPay Server는 최초의 실제 운영 구현이었고 청구서에 payjoin을 제공하며, 그래서 기부 페이지와 직접 운영하는 결제 페이지에서 가장 많이 나타납니다. Wasabi와 Sparrow는 데스크톱에서 payjoin 엔드포인트로 전송할 수 있습니다.
원래 설계의 약점은 수취인이 공개 서버를 운영하고 결제 순간에 온라인 상태여야 했기 때문에 판매자에게만 국한되었다는 점입니다. Dan Gould와 Yuval Kogman이 2023년 8월에 만들고 아직 초안인 BIP77, “Async Payjoin”은 직접 엔드포인트를 Oblivious HTTP로 접속하는 저장 후 전달 디렉터리로 대체하여, 두 휴대폰 지갑이 동시에 온라인 상태가 아니어도 payjoin을 완료할 수 있게 합니다. Bull Bitcoin과 Cake Wallet이 모바일 앱에 그 버전을 내놓았으며, 이는 payjoin이 일반적인 개인 간 결제에 처음으로 이용 가능해진 것입니다.
이를 사용하는 가장 강력한 이유는 귀하가 직접 볼 수 없는 것입니다. 데이터셋에 있는 모든 payjoin은 한 번도 사용해 본 적 없는 사람들을 포함한 모든 사람에게 공통 입력 소유 규칙을 덜 신뢰할 수 있게 만듭니다. 사용자 자신에게만 도움이 되는 프라이버시 기법은 드물며, 이 기법은 트랜잭션 하나하나마다 네트워크 전체의 감시를 약화시킵니다.