SuperScalar: 사다리 작성 시간 초과 트리 구조를 위한 Decker-Wattenhofer 채널 팩토리

이 기사는 기계로 번역되었습니다
원문 표시

작성자: ZmnSCPxj

출처: https://delvingbitcoin.org/t/superscalar-laddered-timeout-tree-structured-decker-wattenhofer-factories/1143

소개

우리는 LSP(Lightning Network Service Provider)의 "라스트 마일" 문제를 다음과 같이 정의합니다.

  • 라이트닝 네트워크에서 처음으로 비트코인을 받는 신규 사용자는 "온보드 유동성(영수증 금액)"에 대한 비용을 지불해야 합니다.
    • 유동성 확보와 관련된 블록체인 작업은 사용자당 비용을 낮추기 위해 여러 신규 사용자에게 분할 상환되어야 합니다.

위의 문제 외에도 우리의 솔루션은 다음 조건을 따라야 합니다.

  • 우리는 LSP가 자금을 훔칠 수 없도록 해야 합니다. 즉, 각 최종 사용자가 스스로 정직한 참가자 역할을 할 수 없는 한 "단 한 명의 정직한 참가자"라는 보안 가정을 ​​구현하는 것만으로는 충분하지 않습니다.

  • 블록체인의 합의를 변경할 필요가 없어야 합니다.

    • 비트코인 블록체인 프로토콜은 실제로는 골화되어 있습니다. 4년마다 발생하는 추가 발행의 계획된 반감 비트코인의 수익률의 급격한 증가로 이어지며 이는 비트코인에 대한 관심의 급격한 증가로 이어질 것이기 때문에 대량 신규 사용자가 비트코인에 관심을 가진 주체가 될 것입니다. 비트코인 합의. 이전 사용자 그룹이 합의를 변경하겠다고 확신했을 때 새로운 사용자 그룹이 들어왔고 그들도 동일한 합의 변경에 동의해야 했습니다. 합의 변경이 반감 주기보다 짧은 시간 내에 실제 합의를 얻지 못하면 전혀 발생하지 않을 수 있으며 실제로 프로토콜이 공식화될 수 있습니다(더 작고 다루기 쉬운 변경은 여전히 ​​통과될 수 있지만 다음과 같은 더 복잡한 변경). "언약"은 결코 합의를 얻지 못할 수도 있습니다).
  • LSP가 자금을 재할당해야 하는 경우 소수의 최종 사용자가 오프라인 상태가 되는 상황을 처리할 수 있어야 합니다.

    • 동일한 UTXO를 공유하는 사용자 수가 증가할수록 한 명 이상의 사용자가 오프라인 상태가 될 확률도 상승. 따라서 대량 최종 사용자를 다룰 때 오프라인으로 전환되는 일부 최종 사용자를 처리할 수 있는 능력이 필요합니다.
    • 모바일 단말에서 실행되는 소프트웨어는 Android 또는 iOS의 애플리케이션 알림 메커니즘을 통해 다시 온라인으로 전환될 수 있다는 것이 입증되었습니다. 따라서 실제로 모바일 클라이언트의 온라인 상태는 매우 보장됩니다. 그러나 모바일 장치는 때때로 인터넷 연결이 끊어질 수 있으므로 가동 시간은 모바일이 아닌 장치만큼 좋지 않습니다. 따라서 전체 메커니즘은 여전히 ​​소수의 사용자가 오프라인 상태인 상황에 대처할 수 있어야 합니다.

위의 제약 조건은 Ark 및 BitVM2 브리지를 즉시 배제합니다. 제한 조항이 없다면 둘 다 "적어도 한 명의 정직한 참여자"를 가정하고 있으며, 위의 추론에 따르면 현실적으로 제한 조항이 활성화되지는 않을 것입니다( OP_CTV 제안은 2020년에 대부분 완료되었지만 오늘 기준으로) ( 2024)은 아직 합의를 얻지 못했습니다. 이는 반감 주기를 초과했기 때문에 결코 합의를 얻지 못할 것입니다. SIGHASH_NOINPUT 의 경험은 더 나쁩니다. LSP가 자금을 재할당해야 할 때만 모든 최종 사용자가 동시에 온라인에 있다고 가정하면 둘 다 "적어도 한 명의 정직한 참가자"를 제거할 수 있습니다. 이는 위의 마지막 제약 조건을 위반합니다.

이 기사에서는 실제로 계층적 시간 제한 트리 구조를 갖춘 Decker-Wattenhofer 채널 팩토리인 "SuperScalar"라는 구성을 제안합니다.

공식

먼저, 이 구성을 하나로 묶는 세 가지 모듈 에 대해 (희망적으로) 간략하게 소개하겠습니다.

  1. nSequence 감소에 기반한 Decker-Wattenhofer의 오프체인 업데이트 메커니즘;
  2. "타임아웃 트리", 특히 모든 서명을 사용하여 OP_CTV 시뮬레이션하는 변형을 "타임아웃 서명 트리"라고 부릅니다.
  3. 사다리 쌓기 방법.

이미 익숙한 섹션은 건너뛰셔도 됩니다.

데커-와텐호퍼

