Nostr은 개인 정보 보호 프로토콜은 아니지만 비트코인의 개인 정보 보호를 잠재적으로 향상시킬 수 있습니다.
원제: " THE NOSTR PRIVACY PARADOX "
작가: 웬디
편집자: DAOrayaki
"릴레이를 통해 전송되는 메모 및 기타 콘텐츠"의 전체 이름인 Nostr은 Lightning Network 개발자 fiatjaf가 2021년에 개발한 새로운 통신 프로토콜입니다. LNBits 개발자 Ben Arc가 Diagon Alley라는 완전한 프로토콜입니다. 분산 시장에서의 시도를 통해 개발되었습니다. . 대부분이 멍청한 클라이언트와 스마트 서버를 통해 작동하는 다른 통신 솔루션과 달리 Nostr은 스마트 클라이언트와 멍청한 서버를 제공하여 사용자의 검열 저항을 높입니다.
Nostr에서는 모든 데이터가 사용자에게 로컬로 저장되고 Twitter와 같은 중앙 서버가 아닌 릴레이를 통해서만 배포됩니다. 소셜 미디어의 경우 Nostr은 사용자가 자신의 콘텐츠와 프로필에 대한 완전한 소유권을 가지므로 검열 저항을 추가합니다. 최근 트위터의 검열 정책을 둘러싼 논란으로 인해 사용자들은 연합 커뮤니케이션 솔루션인 마스토돈(Mastodon)으로 마이그레이션하고 있습니다. 그러나 마스토돈에서 콘텐츠 및 프로필의 소유권은 사용자가 등록된 마스토돈 서버의 운영자에게 있습니다. Mastodon과 같은 연합 시스템은 중앙 집중식 서버보다 검열에 더 많은 저항을 제공하지만 사용자는 검열을 받으면 간단히 다른 서버에 가입할 수 있기 때문에 Mastodon이 잠재적으로 서버 소유자를 통해 검열을 시행한다는 비판도 있었습니다.
2022년 12월 Nostr 커뮤니티는 Twitter 창립자 Jack Dorsey로부터 14 BTC의 자금을 지원받았으며 이는 프로토콜에 전례 없는 관심을 불러일으켰습니다. Nostr을 기반으로 구축된 앱이 계속 성장함에 따라 모바일 클라이언트 Damus는 중국 iOS 앱 스토어의 소셜 네트워킹 카테고리에서 1위를 차지했으며 그 결과 금지되었습니다. #MarchOffTwitter 운동을 억제하기 위한 노력의 일환으로 Twitter CEO Elon Musk는 Nostr 관련 콘텐츠를 신속하게 금지하고 Instagram과 같은 다른 제3자 플랫폼에서도 금지했지만 성공하지 못했습니다.

