스마트폰만을 사용하는 사람들과 모바일 인터넷 접근이 비싸고, 느리며, 신뢰할 수 없거나 검열되는 지역에 사는 사람들을 위해 비트코인 생태계를 강화할 필요가 있다. 세네갈의 비트코인 개발자 포데 디옵은 많은 지역이 단순히 “모바일 우선”이 아니라 “모바일 전용”이라고 강조했다.
사용자가 거래 서명을 위한 개인 키를 유지할 수 있도록 하면서도 완전한 비트코인 노드로 작동하지 않는 모바일 지갑 앱은 일반적으로 “라이트” 클라이언트라고 불린다. 라이트 클라이언트는 필요한 메모리, 지속 저장소 및 통신 대역폭을 줄이기 위해 개인 정보 보호 및 신뢰 최소화에 대한 절충을 한다. 이 기사는 모바일 전화에서 실행되는 라이트 클라이언트 지갑이 사용하는 대역폭을 최소화하는 방법에 초점을 맞춘다.
라이트 클라이언트는 전체 비트코인 블록체인을 다운로드하지 않기 때문에 전체 노드보다 대역폭 요구 사항이 훨씬 낮다. 대신 라이트 클라이언트는 거래를 확인하기 위해 “간단한 지불 확인”(SPV)의 형태를 사용한다. SPV 지갑은 비트코인의 원장에 추가된 모든 거래의 유효성을 직접 확인하는 대신, 지갑과 관련된 특정 거래가 블록에 추가되었고 이 블록이 가장 많은 작업으로 보호되는 블록 체인의 일부임을 확인한다. SPV 지갑은 정직한 채굴자들이 비트코인의 합의 규칙을 따르는 거래로 블록체인을 확장하기 위해서만 작업을 기여할 것이라고 가정하지만 이를 검증하지는 않는다.
이 기술적 논의에서는 제한된 인터넷 연결로 작동하도록 설계된 라이트 클라이언트의 대역폭 요구 사항과 미세한 보안 및 개인 정보 보호 절충을 살펴본다.
라이트 클라이언트의 절충
사용자에게 가장 안전한 솔루션은 자신의 비트코인 전체 노드를 실행하고 결제를 확인하는 것이다. 그러나 사람들이 상대적으로 비싸거나 신뢰할 수 없는 유선 인터넷 연결에 의존하는 국가와 비트코인의 검열 저항이 가장 필요한 국가 간에는 어느 정도 상관관계가 있다. 세계의 많은 지역에서 비트코인 사용자는 대역폭 비용 때문에 온라인 수탁 비트코인 지갑을 사용할 수밖에 없다. 저대역폭의 모바일 전용 라이트 클라이언트를 사용하는 것은 결국 전용 전체 노드를 운영하기 위한 중간 단계로 작용할 수 있다.
수탁 비트코인 거래소의 장점은 사용자 개인 정보 및 자금에 대한 위험이 PayPal 및 Western Union과 같은 다른 신뢰할 수 있는 결제 제공업체의 위험과 매우 유사하다는 것이다. 라이트 클라이언트 지갑은 익명 공개 노드 및 복잡한 피어 투 피어 프로토콜을 사용할 때 발생하는 보안 및 개인 정보 보호 절충에 대한 보다 미묘한 이해가 필요하다.
라이트 클라이언트가 비트코인 네트워크에 일반적으로 해를 끼칠 수 있다는 주장도 있다. 더 많은 사람들이 라이트 클라이언트를 실행함에 따라 이들을 서비스하는 공개 전체 노드의 대역폭 및 계산 요구 사항이 증가한다. 이는 특히 라이트 클라이언트에 정보를 제공하는 공개 전체 노드의 수를 감소시킬 수 있다. 모든 라이트 클라이언트가 소수의 공개 전체 노드에 의존하게 되면, 이러한 전체 노드가 그들에 대해 음모를 꾸밀 경우 보안 및 개인 정보가 손상될 수 있다.
우리는 라이트 클라이언트가 다른 라이트 클라이언트와 직접 데이터를 교환할 경우 비트코인 네트워크에 미치는 영향을 최소화할 수 있다고 믿는다. 라이트 클라이언트의 확산은 결국 특히 연결이 더 비싸고 개인용 컴퓨터가 널리 사용되지 않는 개발도상국에서 더 많은 사용자가 전체 노드를 운영하게 만들 것이다.
네트워크 계층
라이트 클라이언트는 비트코인 전체 노드와 동일한 네트워크 프로토콜 계층을 지원해야 한다. 두 클라이언트 모두 초기 비트코인 노드 세트와 직접 통신하는 것으로 시작한다. 이러한 초기 노드에서 그들은 비트코인 네트워크의 일부인 다른 노드의 주소를 교환한다.
라이트 클라이언트와 전체 노드는 모두 피어로부터 작업 증명에 대해 배우고 대체 블록체인 팁을 제네시스 블록에 연결해야 한다. 전체 노드는 거래에 대한 정보를 공유하는 방식에서 라이트 클라이언트와 주로 다르다. 전체 노드는 블록의 거래에 대한 정보를 교환하고 새로운 블록이 비트코인의 합의 규칙을 따르는지 독립적으로 검증한다. 라이트 클라이언트는 전체 노드가 확인한 블록에 특정 거래가 존재하는지만 확인한다.
연결성
전체 노드에 일반적으로 사용되는 고정 비용 유선 인터넷 연결과 달리, 모바일 전화는 대량의 데이터를 전송하는 데 비용이 많이 드는 미터링된 인터넷 연결을 사용한다. 모바일 전화는 또한 배터리로 작동하며, 데이터 전송 시 배터리가 더 빨리 소모된다. 그들은 고정 위성 접시나 대형 라디오 안테나가 필요한 방송 데이터 피드를 직접 활용할 수 없다.
모바일 장치는 고정 전원 및 데이터 연결을 가진 노드보다 일부 회복력 및 개인 정보 보호 장점을 가지고 있다. 그들은 오프 그리드에서 또는 정전 중에도 작동할 수 있으며, 일부 지역에서는 사전 결제된 인터넷 구독을 익명으로 구매할 수 있다. 모바일 장치는 이동 중에 임시 네트워크를 통해 다양한 로컬 피어에 연결함으로써 개인 정보 보호 및 검열 저항을 얻을 수 있다.
모바일 전화용으로 제작된 라이트 클라이언트는 사용자가 얼마나 많은 모바일 대역폭을 사용할지 구성할 수 있도록 해야 하며, 데이터 할당이 갱신되거나 만료될 때를 인식해야 한다. 대역폭 집약적인 작업을 위해 블록을 다운로드할 때는 WiFi 핫스팟과 같은 대체 비미터링된 로컬 연결을 기회가 있을 때 활용해야 한다.
피어
전체 노드와 라이트 클라이언트 모두 다양한 정직한 피어 노드에 연결되도록 강력한 피어 발견 프로세스에 의존한다. 비트코인 노드는 처음에 미리 설정된 시드 노드에 연결하지만, “정직한” 비트코인 네트워크에 연결된 상태를 유지하기 위해 항상 새로운 피어를 발견해야 한다. 비트코인 코어 전체 노드 소프트웨어는 악의적인 피어로부터의 이클립스 공격을 완화하고 잘못 행동하는 노드와 연결을 끊기 위한 강력한 휴리스틱을 개발했다. 피어 주소는 각각 30바이트에 불과하므로, 라이트 클라이언트는 전체 노드와 동일한 휴리스틱을 사용하여 여러 피어에 대해 새로운 주소를 자주 쿼리할 수 있다.
정직한 비트코인 네트워크에서 고립되는 것을 방지하는 가장 좋은 방법은 크고 지속적이며 다양한 피어 연결 세트를 유지하는 것이다. 배터리 수명을 유지하기 위해 라이트 클라이언트 소프트웨어는 피어 주소에 대해 수다를 떨거나 다른 작업을 수행하기 위해 모바일 전화를 너무 자주 깨우지 않도록 주의해야 한다. 라이트 클라이언트는 배터리 사용 및 피어 연결 끊김을 최소화하기 위해 동일한 고정 시간 간격으로 피어와 동기화해야 한다.
블록 헤더
전체 노드와 라이트 클라이언트의 보안은 가장 많은 작업으로 보호되는 블록체인의 체인 팁을 발견하는 능력에 달려 있다. 이 과정은 블록체인에 대해 그들이 알고 있는 가장 최근 블록 헤더를 쿼리하는 것으로 시작된다. 노드는 피어와의 쿼리를 통해 그들이 처음으로 어떤 체인 포크가 올바른지에 대해 이견을 가지게 되는 시점을 찾아야 할 수도 있다. 라이트 클라이언트는 수신하는 각 블록 헤더의 작업 증명, 타임스탬프, 머클 루트 및 이전 헤더 블록 해시를 검증하고 잘못된 블록 헤더를 제공하는 피어를 차단해야 한다. 전체 노드도 서비스 거부(DoS) 공격을 방지하기 위해 블록을 다운로드하기 전에 헤더를 검증한다.
정통 체인 팁이 결정되면 라이트 클라이언트는 블록 헤더를 동기화하여 체인 팁이 비트코인 제네시스 블록에 연결되도록 한다 — 약 50MB의 데이터. 느리거나 미터링된 연결을 사용하는 일부 라이트 클라이언트는 처음에 제네시스 블록 대신 체크포인트까지 블록 헤더만 로드할 수 있다. 전체 노드는 항상 모든 블록 헤더를 동기화해야 한다. 사용자는 전체 헤더 체인이 확인될 때까지 결제를 수락하는 것의 위험에 대해 경고받아야 한다. 라이트 클라이언트와 전체 노드는 블록체인이 성장함에 따라 항상 현재의 최상의 블록 헤더 체인을 따르기 위해 각 피어로부터 80바이트 블록 헤더를 다운로드해야 하며 블록 헤더에 대해 여러 피어를 쿼리해야 한다.
현대의 라이트 클라이언트 지갑은 BIP-157 블록 필터를 사용하여 추적하는 거래가 블록에 나타날 때를 감지할 수 있다. 블록 헤더와 마찬가지로, 라이트 클라이언트는 현재 필터 헤더 체인의 팁을 결정하기 위해 피어에 쿼리한다. BIP-157 라이트 클라이언트는 블록 필터 헤더 체인과 동기화하기 위해 블록당 32바이트 블록 필터 헤더를 다운로드한다. 피어 간의 올바른 필터 헤더 체인에 대한 이견이 있을 경우, 라이트 클라이언트는 올바른 체인을 따르는 피어를 결정하기 위해 해당 블록을 다운로드할 수 있다. 라이트 클라이언트는 잘못된 헤더를 포함하는 블록 필터 체인을 무시하고 잘못된 블록 또는 필터 헤더를 제공하는 피어를 블랙리스트에 올려야 한다.
블록 필터는 라이트 클라이언트가 어떤 거래에 관심이 있는지 전체 노드에 누출하지 않기 때문에 폐기된 BIP-37 블룸 필터 시스템보다 더 나은 개인 정보를 제공한다. 블록 필터는 블룸 필터보다 더 잘 확장된다. 블록당 하나의 블록 필터만 생성되기 때문에 전체 노드는 여러 라이트 클라이언트 피어에 서비스를 제공하기 위해 일정한 양의 계산만 필요하다. 라이트 클라이언트 자신도 블록 필터를 중계하고 블록 필터 헤더를 수다를 떨며 각 전체 노드가 지원하는 라이트 클라이언트 피어의 수를 증가시킬 수 있다.
라이트 클라이언트는 관련 거래가 포함될 수 있는 블록에 대한 블록 필터를 최소한으로 필요로 한다. 필터는 블록당 약 15KB이므로, 거래가 확인되는 데 여섯 블록(약 한 시간)이 걸리는 경우, 라이트 클라이언트는 거래가 나타나는 블록을 확인하기 위해 90KB의 필터 데이터를 다운로드해야 한다. 라이트닝 네트워크와 같은 2차 프로토콜의 경우, 거래를 감시하는 기간은 Watchtower가 사용되지 않는 한 무기한 열려 있다. Watchtower는 모바일 장치의 라이트 클라이언트에 특히 유용한데, 이는 오랜 시간 동안 오프라인 상태일 가능성이 높고 대역폭이 제한되기 때문이다.
거래
블록 전용 전체 노드
대역폭 소비를 줄이기 위해 전체 노드는 블록만 다운로드하고 거래에 대해 수다를 떨지 않는 블록 전용 모드를 사용할 수 있도록 구성할 수 있다. 이는 거래를 확인하는 안전하고 개인적인 방법이며 모든 블록이 다운로드되기 때문에 블록 필터가 필요하지 않다. 블록 전용 전체 노드로 작동하는 모바일 클라이언트는 주당 최대 2GB의 다운로드 대역폭이 필요하다. 빠르고 저렴하거나 비미터링된 인터넷을 사용하는 모바일 클라이언트는 이 모드에서 운영하여 전체 노드를 실행하는 보안 및 개인 정보 보호 장점을 얻을 수 있지만, 대역폭이 미터링되거나 배터리 전력이 제한될 때는 라이트 클라이언트 모드를 지원할 수 있다. 모바일 라이트 클라이언트가 기회에 따라 블록 전용 전체 노드로 작동할 수 있는 유연성은 개인용 컴퓨터 사용이 덜 일반적인 국가에서 전체 노드의 수를 증가시키는 데 도움이 될 수 있다. 모바일 블록 전용 전체 노드는 라이트 클라이언트에 블록 필터를 제공할 수 있지만, 자신의 대역폭 사용량을 크게 증가시키지 않는다.
블록 필터 라이트 클라이언트
새로운 BIP-157 블록 필터 시스템은 추적된 거래가 다운로드된 블록 필터 체인에서 감지될 때만 최대 1MB의 스트립 블록을 다운로드한다. 이는 블록 전용 비트코인 전체 노드로 거래를 감시하는 데 필요한 주당 2GB의 대역폭에 비해 큰 개선이다. 다운로드된 블록은 블록 필터를 검증하고 블록 필터 체인을 무효화하며 잘못된 필터를 공유하는 피어와 연결을 끊는 데 사용될 수 있다. 이는 라이트 클라이언트가 잘못된 필터 체인이 전파되는 것을 방지하고 라이트 클라이언트가 서로 필터 정보를 공유하여 전체 노드의 부하를 줄일 수 있는 방법을 만든다. 라이트 클라이언트는 블록 필터를 제공하는 전체 노드뿐만 아니라 최근 블록에 대해 전체 노드 세트를 쿼리할 수 있다. 이는 라이트 클라이언트가 관심 있는 거래에 대한 정보를 누출하는 것을 방지하고 더 큰 전체 노드 세트 간에 부하를 분산시킨다.
BIP-157 블록 필터를 사용하는 라이트 클라이언트는 블록의 모든 거래가 비트코인의 합의 규칙을 준수한다고 독립적으로 확인하지 않지만, 대신 가장 많은 해시 파워로 확인된 체인이 올바른 규칙을 따른다고 가정한다. 이러한 노드는 다른 지출 규칙을 채택하기 위해 공모하는 채굴자의 대다수를 따르도록 속일 수 있다. SegWit2x 논란이 있는 하드 포크와 같은 상황에서, 라이트 클라이언트 사용자는 비트코인 블록체인의 포크에서 잘못된 결제를 수락하도록 잘못 인도될 수 있었다. 저대역폭 라이트 클라이언트 사용자는 또한 채굴자 주도 하드 포크보다 은밀하게 시도하기 쉬운 다양한 이클립스 공격에 더 취약하다. 라이트닝 네트워크와 같은 2차 프로토콜의 사용자도 저비용 시간 지연 공격에 취약할 수 있다.
일렉트럼 라이트 클라이언트
경량 장치에 대한 또 다른 인기 있는 솔루션은 일렉트럼 클라이언트-서버 프로토콜이다. 거래를 확인하기 위해 전체 노드에서 블록 필터와 블록을 다운로드하는 대신, 일렉트럼 라이트 클라이언트 지갑은 특정 거래(고유한 거래 ID로 참조됨)에 대한 작은 머클 증명을 하나 이상의 서버에서 직접 요청한다. 일렉트럼 서버는 각 라이트 클라이언트가 요청한 정확한 거래를 기록할 수 있기 때문에, 클라이언트는 Tor 양파 서비스 또는 유사한 서비스를 사용하여 요청을 익명화하는 것이 중요하다. 현재의 공개 일렉트럼 서버 중 많은 수가 비트코인 거래를 비익명화하기 위한 데이터를 수집하기 위해 개인 체인 감시 회사에 의해 운영될 가능성이 있다. 일렉트럼 서버 모델에 의존하는 추가적인 위험은 서버 운영자가 특정 거래에 대한 증명을 악의적으로 보류(검열)할 수 있다는 것이다. 이는 BIP-157 모델에서는 수행하기 더 어렵다.
현재 공개 일렉트럼 서버의 수는 비트코인 전체 노드보다 훨씬 적지만, 현재 매우 적은 수의 전체 노드가 라이트 클라이언트에 블록 필터를 제공한다. 이는 BIP-157 블록 필터 지원이 이제 비트코인 코어 소프트웨어에 통합되었기 때문에 변경될 것으로 예상된다.
일렉트럼 기반 라이트 클라이언트는 블록 필터 헤더, 블록 필터 또는 거래를 확인하기 위해 스트립된 전체 블록을 다운로드할 필요가 없기 때문에 블록 필터 기반 라이트 클라이언트보다 대역폭이 훨씬 적게 필요하다. 대신 일렉트럼 클라이언트는 각 거래를 확인하기 위해 약 400B의 머클 증명을 요청하기만 하면 된다.
요약
아래 표는 블록 전용 전체 노드, 블록 필터 기반 라이트 클라이언트 및 일렉트럼 기반 라이트 클라이언트가 사용하는 미터링된 데이터 양을 요약한다. 요약에서 볼 수 있듯이, 두 종류의 라이트 클라이언트는 최소한의 블록 전용 전체 노드보다 주당 대역폭을 극적으로 적게 사용한다.
라이트닝
모바일 라이트닝 클라이언트는 위에서 설명한 라이트 클라이언트를 사용하여 라이트닝 채널을 생성, 종료 및 모니터링할 수 있다. 모바일 라이트닝 클라이언트는 네트워크 경로에 대해 수다를 떨 때 사용하는 대역폭을 줄이고 대신 로컬 라우팅을 사용하여 만남이나 트램폴린 라이트닝 노드를 사용할 수 있다. 라이트닝 채널이 비트코인 블록체인에 고정되면 채널에 대한 업데이트는 인터넷 접근이 필요하지 않고 채널 파트너 간의 직접적인 피어 투 피어 데이터 연결만 필요하다. 위반을 감시하기 위한 채널 모니터링은 라이트 클라이언트가 인터넷에 접근할 수 있는 빈도에 맞게 구성할 수 있다. 채널에 대한 자금 거래는 Watchtower 업데이트에 필요한 대역폭이 단일 온체인 거래보다 더 비쌀 경우 주기적으로 재고정/스플라이스할 수 있다. LAN 또는 라디오 연결을 통해 피어와 채널 업데이트 방향을 협상하는 것도 회복력을 높이고 미터링된 인터넷 사용량을 줄이며 개인 정보를 증가시킬 수 있다.
라이트 클라이언트를 사용하는 채널 위반을 모니터링하고 반응하는 레이어 2 프로토콜 사용자들은 시간 지연 또는 범람 및 약탈과 같은 저비용 공격에 더 취약할 수 있다. 라이트 클라이언트는 보류 중인 거래에 대해 수다를 떨지 않기 때문에 위반 거래가 블록에 나타날 때까지 알 수 없다. 라이트 클라이언트는 블록 필터에 대해 소수의 피어에 의존할 경우 이클립스 공격에 더 쉽게 노출될 수 있다.
예시
이 예시에서는 라이트 클라이언트를 사용하여 온체인 및 라이트닝을 통해 비트코인 결제를 송금하고 수신하는 방법을 설명한다:
온체인
거래가 블록체인에서 수신되었음을 확인하기 위해 라이트 클라이언트는 다음 단계를 완료해야 한다:
- 현재 체인 팁에 블록 헤더 동기화
- 현재 체인 팁에 블록 필터 헤더 동기화
- 블록에 포함되도록 전체 노드에 거래 제출
- 전체 노드에 제출된 거래 시점부터 블록 필터 동기화
- 블록 필터가 거래와 일치하면 해당 스트립 블록 다운로드
이 예시에서는 블록 헤더와 블록 필터 헤더가 이미 제네시스 블록으로 동기화되었다고 가정한다. 이는 처음에 50MB의 데이터가 필요하고 그 이후에는 여러 피어로부터 현재 체인 팁과 동기화하기 위해 매주 약 1MB가 필요하다. 일정 시간 오프라인 상태 후 현재 블록체인 팁에 블록 헤더(1) 및 블록 필터 헤더(2)를 재동기화하는 데 필요한 데이터 양은 이 정보가 마지막으로 업데이트된 시점에 따라 달라진다.
특정 거래를 감시하기 위해 블록 필터(4)를 다운로드하는 것은 거래 확인 속도에 따라 다르다. 낮은 거래 수수료를 지불하는 것과 블록 필터를 다운로드하기 위해 더 많은 대역폭을 사용하는 것 사이에는 절충이 있다. 한 시간 분량의 블록 필터는 90KB의 필터 데이터만 다운로드하면 된다. 라이트 클라이언트의 가장 큰 고정 데이터 비용은 그들이 관심 있는 거래와 일치하는 블록 필터에 해당하는 스트립 블록을 다운로드하는 것이다. 이는 거래당 최대 1MB의 블록 데이터를 필요로 한다. 관심 있는 여러 거래가 동일한 블록에 나타나면 단 하나의 블록만 다운로드하면 된다.
비싼 또는 느린 모바일 데이터를 사용하는 사용자도 이 시스템을 통해 거래당 1MB의 데이터와 블록체인에 동기화하기 위해 매주 1MB를 감당할 수 있다면 모바일 전화로 비트코인 거래를 확인할 수 있어야 한다.
“당신의 추정치에 관해서; 구현할 수 있다면 관련성이 있을 것이고 그 경제성이 더 많은 비트코인 사용자를 자산 보관으로 이끌 수 있을 것”이라고 케냐 나이로비의 개발자 에마누엘 은당구라가 말했다. 에마누엘은 만료되지 않는 175MB의 데이터 요금제 또는 주당 500MB의 번들을 나이로비에서 단 0.50달러에 구매할 수 있다고 언급했다. 위의 데이터 추정치를 사용하면, 175MB만으로도 사용자는 50MB 앱을 다운로드하고 블록 헤더를 동기화하며 블록 필터를 사용하여 개인적이고 자산 보관 방식으로 결제를 송금하고 수신할 수 있는 데이터를 가질 수 있다.
라이트닝
라이트닝 노드는 채널을 열고 닫고 채널 위반에 응답하기 위해 위에서 설명한 온체인 단계를 수행해야 한다. 그들은 또한 다음을 위해 인터넷 연결에 접근해야 한다:
- 다음 기술 중 하나를 사용하여 부적절한 채널 종료를 모니터링:
a) 각 채널 업데이트에 대해 Watchtower에 가입하고 약속 제출
b) 라이트닝 채널이 열려 있는 전체 기간 동안 블록 필터 다운로드 - 소스 라우팅을 위한 네트워크 토폴로지 수다 모니터링
- 채널 파트너와 라이트닝 프로토콜 직접 협상
온체인 거래와 달리, 모든 라이트닝 결제를 위해 비트코인 네트워크에 접근할 필요는 없다. 대신 라이트 클라이언트는 채널 상대방이 이전 채널 상태를 사용하여 사기적으로 채널을 강제로 종료하지 않았는지 확인하기 위해 구성 가능한 시간 창(예: 일주일) 내에서 비트코인 피어에 접근해야 한다. 이상적으로는 비미터링된 연결이 가능할 때 채널 상태 모니터링을 수행할 수 있다. 비싼 미터링된 연결만 가능한 상황에서는 Watchtower(6a)를 사용하는 것이 채널 상태 모니터링에 더 우수하다. 그러나 블록체인을 독립적으로 모니터링하지 않는 클라이언트(6b)는 Watchtower가 채널 위반에 반응하지 않으면 자금을 잃을 위험이 있다.
Watchtower(6a)는 피어를 통해 이루어진 라이트닝 결제당 약 500B의 데이터를 Watchtower에 인터넷 게이트웨이를 통해 전송해야 한다. 이는 직접 위반 거래를 모니터링하는 것(6b)보다 훨씬 적으며, 이는 매주 약 15MB의 블록 필터 데이터를 다운로드해야 한다. 채널은 모니터링 창이 만료되기 전에 협력적으로 종료되거나 온체인에서 재고정/스플라이스될 수 있으며, 이는 대역폭이나 Watchtower 구독 비용 측면에서 더 저렴할 수 있다.
네트워크 토폴로지에 대해 수다를 떨기보다는(7) 라이트 클라이언트는 개인 라이트닝 노드를 사용하고 대역폭이 비싼 곳에서는 다른 사람을 위해 결제를 라우팅하지 않아야 한다. 대신 트램폴린 라우팅이나 유사한 점진적 라우팅 기술을 사용해야 한다. 이는 라우팅 개인 정보 보호의 대가로 대역폭 사용량을 줄일 것이다.
채널 업데이트를 실제로 협상하는 데(8) 노드가 만든 결제당 2KB만 필요하다. 채널 업데이트는 인터넷 게이트웨이가 없더라도 동일한 로컬 네트워크의 노드 간에 이루어질 수 있다.
모바일 라이트닝 노드는 온체인에서 생성하거나 종료하는 각 채널에 대해 1MB의 대역폭이 필요하다. 각 채널 업데이트를 협상하는 데 2KB가 필요하고, 각 업데이트를 Watchtower에 등록하는 데 추가로 500B가 필요하거나 블록 필터를 사용하여 블록체인을 직접 모니터링하는 데 매주 15MB가 필요하다.
결론
모바일 라이트 클라이언트는 현재 수탁 비트코인 지갑에 의존하는 비트코인 사용자의 보안을 크게 향상시킬 수 있다. 새로운 블록 필터 기반 라이트 클라이언트는 주당 2MB의 대역폭만으로 온체인 거래를 확인할 수 있도록 해준다.
Watchtower를 사용함으로써 모바일 라이트닝 노드는 현재 온체인 거래보다 더 많은 미터링된 대역폭을 요구하지 않고도 많은 저비용 거래를 수행할 수 있다. 또는 라이트닝 노드는 블록 필터를 사용하여 매주 20MB 미만으로 블록체인을 독립적으로 모니터링할 수 있다.
모바일 라이트 클라이언트는 또한 “모바일 전용” 지역에서 프룬 블록 전용 전체 노드로 작동하기 위해 비미터링된 인터넷 접근을 기회적으로 활용할 수 있다. 우리는 저대역폭 비트코인 라이트 클라이언트에 대한 집중이 자산 보관의 이점을 더 많은 세계에 가져오고 궁극적으로 비트코인 전체 노드의 지리적 다양성을 증가시킬 것이라고 믿는다.
유용한 논의와 이 기사의 초안을 읽어준 카림 헬미와 윌 클락에게 특별히 감사드리며, 이 프로젝트를 추진하도록 격려해준 알레한드로 마차도에게도 감사드립니다.
이 글은 리차드 마이어스의 게스트 포스트입니다. 표현된 의견은 전적으로 그의 것이며 BTC Inc 또는 비트코인 매거진의 의견을 반드시 반영하지는 않습니다.