Decker-Wattenhofer Decrement nSequence 메커니즘은 모든 상태 변경을 온체인 에 게시할 필요 없이 관심 있는 사용자 그룹이 여러 상태 변경에 동의할 수 있도록 하는 오프체인 암호화폐 시스템입니다. "오프체인" 메커니즘). 이는 Poon-Dryja 메커니즘(번역자 주: 라이트닝 채널 메커니즘)과 매우 유사하게 들리지만 다음과 같은 차이점이 있습니다.

  • 참가자 수:
    • Poon-Dryja 메커니즘은 두 당사자만 참여하도록 엄격히 제한됩니다.
    • Decker-Wattenhofer 감소 nSequence 메커니즘은 원하는 수의 참가자를 수용할 수 있습니다.
  • 상태 변경 횟수:
    • Poon-Dryja 메커니즘은 이론적으로 상태를 무제한으로 업데이트할 수 있습니다(라이트닝 네트워크의 BOLT 사양과 같은 실제 배포에서는 상태 업데이트 횟수가 제한되지만 이 상한은 수십억 단위이므로 무제한이라고 합니다.)
    • Decker-Wattenhofer 감소 nSequence 메커니즘은 더 적은 수의 상태 업데이트를 허용합니다. 단일 체인 구조는 소수의 상태 업데이트(100개 미만, 실제로 각 체인 메커니즘은 4개 또는 2개만 제공할 수 있음)를 제공할 수 있습니다. 표준 제안은 이러한 구성을 여러 개 연결하는 것입니다. 이는 실제로 각 체인 구성에서 발생할 수 있는 상태 변경 수를 곱합니다(예를 들어, 각각 4개의 변경을 허용하는 3개의 구성을 연결한 다음 4 x 4 x 4 = 64개의 변경을 허용합니다) ).
  • 일방적 인출의 규모와 편의성:
    • Poon-Dryja 메커니즘은 일방적으로 종료하려면 하나의 커밋 트랜잭션만 필요하고 자금을 회수하려면 추가 트랜잭션이 필요합니다. 약정 거래 시작과 자금 인출 허용 사이의 지연은 일정합니다.
    • Decker-Wattenhofer 감소 nSequence 메커니즘에서는 일방적인 종료 프로세스를 시작하기 위해 "킥오프" 트랜잭션이 필요하며, 그런 다음 각 계층에는 지연이 있는 추가 트랜잭션이 필요합니다. 허용되는 상태 변경 수를 늘리기 위해 여러 계층의 구조를 연결하면 일방적 종료에 필요한 추가 트랜잭션 수도 증가하므로 필요한 블록 공간은 실제로 O(log N) 입니다. 여기서 N은 가능한 상태 수입니다. 지원되는 상태 변경 횟수가 변경됩니다. 각 수준의 거래에는 자금이 인출될 때까지 다양한 지연이 있습니다.

Decker-Wattenhofer 메커니즘과 Poon-Dryja 메커니즘은 모두 합의 변경 없이 비트코인에서 구현될 수 있습니다.

Poon-Dryja 메커니즘과 마찬가지로 Decker-Wattenhofer 감소 nSequence 메커니즘에는 "자금 조달 지점"으로 온체인 UTXO가 있습니다. 이 출력 지점은 서명 상태 변경의 모든 서명자로 구성된 간단한 n/n 다중 서명 장치입니다.

단일 레이어 Decker-Wattenhofer 감소 nSequence 메커니즘인 경우 트랜잭션은 두 개만 있습니다.

  1. 자금 출력 포인트를 사용하고 n/n 다중 서명 출력을 생성하는 "팝업" 트랜잭션
  2. 팝 트랜잭션의 출력을 소비하고 nSequence 에 의한 특정 상대 시간 잠금이 필요한 "상태" 트랜잭션입니다. 트랜잭션의 출력은 모든 서명자가 만장일치로 동의한 상태입니다.

초기 상태의 경우 "상태" 트랜잭션의 nSequence 는 설계된 최대 상대 시간 잠금입니다. 예를 들어, 4개의 상태 변경을 허용하도록 의도된 설계의 경우 합리적인 초기 상태는 432개 블록의 상대적 시간 잠금입니다.

상태를 변경할 때 모든 서명자가 새 상태에 동의하면 출력 포인트 자금 조달 비용이 들지만 이전 상태 트랜잭션보다 nSequence 상대 시간 잠금이 더 짧은 새 상태 트랜잭션을 생성합니다. 예를 들어 4개의 상태 업데이트를 허용하는 디자인의 경우:

상태 번호 상대 시간 잠금(블록 수) 주목
0 432 초기 상태
1 288
2 144
3 0 최종 상태. 이 인스턴스는 종료만 가능합니다.

이것이 바로 " nSequence 감소" 메커니즘이라고 불리는 이유입니다. 서명자가 새 상태를 승인하려고 할 때마다 새 상태를 나타내는 트랜잭션은 0에 도달할 때까지 더 작은 nSequence 값을 사용합니다.

최신 상태는 항상 상대적인 시간 잠금(이전 상태에 비해)이 짧기 때문에 항상 이전 상태보다 빠르게 확인할 수 있습니다. 이 메커니즘은 블록체인 레이어가 혼잡하지 않다고 가정할 때 최신 상태가 일방적인 종료 시나리오에서 확인되는 트랜잭션이 되도록 보장합니다.

nSequence 와 시간 잠금 간의 차이는 모든 당사자가 혼잡 상황에서도 가장 빠른 상태가 이전 상태보다 한 단계 앞서 확인될 수 있다고 합리적으로 가정할 수 있을 만큼 충분히 커야 합니다. 따라서 위의 예에서 사용된 차이는 144블록입니다.

위에서 언급했듯이 이러한 구조 세트는 "최종 상태"에 도달하기 전에 몇 번만 상태를 업데이트할 수 있습니다. 따라서 Decker-Wattenhofer는 실제 사용에서 이러한 여러 구성을 연결하도록 권장합니다. 전체 체인의 첫 번째 구성에는 서명자의 n개 다중 서명 장치인 출력이 있습니다. 이 출력은 차례로 다음 구성의 입력 역할을 합니다. 마지막 구성에만 전체 시스템의 최신 자금 상태를 나타내는 상태 트랜잭션(여러 출력 포함)이 있습니다.

실제로 이전 구성의 "상태" 트랜잭션은 다음 구성의 "팝" 트랜잭션을 통해 중단됩니다.

연결된 Decker-Wattenhofer 메커니즘은 여러 자리 카운트다운 타이머와 유사합니다. 새로운 상태가 승인될 때마다 체인의 마지막 구성(자금 조달 거래에서 가장 먼 구성)이 카운트다운됩니다. 그러나 마지막 숫자가 0이 된 경우 두 번째부터 마지막 ​​숫자까지 카운트다운하고 마지막 숫자를 가장 큰 nSequence 로 재설정합니다. 마찬가지로, 마지막에서 두 번째 숫자가 0이 되면 마지막에서 세 번째 숫자를 한 번 카운트다운한 다음 후속 숫자를 가장 큰 nSequence 로 재설정합니다. 등.