Nostr 자체는 개인정보 보호 프로토콜은 아니지만(기본적으로 클라이언트는 사용자의 IP 주소를 릴레이에 유출함) Nostr 프로토콜은 비트코인의 개인정보 보호를 향상시킬 수 있습니다.
BIP47의 개인정보 보호 및 확장성 향상
BIP47은 사용자 개인 정보를 보호하면서 반복 결제를 위한 재사용 가능한 결제 코드를 생성하는 것을 목표로 하는 비트코인 개선 제안입니다. BIP47이 없으면 사용자는 주소 재사용을 피하기 위해 수동으로 새 주소를 생성해야 합니다. 사용자가 거래에 주소를 재사용하면 블록체인을 관찰하는 사람은 누구나 해당 주소에 속하는 모든 거래를 쉽게 집계하여 사용자의 지불 내역과 순자산에 대한 그래프를 형성할 수 있습니다. 따라서 비트코인에서는 주소 재사용을 방지하는 것이 개인 정보 보호 모범 사례이며 이미 많은 비트코인 지갑에 기본적으로 구현되어 있습니다. 그러나, 새로운 주소를 자주 생성하는 것은 사용자가 가맹점과 고객 등 다른 당사자와 반복결제 관계를 설정하려고 할 때 불편할 수 있습니다.
BIP47을 통해 고객은 판매자가 결제에 사용할 주소 세트를 생성할 수 있습니다. 고객이 매달 제품을 구매하는 경우 판매자는 매달 고객에게 주소를 보내야 합니다. BIP47을 사용하면 고객은 확장 공개 키와 유사하게 판매자를 위한 전용 결제 코드를 생성합니다. 이를 통해 고객은 판매자에게 고객용 주소를 생성하도록 요구하지 않고도 판매자용 새 주소를 자동으로 생성할 수 있습니다.
BIP47은 출력을 위해 HD 지갑에서 모니터링하는 알림 주소를 사용합니다. 알림 거래에서 판매자는 OP_RETURN 필드를 통해 블라인드 공개 키와 체인코드를 고객에게 보낼 뿐만 아니라 공개 블록체인에서 공유 주소를 비공개로 유지하는 데 사용되는 공유 비밀 키도 보냅니다. 비트코인 네트워크의 아키텍처로 인해 이 교환은 몇 가지 문제를 야기합니다. 처음 두 가지 문제는 경제적입니다. 알림 거래는 80바이트로 구성되어 있으며 비트코인 네트워크의 거래 수수료가 높을 때 사용자에게 비용이 많이 들 수 있습니다. 또한 알림 트랜잭션은 전송할 수 없는 출력을 생성하여 시간이 지남에 따라 UTXO 세트를 부풀립니다. 이는 현재 전체 UTXO 세트, 즉 거래가 유효한지 확인하기 위해 새로운 입력으로 사용되지 않는 모든 비트코인 출력을 저장해야 하기 때문에 비트코인 노드의 계산 부하를 증가시킵니다.
거래를 알리면 "유해한 변화"가 발생합니다. 사용자가 알림 거래에서 변경 사항을 받아 제3자에게 지불하면 블록체인을 관찰하는 사람은 누구나 주소가 재사용되지 않더라도 사용자의 중복 지불과 중복되지 않은 지불을 연관시킬 수 있습니다. 알림 주소는 지갑당 한 번만 존재합니다. 판매자가 10명의 고객과 반복 결제 관계를 설정하려는 경우 10명의 고객 모두가 동일한 알림 주소로 판매자에 대한 알림 트랜잭션을 생성해야 하기 때문에 블록체인을 관찰하는 사람은 누구나 판매자의 고객 기반에 대해 알 수 있습니다.
가맹점과 고객 간 결제코드 교환을 위해 알림 거래를 이용하는 것이 아니라, Nostr을 통해 결제코드를 교환할 수 있습니다. 다른 통신 방법과 달리 Nostr은 메시지 교환을 검열할 수 있는 중앙 기관이 없기 때문에 BIP47 결제 코드 교환에 적합합니다. 또한 Nostr의 모든 직접 메시지는 기본적으로 암호화되므로 공유 키를 계산할 필요가 없습니다. Nostr을 통해 BIP47을 사용하면 사용자는 사용되지 않은 출력을 생성하여 UTXO 세트가 부풀어오르는 것을 방지하고, 유해한 변경 및 알림 주소의 재사용을 피하고 공개 클라이언트 기반을 피하여 릴리스를 제거함으로써 중복되지 않은 결제에서 중복 결제를 분리할 수 있습니다. 고객 기반에서.
참고: UTreeXO를 구현하면 향후에는 현재 전체 UTXO 세트를 저장하기 위한 비트코인 노드의 필요성이 제거될 수 있습니다. UTreeXO는 트랜잭션이 유효한 UTXO를 사용하는지 여부를 증명하는 부담을 UTXO 소유자에게 이전하여 스토리지 요구 사항을 몇 GB에서 몇 KB로 줄입니다.
Nostr Pay-To-EndPoint
비트코인에서 블록체인 분석 서비스는 "공통 입력 소유권" 경험적 방법을 사용하여 거래를 신원에 매핑합니다. 이 규칙에 따르면 서로 다른 공개 키를 입력으로 포함하는 트랜잭션은 동일한 사람에 속하는 것으로 분류됩니다. 비트코인 프로토콜은 트랜잭션의 입력과 출력이 상호 연관되는 UTXO 기반 아키텍처를 채택하기 때문에 비트코인 프로토콜은 부분합 분석에도 취약합니다. 하위 집합 합계 분석에서 공격자는 서로 다른 공개 키가 트랜잭션의 입력으로 사용되더라도 입력과 출력이 동일한 엔터티에 속할 확률을 계산할 수 있습니다. 예를 들어, 트랜잭션의 입력이 1, 4, 7, 23, 6이고 출력이 5, 36인 경우 입력 1, 4와 입력 7, 23, 6이 동일한 엔터티에 속한다고 추론할 수 있습니다. .

