무엇을 하나요

사고 싶은 상점이 현금이나 특정 결제 수단만 받는다면, 암호화폐(현재 BTC signet과 USDC)로 결제하고 구매 대행자(proxy shopper)가 대신 물건을 사서 보내 줍니다.

돈은 주문마다 2-of-3 멀티시그(사용자(user), 구매 대행자, 에스크로(escrow))에 들어갑니다.

  • 물건이 도착하면 사용자와 구매 대행자가 서명해 구매 대행자에게 돈을 지급합니다.
  • 분쟁이 생기면 에스크로가 나머지 두 사람 중 한 명과 함께 분배를 결정합니다.
  • 누군가 응답을 멈추더라도 타임락이 돈이 결국 어느 한쪽에 돌아가도록 보장합니다.

구조

브라우저 (proxy-shopping-web)                Go 노드 (proxy-shopping-go)
  키와 서명은 브라우저 안에서             shopper / escrow / operator / relay
        │ WSS (나가는 연결만)                    │ WSS           │ libp2p
        ▼                                        ▼               ▼
   Nostr 릴레이 (운영자가 지정)     ◀──▶      Go 노드 네트워크
   = 항상 켜져 있는 입구 + 우편함            (gossipsub; circuit relay v2와 DCUtR로 NAT 통과)
  • 사용자는 아무것도 실행하지 않습니다. 공개된 웹 앱을 여는 것만으로 참여할 수 있습니다. 키는 브라우저에서 만들어지고 브라우저 밖으로 나가지 않습니다. 모든 승인(서명)은 브라우저에서 이루어집니다.
  • Nostr 릴레이로의 연결은 나가는 연결이므로, NAT 뒤에 있는 사용자도 접속할 수 있습니다.
  • 항상 온라인이 아닌 사람들(사용자, 에스크로, 운영자(operator), 코디네이터(coordinator))에게 보내는 메시지는 암호화된 채로 우편함 역할을 하는 Nostr 릴레이에서 기다립니다. 각 메시지는 여러 릴레이로 보내집니다.
  • 항상 온라인이어야 하는 것은 구매 대행자뿐입니다. 구매 대행자는 Go 노드와, 상점을 조작하는 브라우저 자동화 도구(shopper-bot)를 실행합니다.

신뢰의 흐름

coordinator (사용자가 그 공개 키를 신뢰)
  └─ 위임: "이 operator는 목록을 게시할 수 있다"
       └─ 목록: "이 지역에서는 이 shopper와 이 escrow를 함께 신뢰할 수 있다"
  • 사용자는 코디네이터의 공개 키만 신뢰합니다. 신뢰는 거기서 운영자로, 다시 구매 대행자 × 에스크로 조합으로 이어집니다.
  • 목록에는 버전이 있고 만료되지 않습니다. 누군가를 빼려면 새 버전을 게시합니다.
  • 사용자는 설정에서 코디네이터를 삭제하는 것으로 그 코디네이터를 “해임”합니다.

수수료

누구에게 강제 가능? 방법
구매 대행자 예 견적에 포함
에스크로 (선불) 예 자금 예치와 함께 에스크로에 직접 지급. 선불 수수료를 내지 않은 주문에 대해 에스크로는 중재할 의무가 없습니다
에스크로 (분쟁) 예 판정의 분배에서 공제
운영자 / 코디네이터 아니요 등재 수수료 등, 프로토콜 밖에서 합의. 목록이 파는 것은 “발견되는 것”입니다

에스크로의 보증금과 그 몰수는 프로토콜의 일부가 아닙니다. 운영자와 에스크로가 스스로 합의하는 조건으로 취급하며, 참고용 계약서를 제공합니다.

현금 전용 상점

상점의 위치는 지역 코드로 나타냅니다(예: JP-13-13104 = 도쿄 신주쿠). 구매 대행자는 직접 가서 현금으로 결제할 수 있는 지역을 선언하고, 그 지역 상점의 주문만 받습니다.

상점 위험도

주문을 받기 전에 구매 대행자는 상점에 점수를 매깁니다. 구매 대행자의 허용 목록에 있는지, HTTPS를 쓰는지, 결제 페이지가 알려진 결제 게이트웨이인지를 봅니다. 임의의 사이트에 카드 정보를 보내는 것은 위험하므로, 점수가 낮은 상점의 주문은 거절됩니다.