실제로 체인의 마지막 구성은 상태를 변경할 가능성이 가장 높은 반면(모든 상태 업데이트에 대해 변경) 체인의 첫 번째 구성은 변경될 가능성이 가장 낮습니다.

 Initial state nSequence nSequence +----+------+ +-----+------+ +-----+-----------+funding -->| |n-of-n|-->| 432 |n-of-n|-->| 432 |...state...| +----+------+ +-----+------+ +-----+-----------+ kickoff tx state tx state tx======> nSequence nSequence +----+------+ +-----+------+ +-----+-----------+funding -->| |n-of-n|-->| 432 |n-of-n|-->| 288 |...state...| +----+------+ +-----+------+ +-----+-----------+ kickoff tx state tx state tx======> nSequence nSequence +----+------+ +-----+------+ +-----+-----------+funding -->| |n-of-n|-->| 432 |n-of-n|-->| 144 |...state...| +----+------+ +-----+------+ +-----+-----------+ kickoff tx state tx state tx======> nSequence nSequence +----+------+ +-----+------+ +-----+-----------+funding -->| |n-of-n|-->| 432 |n-of-n|-->| 0 |...state...| +----+------+ +-----+------+ +-----+-----------+ kickoff tx state tx state tx======> nSequence nSequence +----+------+ +-----+------+ +-----+-----------+funding -->| |n-of-n|-->| 288 |n-of-n|-->| 432 |...state...| +----+------+ +-----+------+ +-----+-----------+ kickoff tx state tx state tx

타임아웃 트리

타임아웃 트리는 OP_CTV 트리와 타임아웃을 결합한 메커니즘입니다.

OP_CTV 없으면 변형을 사용할 수 있습니다. 즉, 모든 참가자의 서명을 사용하여 OP_CTV 제한을 적용할 수 있습니다. 이 변형(나는 "타임아웃 서명 트리"라고 부름)이 설명의 핵심입니다. 또한 단일 LSP가 자체 고객에게 이러한 메커니즘을 제공하는 시나리오도 고려했습니다.

시간 초과 서명 트리에서 L 클라이언트 그룹에 라이트닝 채널을 제공할 수 있습니다. 확인된 단일 온체인 UTXO는 다양한 고객에게 열려 있는 여러 채널에 대한 보장을 제공할 수 있습니다.

초기화 단계에서 이 LSP는 먼저 트랜잭션으로 구성된 트리를 생성합니다. 리프가 아닌 노드의 출력에서 ​​해당 하위 트리의 클라이언트는 LSP와 함께 n-of-n 다중 서명 장치를 형성합니다. 이는 표준 트랜잭션 트리 구성이지만 타임아웃 트리에는 대체 지출 조건도 추가됩니다. 즉, LSP는 일정 기간이 지나면 자금을 단독으로 사용할 수 있습니다. 자금 산출 지점에도 동일한 대체 조건이 존재합니다.

예를 들어, LSP L A 부터 H 까지 태그 8개의 클라이언트가 있는 경우 모든 사람이 시간 초과 트리를 형성합니다. 자금 조달 지점에는 다음과 같은 조건이 있습니다(온체인 확인됨).

  1. A & B & ... & H & L
  2. L & CLTV

따라서 전체 트리는 다음과 같습니다.

 +--+---+ | |A&L| LN channel +>| +---+ | | |B&L| LN channel +--+----------+ | +--+---+ | | (A&B&L) |-+ | |or(L&CLTV)| +--+---+ +>| +----------+ | |C&L| LN channel +--+----------+ | | | (C&D&L) |-->| +---+ | |(A&..&D&L)| | | |or(L&CLTV)| | |D&L| LN channel | |or(L&CLTV)|-+ +--+----------+ +--+---+funding-->| +----------+ | |(E&..&H&L)|-+ +--+----------+ +--+---+ | |or(L&CLTV)| | | | (E&F&L) | | |E&L| LN channel +--+----------+ | | |or(L&CLTV)|-->| +---+ +>| +----------+ | |F&L| LN channel | | (G&H&L) | +--+---+ | |or(L&CLTV)|-+ +--+----------+ | +--+---+ | | |G&L| LN channel +>| +---+ | |H&L| LN channel +--+---+

(역자 주: 이 트리는 리프에서 루트까지 볼 수도 있습니다. 각 리프는 LSP와 고객 사이의 라이트닝 채널이며, 리프 노드 위의 각 노드는 아래의 모든 참가자를 위한 다중 서명 장치입니다. LSP 시간 초과 장치).

이 시간 초과 조건은 모든 클라이언트가 시간 초과 전에 다시 온라인 상태가 되도록 강제하고 해당 구성을 종료합니다. 철회는 일방적으로 이루어질 수도 있고 LSP와 협력하여 이루어질 수도 있습니다.

협력 출금의 경우, 클라이언트는 라이트닝 네트워크를 통해 타임아웃 트리에 있는 채널의 모든 자금을 직접 이체할 수 있으며 스왑 서비스를 통해 온체인 자금으로 이체할 수도 있고 새로운 자금으로 이체할 수도 있습니다. 동일한 LSP에서 타임아웃 트리는 다른 LSP로 전달될 수도 있습니다.

일방적 퇴출이란 트리의 루트부터 라이트닝 채널의 출력 경로까지의 모든 거래가 공개된 후 일방적으로 라이트닝 채널(Poon-Dryja 채널로 예상됨)에서 퇴출되는 것을 의미합니다.

트리 구조를 사용하면 일방적인 종료 비용이 상대적으로 적다는 장점이 있습니다. 고객이 종료를 원할 경우 O(log N) 트랜잭션만 발행하면 대부분의 다른 고객이 트리에 머물 수 있습니다. 트리 구조가 없으면 한 고객이 일방적으로 퇴장하면 모든 고객이 일방적으로 퇴장하게 됩니다.

타임아웃 조건의 장점은 모든 고객이 동시에, 가능한 협력적으로 종료하도록 장려하고 LSP는 단 하나의 입력(자금 출력 지점에서 L & CLTV 조건 사용)으로만 트랜잭션을 시작하면 된다는 것입니다. 청소 자금으로 건설할 수 있습니다. 일부 고객도 일방적으로 출금을 원하더라도 각 중간 출력의 L & CLTV 조건을 통해 많은 자금이 출금될 수 있습니다.

계단식

많은 금융 기관이 금융 계약을 제공합니다. 예금자는 일부 자금을 예금할 수 있지만 일정 기간 내에 자금을 인출할 수 없습니다. 만료 후 일부 자금을 인출하고 싶어도 예금자는 원래 자금과 추가 자금을 모두 인출할 수 있습니다. 금액 이자. 이러한 계약은 양도도 불가능합니다. 이러한 계약에는 여러 가지 이름이 있습니다.

  • 예금증명서(미국)
  • 투자 보장 증명서(캐나다)
  • 정기예금(기타국가)

이러한 계약은 앞서 언급한 바와 같이 융통성이 없으므로 만료되기 전에는 자금을 인출할 수 없습니다. 그러나 현명한 투자자들은 만료일을 1개월 또는 1년씩 시차를 두고 이러한 여러 계약에 자신의 이용 가능한 자산을 할당할 것입니다. 이 기술을 "사다리 만들기"라고 합니다.