출처: "암호화폐 거래의 지식 발견: 설문조사" 2021년 저자: Xia Fan Lu 및 Xin-Jiang Zhang
P2EP(Pay-to-EndPoint)는 Satoshi Nakamoto의 Pay-to-IP(P2IP)를 개인 정보 보호를 위해 재설계하여 원래 비트코인 클라이언트에 코딩한 것입니다. P2EP 거래의 한 형태는 공통 입력 소유권의 경험적 규칙을 깨기 위해 설계된 PayJoin 거래입니다. PayJoin 트랜잭션에서는 발신자와 수신자 모두 공통 입력 휴리스틱을 깨기 위한 입력을 제공합니다. PayJoins를 사용하면 사용자는 모든 통신 채널(예: 엔드포인트인 Tor Onion)을 통해 부분적으로 서명된 비트코인 거래(PSBT)를 구성하기 위한 입력으로 사용되는 UTXO에 대한 정보를 교환할 수 있습니다. 양측이 약관에 동의하고 거래에 서명하면 PayJoin 거래는 블록체인의 다른 비트코인 거래처럼 보입니다. 관련된 당사자들이 발신자와 수신자 모두의 역할을 하기 때문에 PayJoin 트랜잭션은 공통 소유권 휴리스틱을 깨뜨릴 뿐만 아니라 하위 집합의 합계 분석도 깨뜨립니다. 당사자는 3과 5의 입력을 제공할 수 있고 트랜잭션은 출력을 생성합니다. 6과 2의 경우.

