첫 번째 라이트닝 네트워크 “토치 릴레이”는 2019년 1월 19일에 시작되어 2층 비트코인 결제 프로토콜의 채택을 확산했습니다. 2019년 4월에 종료되었을 때, 278명의 참가자와 56개국이 방문했습니다. 1년 후, 토치의 창시자인 호들로나트가 2020년 1월 19일에 릴레이를 다시 시작했습니다. 그러나 며칠 후, 새로운 토치의 반복이 다르다는 것이 분명해졌고, 높은 비율의 토치가 도난당하고 체인이 “취소”되는 것으로 끝났습니다. 이는 2019년 버전에서 토치를 기꺼이 수락한 트위터 CEO 잭 도르시에게 tippin.me를 통해 금액을 보내면서 발생했습니다.
체인이 트위터 게시물을 통해 전파된 방식 때문에, 라이트닝 네트워크 “신뢰 체인” (#LNTrustchain2)의 경로는 다소 쉽게 추적할 수 있으며, 특정 결제 요청(청구서)에 대한 데이터는 공개적으로 제공됩니다. 따라서 이는 라이트닝 네트워크 채택의 소비자 관련 측면에 대한 많은 통찰력을 제공할 수 있습니다. 어떤 클라이언트 에이전트가 가장 자주 사용되고 있나요? 어떤 모바일 지갑 서비스가 있나요? 관리형 지갑이 우세한가요?
#LNTrustchain2를 따르는 것은 라이트닝 네트워크의 채택을 측정할 수 있는 완벽한 기회를 제공합니다. 전 세계의 다양한 직업을 가진 사용자들이 결제 요청을 공개적으로 트위터에 게시하는 이와 같은 글로벌 규모의 다른 이벤트는 무엇이 있을까요?
블록체인 분석가로서, 저는 비트코인과 라이트닝 네트워크의 익명성 측면에 대한 지식을 확산하고자 하는 전문적인 호기심과 내부적인 충동에 의해 동기부여를 받았습니다. 이 기사에서 제공된 여러 예시는 특정 솔루션의 개인 정보 보호 결함에 대한 공공 지식을 확장하기 위해 특별히 선택되었습니다.
이 시리즈의 1부에서는 제가 수집한 데이터의 개요를 다루고 데이터 세트를 수집하는 방법론을 설명할 것입니다. 그런 다음 주로 관리형 서비스를 조사하면서 모바일 지갑에 초점을 맞추고, Phoenix와 Breez를 포함한 새로운 지갑의 진화 가능성도 보여줄 것입니다.
방법론에 대한 몇 가지 메모
저는 모든 참가자와 그들의 결제 요청 또는 “청구서”를 수집하는 것으로 연구를 시작했습니다. 159명의 참가자 중 19명은 DM에서 거래를 하거나 결제 요청을 삭제했기 때문에 그들의 결제 요청은 보이지 않았습니다. 이는 연구자(저와 같은)가 그들의 데이터를 분석할 수 없기 때문에 그들의 개인 정보 보호에 좋습니다.
모든 라이트닝 네트워크 결제 요청에는 소유자의 노드를 가리키는 “node_id” 필드가 있습니다. 이것이 왜 중요할까요? 현재로서는 개인 노드 설정을 고려해 보겠습니다. 이는 어떤 종류의 가상 사설 서버(VPS)에서나 가정 환경을 통해 이루어질 수 있으며, 주로 플러그 앤 플레이 노드(CASA, Nodl), Raspberry Pi 노드 또는 데스크톱 노드(Zap)의 형태로 이루어집니다.
사용자의 설정이 Tor(오니온 라우터)를 통해 실행되지 않는 경우, 청구서를 공개적으로 게시하는 행위만으로도 적대적인 주체가 노드의 IP 주소를 알 수 있는 수단을 제공할 수 있습니다. TOR가 활성화되어 있든 아니든, 공격자는 노드 ID를 사용하여 노드 소유자가 연 노드의 모든 공개 채널과 해당 비트코인 주소를 수집할 수 있습니다. 블록체인 분석 도구인 일반 입력 클러스터링을 사용하면, 단일 공개 청구서만으로도 적대자에게 전체 지갑 잔액이 노출될 수 있습니다.

신뢰 체인2의 140개의 공개적으로 보이는 청구서를 모두 수집하여 모든 지갑 제공자의 도넛 차트를 그릴 수 있었습니다. 전체 지갑의 56% 이상이 모바일 전화에서 사용되었고, 전체 지갑의 48.2%는 관리형으로, Bluewallet, Wallet of Satoshi 또는 Dropbit의 사용과 관련이 있었습니다. 개인 노드는 eclair 모바일이나 개인 라이트닝 네트워크 노드(lnd 또는 c-lightning)를 통해 사용된 전체 지갑의 44%를 차지했습니다.
관리형 서비스: 이 혼란 속에도 방법이 있습니다!
안드레아스 안토노풀로스는 “너의 키가 아니면, 너의 비트코인이 아니다”라고 유명하게 말합니다. 마찬가지로 라이트닝 네트워크의 경우, 이 격언은 “너의 노드가 아니면, 너의 사츠가 아니다.” 비트코인에 관해서는, 2020년에는 최악의 비트코인 지갑조차도 사용자에게 지갑 시드를 백업할 기회를 제공합니다. 이는 코인의 소유권 측면에서 중요합니다. 예를 들어, 중앙 집중식 지갑 제공자가 다운되면, 사용자의 키와 비트코인이 함께 사라질 것입니다.
라이트닝 네트워크도 마찬가지입니다. 2020년 토치 릴레이에서 사용된 지갑의 대다수는 Wallet of Satoshi, Bluewallet 또는 Dropbit과 관련된 관리형 서비스였습니다. 청구서를 해독함으로써 우리는 이 세 가지 소프트웨어 제공자 중 하나가 소유한 수신자의 노드 ID를 얻을 수 있습니다.
관리형 라이트닝 네트워크 지갑은 사용자들이 라이트닝 네트워크 레이어에서 상호작용할 수 있도록 자체 노드 인프라를 사용합니다(일반적으로 비트코인 온체인 측면에서는 비관리형입니다). 전체 지갑 사용자 인터페이스(UI)는 중앙 집중식 SQL 데이터베이스에서 라이트닝 네트워크 결제를 처리하는 레이어에 불과합니다. 이러한 지갑을 사용하는 것은 지갑 제공자가 관리하는 잔액 장부에 IOU(채무 증서)를 작성하는 것과 비슷합니다. 모든 관리형 지갑은 자체 노드 인프라(일반적으로 단일 노드)를 완전히 관리하므로, 모든 LN 관련 작업: 채널 열기/닫기, 결제 요청, 결제 전송은 사용자를 대신하여 수행됩니다. 결제 요청에서 볼 수 있는 노드 ID를 알면 지갑 제공자(Wallet of Satoshi, Bluewallet 또는 Dropbit)를 가리킬 수 있습니다.
그들의 노드가 손상되거나 서비스가 중단된다면 어떻게 될까요? 결과는 쉽게 예측할 수 있습니다 — 고객의 자금 손실입니다. (Dropbit 앱은 작성 시점에 이미 어려운 상황에 처해 있습니다.)
관리형 서비스를 사용하는 것은 몇 가지 장점이 있지만, 이러한 장점 중 일부는 비관리형 설정(개인 채널을 통해)에서도 달성할 수 있습니다. 이러한 장점은 식별할 수 없는 채널 및 위치 데이터와 관련이 있습니다. 관리형 지갑은 모든 사용자에게 자신의 노드를 사용하므로, 이러한 사용자들은 IP 주소를 보호하는 것에 대해 걱정할 필요가 없거나 비트코인 보유를 실수로 비공개로 만드는 것에 대해 두려워할 필요가 없습니다.
다행히도, 관리형 서비스가 이러한 우려에 대한 답이 될 필요는 없습니다. 라이트닝 네트워크 프로토콜(BOLTs)에 지속적으로 추가되는 새로운 기능 덕분에 새로운 종류의 라이트닝 네트워크 지갑이 등장했습니다.
비관리형 모바일 지갑: 익명성과 보안
개인 라이트닝 네트워크 모바일 지갑을 운영하기 위한 완벽한 시나리오는 지갑 제공자의 노드에 대한 개인 채널이 열려 있는 내장 노드를 갖는 것입니다. 장치에 자신의 노드를 두는 것은 자가 관리의 중요한 요소입니다. 이웃 노드(지갑 제공자의 노드에 중점을 두어야 함)가 다운되더라도, 노드 소유자는 이 채널을 강제로 닫아 잠긴 자금을 반환할 수 있습니다. 이는 당사자들이 상태에 대해 동의하지 않거나 한 당사자가 오프라인 상태일 때 채널을 닫는 제안된 솔루션입니다.
노드 소유자의 비트코인 주소를 비공개로 만드는 것은 어떻게 될까요? Breez 지갑과 Phoenix는 사용자들이 노드에만 채널을 생성할 수 있는 “교묘한” 기능을 제공합니다. 그리고 이러한 채널은 단순한 “정상” 라이트닝 네트워크 결제 채널이 아닙니다 — 이들은 “비공식” 채널입니다. 이들은 라이트닝 네트워크 프로토콜에 의해 “전파”되지 않으며, 일반적으로 말하자면, 그 존재가 네트워크의 나머지에 발표되지 않습니다. 비트코인 레이어에서 커밋 거래를 게시하는 것과 관련된 활동조차도 결정적이지 않으며, 잠재적인 적대자에게 어떤 커밋 거래가 발생했는지에 대한 의구심을 남깁니다.
이 기능의 핵심은 Breez 또는 Phoenix의 사용자 앨리스(Alice)를 상상함으로써 더 잘 설명될 수 있습니다. 앨리스는 토치 결제를 받으려고 하므로, 이전 트윗 아래에 결제 요청(청구서)을 게시합니다. 밥(Bob)은 그녀의 청구서를 보고 토치를 보내기로 결정합니다. 요청을 해독하면서, 그는 앨리스의 노드 ID와 지갑 제공자의 해당 노드 ID가 포함된 추가 페이로드인 “라우팅 힌트”를 봅니다. 결제를 보내는 행위는 자금을 앨리스의 노드의 한 홉 이웃인 지갑 제공자의 노드를 통해 라우팅하며, 비공식 경로를 알고 있습니다.
우리가 어떤 라이트닝 네트워크 탐색기에서 앨리스의 노드를 ID로 검색한다면 어떻게 될까요? 결과는 존재하지 않을 것입니다. 왜냐하면 그녀의 노드는 네트워크의 나머지에 보이지 않기 때문입니다.
지금까지 우리는 #LNTrustchain2 운동에서 수집된 데이터를 탐색하고 연구의 동기를 설명했습니다. 관리형과 비관리형 라이트닝 지갑 사이에 경계가 그려졌으며, 특정 방식으로 라이트닝 네트워크 인프라에 접근하는 것이 위험할 수 있는 이유가 설명되었습니다.
2부에서는 개인 노드 인스턴스의 개인 정보 보호를 살펴보고, 라이트닝 네트워크를 사용할 때 익명성을 유지하기 위한 조치에 대한 조언으로 시리즈를 마무리할 것입니다.
감사의 말:
저자는 Jarret Dyrbye에게 기사와 수집된 데이터 세트에 대한 유용한 의견에 감사드립니다. 수집된 모든 데이터와 결과는 블록체인 분석의 일부로, 최종 결과는 확률적이며 출처에 대해 수행된 분석 유형과 관련이 있습니다.
이 글은 토니 사낙의 기고입니다. 표현된 견해는 그의 것이며 반드시 Bitcoin Magazine 또는 BTC Inc.의 견해를 반영하지는 않습니다.