예를 들어, 투자자는 2024년 12월, 2025년 12월, 2026년 12월에 만료되는 3개의 계약을 보유할 수 있습니다. 첫 번째 계약이 2024년 12월에 만료되면 투자자는 자금 중 일부를 인출하고 남은 자금을 2027년 12월에 만료되는 새 계약에 재투자하거나 더 많은 자금을 추가하여 새 계약에 함께 투자할 수 있습니다. 새로운 계약이 체결되어 사다리 건설이 종료됩니다.

사다리 구축은 투자자에게 사다리의 폭에 따라 월별 또는 연간 단위로 투자 금액을 변경할 수 있는 기능을 제공합니다. 따라서 기본 계약이 유연성이 없더라도 래더링을 통해 투자자는 장기 정기 예금의 장점을 유지하면서 유연성을 회복할 수 있습니다.

SuperScalar 메커니즘

사다리 작성 시간 초과 트리 구조의 Decker-Wattenhofer 채널 팩토리는 위의 세 가지 요소의 조합입니다.

시간 초과 트리 구조를 갖춘 Decker-Wattenhofer 채널 팩토리

먼저 두 가지의 조합을 보여드리겠습니다. 나중에 사다리 만들기 방법을 추가하겠습니다.

LSP L A 부터 H 까지 번호가 매겨진 8명의 고객이 있다고 가정합니다. 따라서 자본 투입 출력 지점에는 다음과 같은 두 가지 지출 조건이 있습니다.

  1. A & B & ... & H & L
  2. L & CLTV

초기화 중에 이 LSP는 고객이 서명할 수 있도록 다음 거래를 준비해야 합니다. 여기서 자금 조달 거래는 n/n 다중 서명 거래( A...HL 로 구성됨)입니다.

 nSequence +---+---+ | |A&L| LN channel | +---+ +-->|432|B&L| LN channel | | +---+ | | | L | | +---+---+ | | +---+---+ | | |C&L| LN channel +--+-----+ | | +---+ nSequence | |A&B&L|-+ +>|432|D&L| LN channel +---+----------+ +>| +-----+ | | +---+ | |(A&..&D&L)| | | |C&D&L|---+ | | L | +--+---------+ | |or(L&CLTV)|-+ +--+-----+ +---+---+funding->| |A&...&H&L|->|432+----------+ +--+---------+ | |(E&..&H&L)|-+ +--+-----+ +---+---+ kickoff tx | |or(L&CLTV)| | | |E&F&L|---+ | |E&L| LN channel +---+----------+ +>| +-----+ | | +---+ state tx | |G&H&L|-+ +>|432|F&L| LN channel +--+-----+ | | +---+ kickoff | | | L | tx | +---+---+ | | +---+---+ | | |G&L| LN channel | | +---+ +-->|432|H&L| LN channel | +---+ | | L | +---+---+ state tx

기본적으로 고객 집합에서 트랜잭션 트리를 구축하는 규칙은 "리프에서 루트까지" 구성 순서를 활용합니다.

  1. 먼저, 고객은 자체 설정된 포크 수(위 예시의 포크 수는 2개)에 따라 리프 노드로 분산됩니다.
    • 이러한 리프 트랜잭션의 출력은 해당 클라이언트에 대한 LSP L 채널이며, L 이 보유하는 추가 출력(추가 자금 금액)이 있습니다.
  2. 리프 노드는 항상 상태 저장 트랜잭션입니다.
    • nSequence 감소하고 있습니다.
  3. 필요한 포크 수에 따라 트리에서 이러한 리프의 부모노드 (Parent node) 설정합니다.
    • 상태 트랜잭션의 상위 트랜잭션은 팝업 트랜잭션입니다.
      • 그들의 출력은 단순히 해당 하위 트랜잭션 소유자의 n-of-n 다중 서명입니다.
    • 팝업 트랜잭션의 상위 트랜잭션은 상태 트랜잭션입니다.
      • 지점 거래 소유자의 n대n 다중 서명 지출 조건 외에도 상태 거래 출력에는 대체 or (L & CLTV) 지출 조건이 있습니다.
      • 상태 저장 트랜잭션에 대한 입력은 nSequence 감소합니다.
  4. 루트 노드를 얻을 때까지 이전 단계를 반복합니다.
  5. 최종 루트 노드가 상태 트랜잭션인 경우 단일 입력, 단일 출력 팝업 트랜잭션을 앞에 추가합니다. 그렇지 않으면 이 루트 노드를 첫 번째 팝업 트랜잭션으로 직접 사용하십시오.
    • 포크 수가 2이고 고객 수가 8인 경우 루트 노드는 팝업 트랜잭션이 됩니다.
    • 예시의 고객 수가 16명으로 증가하면 일방적 퇴출을 위해 게시해야 하는 거래 수는 라이트닝 채널에서 일방적으로 퇴출해야 하는 거래 외에 4개가 됩니다.

트리의 계층구조에서 팝 트랜잭션과 상태 트랜잭션을 혼용하여 사용하는 이유는 뒤에서 설명하기로 한다.

이런, A는 유동성을 예약해야 합니다!

위의 트리 구조에서 A가 자신과 L 사이의 채널에서 컬렉션 할당량을 모두 소진했다고 가정합니다. 그렇다면 L 온체인 거래를 시작하지 않고 어떻게 A 에게 유동성을 제공할 수 있을까요?

LSP는 A & L 채널과 B & L 채널을 포함하는 리프 노드를 업데이트하기 위해 B (더 많은 크레딧을 요청할 때 B A 이미 온라인이라고 가정)만 깨울 수 있습니다. 이 리프 노드에는 A , B , L 의 자금만 포함되어 있으므로 이 세 사람만 온라인 상태이면 됩니다. 따라서 이 메커니즘은 일부 참가자가 오프라인이고 A 추가 수집 할당량이 필요한 상황에 더 잘 대처할 수 있습니다.

물론 B 온라인 상태가 될 수 없다면 LSP는 온체인 트랜잭션을 시작하는 등 다른 방법을 시도해야 합니다. 이로 인해 지불해야 하는 온체인 처리 수수료가 발생할 수 있으며, LSP는 이를 A 에게 청구합니다.

B 다시 온라인 상태가 되었다고 가정합니다. 그러면 L 자체 전용 자금을 사용하여 A & L 의 채널에 자금을 투입할 수 있습니다. 고객이 C...H 필요가 없습니다.