출처: Pay To EndPoint 저작: Adam Fiscor, 2018
문제: 참가자가 클리어넷 도메인을 사용하든 Tor Onion 엔드포인트를 사용하든 동시에 온라인 상태여야 하기 때문에 PayJoin 거래 조정은 매우 복잡합니다. 예를 들어 컴퓨터를 종료하거나 네트워크 연결을 끊는 등 사용자가 P2EP 트랜잭션을 시작하면 트랜잭션이 통신할 수 없습니다. Nostr에서는 통신이 비동기식입니다. 사용자는 네트워크 연결이 복원된 후 릴레이로부터 정보를 얻습니다. P2EP 트랜잭션의 종점으로 Tor Onion 대신 Nostr 키를 사용하면 P2EP 트랜잭션을 더 쉽게 조정할 수 있습니다.
또 다른 P2EP 구현은 논란의 여지가 있는 LNURL입니다. LNURL을 사용하면 사용자는 각 거래에 대해 지루하게 새 송장을 생성할 필요가 없으며 대신 웹 서버를 가리키는 정적 엔드포인트를 수신하고 자동으로 새 송장을 생성할 수 있습니다. 그러나 웹 서버는 전역 DNS(도메인 이름 서비스)에 의존하기 때문에 LNURL을 사용하는 사용자는 필연적으로 자신의 신원을 호스팅 공급자에게 공개하고, 적절한 예방 조치를 취하지 않을 경우 IP 주소를 수취인에게 공개합니다. LNURL의 광범위한 채택은 라이트닝 네트워크의 익명성을 손상시킬 것입니다. 웹 서버를 LNURL의 끝점으로 사용하는 대신 사용자는 Nostr 키를 LNURL 트랜잭션의 끝점으로 사용하여 자신의 신원을 숨길 수 있습니다.
CoinJoin의 Nostr
PayJoin은 공동 소유권 휴리스틱을 분석하고 하위 집합화 및 분석을 훌륭하게 수행하는 반면, PayJoin은 발신자와 수신자 모두에게 협력 당사자를 위한 개인 정보 보호 기능을 제공하지 못합니다. PayJoin은 본질적으로 두 명의 참가자로 제한되는 두 당사자 CoinJoin입니다. 즉, 발신자와 수신자 모두 자신의 입력과 출력을 알고 있어 파트너의 입력과 출력을 식별할 수 있습니다. PayJoin을 촉진하기 위해 CoinJoined 거래를 사용하지 않는 한, 사용자는 자신의 지갑 잔액과 과거 및 향후 거래를 PayJoin 파트너에게 공개할 위험이 있습니다.
Wasabi Wallet의 CoinJoin Coordination Protocol(WabiSabi)과 같은 익명 금액 인증서 시스템에서 Nostr 키는 CoinJoin 거래를 조정하기 위한 통신 종점 역할을 할 수 있습니다. 이를 통해 CoinJoin 거래의 발신자와 수신자는 CoinJoin 라운드에 참여하는 데 필요한 자격 증명을 교환할 수 있으므로 CoinJoin에서 별도의 결제 형식을 구현할 수 있습니다. CoinJoins에서 Nostr 키를 엔드포인트로 사용함으로써 파트너는 군중으로부터 숨겨지고 상대방의 잔액과 거래를 인식하지 못합니다. 동시에 Nostr 키를 CoinJoin 거래의 엔드포인트로 사용하면 PayJoin 사용자가 CoinJoin을 통한 결제를 촉진하는 대신 CoinJoin에서 직접 결제하여 수수료를 절약할 수 있습니다.
CoinJoins에서 Nostr의 또 다른 용도는 코디네이터 검색입니다. 대부분의 CoinJoin 코디네이터는 Tor 뒤에서 CoinJoin 참가자의 신원을 숨기는 반면, 사용자는 현재 JoinMarket(고급 CoinJoin 사용자를 위한 CoinJoin 마켓플레이스)을 통하지 않고는 새로운 코디네이터를 쉽게 찾을 수 없습니다. CoinJoin 사용자는 Wasabi Wallet에 사용자 지정 코디네이터를 추가할 수 있지만(백그라운드에서 URL을 교환하는 것처럼 간단함) 게시 플랫폼이 없기 때문에 코디네이터 업데이트 프로세스를 자동화할 수 있는 방법은 없습니다. 따라서 새로운 코디네이터를 찾으려면 사용자가 소셜 미디어 및 포럼(예: Reddit 또는 Twitter)을 수동으로 검색하여 코디네이터를 추가해야 합니다. 그러나 소셜 미디어나 포럼을 통해 중재자 서비스를 게시하면 서비스에 적용되는 정책에 따라 일부 페이지가 쉽게 종료될 수 있으므로 중재자 제공자에게 위험이 발생할 수 있습니다.
Tor가 피어 간의 메시지 익명 전달 및 수신을 용이하게 하는 프로토콜인 익명 릴레이 서버인 경우 Nostr은 익명 게시판 역할을 할 수 있습니다. CoinJoin 코디네이터는 Nostr 이벤트 유형을 통해 서비스를 게시할 수 있으며, CoinJoin 지갑은 이러한 릴레이 서버에서 자동으로 정보를 가져와 클라이언트에 표시하도록 활성화될 수 있습니다. BTCPay의 서버 CoinJoin 플러그인 및 라이트닝 네트워크 기반 CoinJoin 소프트웨어 Vortex에서 제안된 접근 방식과 같은 Nostr을 통한 브로드캐스팅 코디네이터 서버는 CoinJoin 클라이언트에서 CoinJoin 코디네이터를 수동으로 검색하고 추가할 필요성을 제거함으로써 CoinJoin 조정 환경을 더욱 분산시킬 수 있습니다. .
NOSTR을 통해 IP 요구 사항 우회
앞서 언급했듯이 Nostr 프로토콜의 원래 개념은 Diagon Alley라는 완전히 분산된 시장을 구현하는 것이었습니다. Nostr 프로토콜이 발전함에 따라 Diagon Alley는 Nostr을 기본적으로 지원하는 마켓플레이스인 LNbits NostrMarkets의 확장이 되었으며, 이를 통해 판매자와 고객은 릴레이를 통해 온라인 상점을 운영하고 상호 작용할 수 있습니다. NostrMarkets에서 고객은 온라인 상점을 통해 판매자의 웹사이트를 방문하는 대신 판매자의 공개 키를 구독하고 릴레이에서 제품을 얻을 수 있습니다. 이는 판매자가 검열 가능한 웹사이트에 의존하지 않고 오히려 판매자의 상점이 통신하는 모든 릴레이에 의해 호스팅되기 때문에 온라인 상점의 검열 저항을 증가시킵니다. 가맹점 서버가 차단되더라도 모든 상품은 Nostr 네트워크의 릴레이에 저장되기 때문에 쉽게 다른 위치에 매장을 개설할 수 있습니다. NostrMarkets는 암호화된 Nostr 직접 메시지를 통해 주문 및 결제 조정을 처리하며 결제는 라이트닝 네트워크를 통해 이루어집니다.
검열에 저항하는 것 외에도 LNbits의 확장 NostrMarkets은 완전히 익명의 시장을 가능하게 합니다. 판매자와 고객은 자신의 IP 주소를 세상에 노출시키지 않고 자신이 연결된 릴레이에만 노출하는데, 이는 Tor 뒤에 클라이언트나 스토어를 실행하면 쉽게 해결할 수 있습니다. Tor 뒤에서 매장을 운영하는 것의 이점은 Tor 브라우저와 .onion 웹 페이지를 통해서만 매장에 액세스할 수 있고 NostrMarkets은 모든 웹 브라우저나 스마트폰에서 실행될 수 있어 개인 정보를 보호하는 클라이언트-서버 통신을 통해 사용자 경험을 향상시킬 수 있다는 것입니다. 결제는 암호화된 Nostr 다이렉트 메시지를 통해 협상되고 라이트닝 네트워크를 통해 구현되므로 상점의 라이트닝 노드가 Tor에서 실행되는 한 NostrMarkets의 결제는 상대적으로 비공개로 유지됩니다. 결제 조정 다이렉트 메시지는 Nostr의 다른 다이렉트 메시지와 결합할 수 없기 때문입니다. 구별하다.
서버-클라이언트 통신에서 IP 주소 요구 사항을 우회하는 또 다른 방법은 NOSTREST입니다. REST는 "Representational State Transfer"의 약자로 월드와이드 웹의 소프트웨어 아키텍처의 일부이며 GET, POST, PUT, DELETE 및 PATCH 요청을 통해 서버와 클라이언트 간 통신에 사용됩니다. 그러나 클라이언트가 서버에 REST 요청을 보내면 IP 주소가 노출되어 개인 식별 정보가 노출될 가능성이 있습니다. GitHub에서 __escapee__는 NostrEST라는 Nostr 기반 REST API 브리지를 제안했습니다. 인증 헤더 없이 Nostr 키를 사용함으로써 사용자와 서버 운영자는 서로의 IP 주소를 알 필요가 없습니다. 따라서 NOSTREST를 구현하면 서버가 클라이언트의 IP 주소를 요구하지 않기 때문에 REST를 사용하는 비트코인 애플리케이션의 개인 정보 보호를 향상할 수 있습니다.
한 가지 예로 익명 금액 증명서 시스템인 관리형 Chaumian e-cash mint를 운영할 수 있습니다. 전자현금 조폐국에서 조폐국 운영자는 사용자의 잔액이나 교환 가치를 알지 못합니다. 그러나 현재 REST 아키텍처로 인해 기본적으로 Tor 뒤에서 실행되지 않는 한(예: e-cash 시스템 Cashu) 사용자의 IP 주소를 학습합니다. 그러나 Tor 지원을 구현하고 관리하는 것은 번거롭습니다. NOSTREST 브리지를 사용하면 프로젝트에서 사용자 개인 정보를 쉽게 보호할 수 있습니다. Tor 뒤에서 e-cash mint를 실행하고 NOSTREST를 사용하여 서버와 클라이언트 간 통신을 수행함으로써 비동기 통신이 가능하며, 서버 운영자와 사용자는 서로의 공개 키만 알 수 있으므로 IP 위험에 의한 식별이 필요하지 않습니다.