물론, 이 리프에 있는 L 자체 자금이 소비되었거나 이 리프가 최종 상태(즉, nSequence = 0 )에 도달했을 가능성이 있습니다. 이 시점에서 LSP는 트리 위로 이동하고, 더 높은 수준의 상태 트랜잭션을 찾고, 다른 클라이언트를 깨워 다른 잎의 독점 자금을 A 로 전송하고, 해당 수준 아래 노드의 nSequence 재설정할 수 있습니다. 이로 인해 동시에 온라인 상태여야 하는 고객의 수가 늘어나지만 여전히 모든 고객이 온라인 상태일 필요는 없습니다.

실제로 일부 클라이언트의 온보딩 유동성이 부족할 때마다 마지막 상태 트랜잭션이 업데이트될 가능성이 가장 높은 트랜잭션입니다. 그러나 한 리프에 있는 L 독점 자금이 소진된 경우 LSP L 다른 리프에서 A 에 자금을 할당할 수 있도록 상위 수준 상태 트랜잭션을 업데이트해야 합니다.

무슨 일이 일어났는데, A가 그만두고 싶어해요!

A 일방적으로 탈퇴를 결정했다고 가정해보자. 이유는 다양할 수 있습니다. 중요한 것은 LSP의 모든 클라이언트가 일방적으로 종료할 수 있어야 하며 게시해야 하는 트랜잭션 수가 가능한 한 적어야 한다는 것입니다. 이 보증은 LSP가 도망가는 것을 방지하고 사용자의 자율성과 재정적 통제도 보장합니다.

A 퇴출하려면 먼저 A & L 채널의 자본 투입 출력 지점을 확인한 후 표준 Poon-Dryja 채널 일방적 퇴출 절차를 사용하여 완전히 퇴출해야 합니다. 따라서 A 먼저 아래와 같이 트리 루트부터 자신의 채널 투자 출력 지점까지의 거래를 공개해야 합니다.

 nSequence +---+---+ | |A&L| LN channel | +---+ +-->|432|B&L| LN channel | | +---+ | | | L | | +---+---+ | state tx | | +--+-----+ | nSequence | |A&B&L|-+ +---+----------+ +>| +-----+ | |(A&..&D&L)| | | |C&D&L| +--+---------+ | |or(L&CLTV)|-+ +--+-----+funding->| |A&...&H&L|->|432+----------+ kickoff +--+---------+ | |(E&..&H&L)| tx kickoff tx | |or(L&CLTV)| +---+----------+ state tx

그러나 확인된 팝업 트랜잭션의 모든 출력은 확인된 상태 트랜잭션에서 소비되어야 한다는 점에도 유의해야 합니다. 이는 상태 트랜잭션이 모두 nSequence 갖고 있고 시간 잠금에 비해 더 작은 nSequence 가진 트랜잭션은 더 큰 nSequence 가진 트랜잭션보다 먼저 확인되어야 하기 때문입니다. 그렇지 않으면 Decker-Wattenhofer 메커니즘이 무너질 것입니다(이로 인해 이전 상태가 먼저 확인될 수 있습니다).

따라서 A 종료하려는 상황에서는 같은 리프에 있는 클라이언트( B )가 의도치 않게 종료될 뿐만 아니라 상위 상태 트랜잭션의 이웃 CD 도 종료됩니다.

 nSequence +---+---+ | |A&L| LN channel | +---+ +-->|432|B&L| LN channel | | +---+ | | | L | | +---+---+ | | +---+---+ | | |C&L| LN channel +--+-----+ | | +---+ nSequence | |A&B&L|-+ +>|432|D&L| LN channel +---+----------+ +>| +-----+ | | +---+ | |(A&..&D&L)| | | |C&D&L|---+ | | L | +--+---------+ | |or(L&CLTV)|-+ +--+-----+ +---+---+funding->| |A&...&H&L|->|432+----------+ kickoff state tx +--+---------+ | |(E&..&H&L)| tx kickoff tx | |or(L&CLTV)| +---+----------+ state tx

이는 또한 첫 번째 트랜잭션만 "팝업" 트랜잭션인 일반적인 Decker-Wattenhofer 구성과 달리 트리에서 "상태" 트랜잭션과 "팝업" 트랜잭션을 같은 의미로 사용하는 이유를 설명합니다. 일반적인 구조를 모방하면 클라이언트가 종료해야 하는 한 모든 다운스트림 상태 트랜잭션(다른 nSequence 상대 시간 잠금이 있을 수 있음)이 해제되어야 합니다 . 그렇지 않으면 Decker-Wattenhofer 메커니즘이 깨질 리스크. 산재된 "팝업" 트랜잭션은 백엔드 역할을 하여 참가자가 일방적으로 철회할 때 전체 트리 O(N) 이 아닌 O(log N) 트랜잭션만 발행하면 되도록 보장합니다.

이는 팝 트랜잭션의 출력에 타임록 분기 L & CLTV 필요하지 않은 이유이기도 합니다. 팝업 트랜잭션의 출력은 해당 출력의 최신 상태 트랜잭션에서 소비 되어야 하며 상태 트랜잭션에는 이미 타임록 분기가 있습니다.

위의 예에서 B , C , D 여전히 자신의 채널에서 HTLC를 전달할 수 있지만 더 이상 L 로부터 추가 컬렉션 할당량을 저렴하게 구입할 수 없습니다. 대신 L 온체인 유동성을 추가로 연결해야 하므로 비용이 더 많이 듭니다. (즉, 한 참가자의 탈퇴로 인해 모든 참가자가 탈퇴하지는 않지만 일부 다른 참가자는 부분적으로 탈퇴하게 됩니다. "부분적으로"는 해당 채널이 여전히 존재하지만 더 이상 수집 할당량을 얻을 수 없음을 의미합니다. 싸게.)

그러나 E 에서 H 까지의 고객은 여전히 ​​위의 메커니즘을 사용하여 계정 유동성을 구매할 수 있습니다. 왜냐하면 그들이 속한 트리가 온체인 에 게시되지 않았고 여전히 오프체인에서 업데이트될 수 있기 때문입니다. 또한 제한 시간이 끝나려고 할 때 이러한 고객은 라이트닝 네트워크를 통해 협력적인 종료를 시작할 수 있습니다(더 이상 L 과 함께 채널에 자금이 남지 않음). 그러면 L L & CLTV 지점을 통해 청산될 수 있습니다. 주 거래 자금 중 자금이 다시 흐르도록 하세요.

사다리 쌓기 방법

이제 세 번째 요소를 추가합니다.

LSP L 관점 에서 볼 때 위의 메커니즘은 투자입니다. L 의 희망은 다음을 통해 투자 수익을 얻는 것입니다.

  • 라이트닝 네트워크 라우팅 수수료
  • 오프체인에서 유동성을 더 저렴하게 판매
  • 전체 메커니즘을 유지하기 위해 부과되는 처리 수수료

또한, 타임아웃 분기가 존재하기 때문에 LSP는 만료 전에 자금을 쉽게 회수할 수 없습니다.

따라서 타임아웃 트리 구조를 갖춘 Decker-Wattenhofer 인스턴스는 LSP의 관점에서 보면 정기 예금과 매우 유사합니다.

그리고 앞서 언급했듯이, 현명한 투자자들은 자금 배분에 있어 어느 정도 유연성을 얻기 위해 여러 정기 예금 계약을 사용하여 사다리를 구축할 것입니다.

LSP 자체는 전통적인 금융의 정기 예금 사다리처럼 다양한 고객을 대면 하고 다양한 용어를 사용하여 타임아웃 트리 구조로 여러 Decker-Wattenhofer 인스턴스를 실행할 수 있습니다. 인스턴스가 만료되면 LSP는 새 인스턴스를 시작하고 만료되는 인스턴스의 사용자를 새 인스턴스에 가입하도록 초대하고 전송 비용을 청구할 수 있습니다. 그런 다음 이 LSP는 타임아웃 분기를 사용하여 온체인 종료 인스턴스에서 자금을 복구할 수 있습니다. 그는 라우팅 수수료, 판매 크레딧 및 Lightning 채널에 유지되는 새 인스턴스로 이전하는 특권을 통해 수익을 얻습니다.

예를 들어, LSP는 동시에 30개의 Decker-Wattenhofer 공장을 운영할 수 있으며 매일 한 공장이 만료됩니다. 공장이 종료되면 해당 공장의 고객을 새 공장으로 초대할 수 있습니다. 이 LSP는 만료된 공장의 자금을 새로운 공장에 투자하여 새로운 30일 공장을 만들 수 있습니다. 그런 다음 고객은 만료되는 시설에서 새 시설로 자금을 이체할 수도 있습니다. 모든 고객이 만료되는 공장에서 철수하고 계약이 완료되면 이 LSP는 전체 UTXO를 직접 사용할 수 있으며 트랜잭션에는 입력과 출력이 하나만 있습니다.

아래의 구체적인 예에서 LSP는 9개의 타임아웃 트리 Decker-Wattenhofer 팩토리로 구성된 사다리를 구축합니다. 사다리의 각 레벨에는 7일의 "활성 기간"과 2일의 "종료 기간"이 있습니다. 종료 기간 동안 고객은 이틀 동안 건설된 공장 중 하나에 합류하여 자금을 새 공장의 새 채널로 이체할 수 있습니다. 이는 사용자에게 약간의 여유를 제공합니다. 첫날을 놓친 경우에도 둘째 날에 전송할 수 있는 기회가 있습니다. 실제 배포에서는 30일의 활성 기간과 3일의 종료 기간을 사용하는 것이 좋습니다. 따라서 하나의 LSP는 33개의 공장을 동시에 유지해야 합니다. 이상적으로는 하나의 입력과 하나의 출력만 있는 트랜잭션이 매일 발생합니다. 고객이 온라인 상태가 아닌 경우에도 LSP는 트리 루트에서 고객의 출력으로 트랜잭션을 게시해야 하므로 필요한 온체인 늘어납니다. 에 거래가 게시됩니다.

 Legend: ===== Active Period ::::: Dying PeriodDay | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 ===================================:::::::::: <---- each of this a factory ===================================:::::::::: ===================================:::::::::: ===================================:::::::::: ===================================:::::::::: ===================================:::::::::: ===================================:::::::::: ===================================:::::::::: Client can move ^ ===================================:::::::::: funds from first -----------+----^ ===================================:::::::::: factory to either of ^ these two new LSP uses the funds of the factories first factory to build this factory

안타깝게도 제한 사항이 없기 때문에 고객은 LSP가 새 공장을 건설하는 것과 동시에 온라인 상태여야 합니다. 이 시간을 놓치면 종료 기간의 다음 날에 다시 시도해야 하며, 종료 기간의 마지막 날도 놓치면 종료하고 모든 비용을 지불 해야 합니다 . OP_CTV 사용하면 LSP는 고객이 즉시 온라인으로 돌아올 것을 요구하지 않고 선제적으로 새로운 공장에 고객을 추가할 수 있습니다(고객이 언제든지 온라인으로 돌아와야 하는 무제한 조항 상황과 달리 고객은 종료 기간 동안 언제든지 온라인으로 돌아올 수 있습니다). 종료 기간 동안) 온라인에 접속할 특정 시간 ). 그러나 이는 또한 단점이 있습니다. 해당 고객이 새 공장에 합류하는 대신 실제로 그만두면 LSP는 다음 활성 기간에 자금을 잠가야 합니다. 더욱이 고객이 떠났기 때문에 LSP는 TA의 서명을 얻을 수 없습니다. TA의 서명을 활용하여 오프체인에서 자금을 재분배할 수 없습니다. 이는 트리에 있는 인접한 고객에게 영향을 미칩니다(즉, 동일한 트리에 있는 다른 사용자도 LSP로 인해 온북 유동성을 저렴하게 구입할 수 없습니다). 고객이 먼저 트리에 추가되지만 이 고객은 종료되고 더 이상 LSP와 접촉하지 않을 것이라고 가정할 수 있습니다.

정기적으로 오래된 공장에서 새 공장으로 이동해야 한다는 요구 사항은 유동성 비용 가격을 책정하는 데 편리한 흐름을 제공합니다.

종료 기간이 길수록 LSP가 투자해야 하는 추가 자본은 더 많아집니다. 해당 자금에는 수익도 필요하므로 마감 기간을 연장하려면 고객에게 부과되는 수수료가 인상되어야 합니다. 단순한 편의성 대 비용 고려 사항입니다.

고객이 일방적으로 퇴장해야 하는 가능성을 줄이기 위해 LSP는 협조적인 퇴장 서비스를 제공할 수 있습니다. 고객은 공장의 자금을 온체인 자금으로 대체합니다(매우 일반적인 오프체인- 온체인 인 표준 HTLC 사용). 교환). 이를 통해 고객은 일방적인 출구 거래를 발행하지 않고 온체인 나갈 수 있습니다. 일방적인 출구로 인해 더 많은 UTXO가 발행되고 관련 공장이 만료된 후 LSP의 온체인 자금 관리 비용이 증가합니다.

현실적인 고려사항

지금까지 래더 타임아웃 트리 구조에서 Decker-Wattenhofer 채널 팩토리의 개념을 설명했으며 이 메커니즘과 관련된 실제 고려 사항을 살펴보겠습니다.

왜 엘?

이 제안에서 각 리프에는 LSP L 에 고유한 출력이 있으며, 이는 지불 라인이 필요한 고객에게 자금을 동적으로 할당하는 데 사용할 수 있습니다.

이것은 질문을 제기합니다: 이 L 출력을 취소할 수 있습니까?

예를 들어 모든 리프가 채널로만 구성되어 있다고 가정합니다. 따라서 AB 채널 A & LB & L 포함하는 리프 트랜잭션을 갖게 됩니다.

A & L A 의 수집 할당량을 모두 소진했고, B & L 수집 할당량이 있다고 가정합니다. 그런 다음 LSP는 B 가 있는 채널에서 A 가 있는 채널로 자금을 이동할 수 있습니다.

문제는 이것이 인센티브와 호환되지 않는다는 것입니다. B 이 새로운 상태의 서명에 참여할 인센티브가 없습니다. 왜냐하면 그는 가치 있는 것, 즉 수집 금액을 잃게 될 것이기 때문입니다!

AB 모두 양방향으로 라이트닝 결제 건수가 대량 사용자라고 가정합니다. B 추심 할당량을 상실하는 거래에 서명하는 경우, 처음에 나가는 지불의 최고치를 만나고 나중에 들어오는 지불의 최고치를 만나는 한 그는 LSP에서 더 많은 추심 할당량을 구매해야 합니다. A 상태 변경으로 얻을 수 있는 회수 금액을 소진한 경우 LSP는 다른 고객으로부터 더 많은 유동성을 얻기 위해 상위 수준으로 이동해야 합니다. 이를 위해서는 더 많은 고객이 온체인 돌아가야 하며, 이는 또한 이러한 고객 중 일부가 필요에 따라 온라인 상태가 될 수 없는 확률을 증가시키며, 이로 인해 LSP는 B 더 많은 수금 할당량을 얻을 수 있도록 값비싼 온체인 지불을 시작해야 합니다. 분명히 더 높은 지불금도 LSP를 통해 고객에게 전달될 것입니다.

그런 다음 LSP가 B 지불하고 그의 손에 있는 자금을 구매할 수 있다고 제안할 수 있습니다.

문제는 처음에 B LSP로부터 회수 금액을 샀다는 점이다. 유동성을 기록하기 위해 LSP가 B 에게 지급하는 것은 사실상 이미 지급된 상품을 환불하는 것과 같습니다. 상상할 수 있듯이 지불 거절은 항상 나쁜 고객 경험입니다. 유동성 판매자로서 LSP는 모든 판매자가 바라는 것처럼 이상적으로는 판매된 모든 유동성이 환불을 위해 반환되지 않기를 바랄 것입니다.

실제로, 적립된 유동성의 각 단위에 가격이 있고 이 가격이 AB 에 대해 동일한 경우 B 로부터의 환불은 A 로부터의 지불과 정확히 동일합니다. 즉, LSP는 판매 활동으로 돈을 벌 수 있는 방법이 없기 때문에 그러한 메커니즘을 구축할 인센티브가 없습니다. A 로부터 받은 지불금은 B 로부터 동일한 양의 유동성을 구매하는 데 사용됩니다.

LSP가 A 로부터 받은 것보다 적은 금액을 B 지불하여 그 차액을 벌면 B 는 나쁜 경제적 관계에 빠지게 됩니다. B 나중에 유동성을 다시 구매해야 하고 LSP가 동일한 패턴을 따르고 더 높은 가격을 청구하면 B 한 번의 판매와 한 번의 구매로 돈을 잃게 됩니다. 이는 누구도 승리할 수 없는 제로섬 게임이 될 것입니다.

따라서 LSP가 실제로 장부 유동성을 제공할 수 있는 유일한 방법은 사실상 유동성의 "재고"인 전용 출력에 자금을 고정하는 것입니다.

중요한 것은 B 자신이 수집한 금액을 잃을 수 있는 계획에 결코 관여하지 않을 것이라는 점입니다.

또 다른 접근 방식은 LSP가 장부 유동성을 판매하지 않는다는 것입니다. 즉, "LSP는 장부 유동성을 판매하지만 고객에게 라이트닝 네트워크 라우팅 수수료를 청구하지 않습니다" 모델 대신 "LSP가 고객에게 요금을 부과합니다. 0이 아닌 라이트닝 네트워크 라우팅 수수료" 수수료를 부과한 후 유동성을 어디에 할당할지 결정합니다." 후자는 그다지 이상적이지 않습니다. 왜냐하면 고객이 유동성이 필요할 때 항상 LSP보다 더 잘 알고 있다고 가정할 수 있기 때문입니다. 예를 들어 판매자가 프로모션을 할 수도 있고 신제품이 곧 출시될 수도 있습니다. 더 많은 수익이 필요할 것입니다. 또한 이 소식은 LSP에서 지불 한도를 사전에 구매하는 활동에 명확하게 반영될 수 있습니다. 이 경우 이 고객은 트리에 있는 다른 고객이 온라인 상태가 될 때까지 기다릴 수 있습니다.

온라인으로 고객에게 동기를 부여하세요

"판매용 유동 재고"로 전용 L 출력이 있더라도 B 도 온라인 상태여야 하므로 B 도 어느 정도 보상을 받아야 합니다.

가장 직접적인 방법은 참여 과정에서 B LSP가 부과하는 유동성 수수료 중 일부를 A 에게 얻을 수 있는 것입니다.

또한 LSP는 B 에게 직접적으로 약간의 자유 유동성을 제공할 수도 있습니다. 두 가지 방법은 계좌의 유동성도 중요하기 때문에 상당 부분 동일하지만, 이 방법의 장점은 B와 A 모두 온라인 상태인 동안 B 미리 더 많은 유동성을 얻을 수 있다는 것입니다. 나중에 A 오프라인 상태가 되어 B 는 값비싼 온체인 작업을 사용하기 위해 유동성을 입력해야 합니다. 따라서 B 요청하는 대신 지금( A 도 온라인 상태임) 무료 진입 유동성의 작은 부분을 얻는 것을 선호할 것입니다. 나중에 확인하세요( A 당시 오프라인 상태일 수 있음).

고객 그룹화

일부 고객은 하루 중 특정 시간(예: 현지 시간 밤)에 정기적으로 전원을 끌 수 있습니다.

LSP는 고객이 온라인 상태인 시간을 모니터링한 다음 24시간 중 온라인 상태일 가능성이 가장 높은 시간을 기준으로 고객을 그룹화할 수 있습니다. 그런 다음 새 공장에 대한 거래 트리를 구성할 때 LSP는 유사한 "가장 활동적인 기간"을 가진 고객을 동일한 리프와 인접한 리프로 그룹화할 수 있습니다.

이는 고객이 지불 금액을 필요로 할 때 동일한 리프에 있는 다른 고객이 온라인 상태일 확률을 증가시킵니다. 리프 노드가 L 독점 자금을 소진한 경우에도 인접한 리프에 있는 고객이 온라인 상태일 가능성이 더 높습니다.

즉, LSP가 전 세계에 고객을 보유하고 있는 경우 인접한 시간대에 있는 고객이 동시에 온라인 상태일 가능성이 높기 때문에 시간대별로 그룹화하는 것이 유리합니다.

트리 구성 및 포크 번호 선택

리프 노드에 대한 최적의 포크 수는 2입니다. 이는 리프를 업데이트하려면 리프에 있는 두 클라이언트와 LSP 자체 등 세 명의 참가자만 온라인 상태이면 되기 때문입니다. 이렇게 하면 상태 업데이트가 더욱 안정적으로 이루어집니다.

팝업 트랜잭션의 포크 수는 1로 설정할 수 있습니다. 팝업 거래의 출력은 모두 소비되어야 하기 때문에(팝업 거래가 블록에 의해 확정된 경우) 고객이 일방적으로 탈퇴할 경우 영향을 받는 고객의 수가 줄어듭니다. 또한 리프 노드에 L 독점 자금이 부족할 때 깨어나야 하는 클라이언트 수를 줄입니다.

불행하게도 포크 수가 적다는 것은 나무 높이가 더 크다는 것을 의미합니다.

  • 트리 높이가 클수록 일방적인 종료의 경우 더 많은 트랜잭션을 게시해야 함을 의미합니다.
  • 트리 높이가 크다는 것은 일방적인 인출의 경우 자금이 인출되기 전에 더 긴 nSequence 상대 시간 잠금을 거쳐야 함을 의미합니다.
    • 여기서 상대 시간 잠금은 클라이언트에서 종료되는 HTLC가 최종 CLTV 델타 하한(BOLT11의 min_final_cltv_expiry_delta )을 해당 채널을 노출함으로써 경험할 수 있는 최대 nSequence 지연보다 높게, 클라이언트가 생각하는 것보다 높게 설정하도록 강제합니다. “안전하게” 자금을 상환하는 것이 지연됩니다. 따라서 nSequqnce 확인하는 것이 매우 중요합니다. 왜냐하면 이 지연은 보류 중인 HTLC에 자금을 고정하고 공용 네트워크의 용량을 줄이기 위해 공용 네트워크의 HTLC에 대한 최대 지연도 결정하기 때문입니다.

이러한 문제를 완화하려면:

  • 나뭇잎에 인접한 레벨에서는 더 적은 수의 포크를 사용하고, 더 높은 레벨에서는 더 많은 수의 포크를 사용하십시오.
    • 어떤 경우에도 리프 노드가 더 이상 고객에게 추가 유입 유동성을 제공할 수 없는 경우 LSP는 항상 "이전 수준으로 돌아가" 더 많은 고객을 깨울 것입니다.
    • "이전 수준으로 돌아간다"는 것은 노드의 포크 수에 비례하여 온라인 상태가 필요한 고객 수가 두 배로 증가한다는 의미입니다.
    • 깨워야 할 그룹이 충분히 크다면 그들이 모두 온라인 상태일 확률은 너무 낮아서 그룹 크기를 두 배 또는 네 배로 늘려도 아무런 차이가 없습니다. 왜냐하면 그들이 모두 온라인 상태일 확률은 이미 매우 높기 때문입니다. , 너무 낮아서 이 메커니즘을 사용하지 않고 정직하게 온체인 돌아갈 수 있습니다.
  • 리프에서 몇 개의 레이어를 지나면 상태 저장 트랜잭션을 완전히 제거할 수 있습니다(즉, nSequence 감소하는 트랜잭션). 실제로 이는 루트 타임아웃 서명 트리 출력을 사용하여 Decker-Wattenhofer 팩토리의 다중 타임아웃 트리 구조를 보호한 다음 클라이언트의 실제 채널을 보호하는 것으로 변합니다.
    • 마찬가지로, LSP가 "이전 레벨로 돌아가서" 리프에서 1~2레벨의 상태 트랜잭션을 추적해야 한다면 깨어나야 할 클라이언트가 너무 많아 온라인 상태가 될 가능성이 거의 없습니다. 따라서 동시에 일방적인 종료 지연을 줄이기 위해 더 적은 수의 상태 트랜잭션 수준을 사용하여 업데이트할 수도 있습니다.
    • 비상태 트랜잭션에는 상대 시간 잠금이 없으므로 종료 시 추가 지연이 발생하지 않습니다.
  • LSP는 온라인 시간이 더 높은 고객을 그룹화하여 더 많은 수의 포크가 있는 노드에 배치할 수 있습니다.
    • 이러한 고객은 더 나은 서비스를 받을 수 있으며(온라인 시간이 더 긴 다른 고객과 그룹화되므로 같은 그룹에 있는 사람들이 유동성을 입금해야 할 때 온라인에 있을 가능성이 더 높음) 일방적인 인출이 더 저렴하고 빠릅니다(더 높음). 포크 번호는 트리 높이가 낮다는 것을 의미하며, 이는 게시해야 하는 트랜잭션 수가 적다는 것을 의미합니다.
    • 온라인 시간이 짧은 고객과 신규 고객은 포크 번호 2와 1을 사용하여 더 많은 노드를 얻게 되므로 일방적인 종료 비용은 더 커지지만 인접한 고객이 오프라인으로 전환되는 영향으로부터 더 잘 격리됩니다.

(위에)

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
즐겨찾기에 추가
코멘트