[논문 리뷰] Flash: An Asynchronous Payment System with Good-Case Linear Communication Complexity
Flash는 이중지급을 방지하고 거래 의존성을 추적하는 DAG 유사 구조인 블록레이스를 사용하여 신뢰할 수 있는 브로드캐스트를 대체함으로써, 비잔틴 결함이 적거나 존재하지 않을 경우 각 지급에 대해 O(n)의 통신 복잡도를 달성하는 새로운 이방식 지ay금 시스템이다. 이는 최악의 경우 O(n²)의 하한선을 충족시키며, 비잔틴 결함에 저항하는 이방식 지급 시스템에서 최초로 선형-좋은 케이스, 제곱-최악 케이스 성능을 실현한다.
While the original purpose of blockchains was to realize a payment system, it has been shown that, in fact, such systems do not require consensus and can be implemented deterministically in asynchronous networks. State-of-the-art payment systems employ Reliable Broadcast to disseminate payments and prevent double spending, which entails O(n^2) communication complexity per payment even if Byzantine behavior is scarce or non-existent. Here we present Flash, the first payment system to achieve $O(n)$ communication complexity per payment in the good case and $O(n^2)$ complexity in the worst-case, matching the lower bound. This is made possible by sidestepping Reliable Broadcast and instead using the blocklace -- a DAG-like partially-ordered generalization of the blockchain -- for the tasks of recording transaction dependencies, block dissemination, and equivocation exclusion, which in turn prevents doublespending. Flash has two variants: for high congestion when multiple blocks that contain multiple payments are issued concurrently; and for low congestion when payments are infrequent.
연구 동기 및 목표
- 비잔틴 행동이 존재하지 않더라도 각 지급에 대해 O(n²)의 통신 복잡도를 유발하는 기존 지급 시스템의 비효율성을 해결한다.
- 합의 또는 신뢰할 수 있는 브로드캐스트에 의존하지 않고도 이방식 네트워크에서 보안성과 일관성을 유지하는 지급 시스템을 설계한다.
- 최적의 통신 복잡도를 달성한다: 좋은 경우 O(n) (비잔틴 결함이 적거나 없을 때), 최악의 경우 O(n²)이며, 알려진 하한선을 충족시킨다.
- 두 가지 운영 모드를 제공한다: 희박한 지연이 발생하는 환경을 위한 모드와 동시 지급이 빈번한 고지연 환경을 위한 모드.
- 기존의 총순서와 신뢰할 수 있는 브로드캐스트 메커니즘을 대체하는 새로운 블록레이스 구조를 통해 거래의 최종성(finality)을 보장한다.
제안 방법
- 거래 의존성과 블록 관계를 기록하기 위해 분산된 DAG 유사 구조인 블록레이스로 신뢰할 수 있는 브로드캐스트를 대체한다.
- 블록레이스를 사용해 블록을 확산시키고, 동일한 계정에서 발생한 충돌하는 거래(등가성 충돌)를 총순서가 필요 없이 탐지한다.
- 거래가 후속 블록에서 최소 (n + f)/2개의 서로 다른 정상적인 에이전트에 의해 승인되면 최종화되는 최종성 메커니즘을 구현한다.
- 특정 거래를 급한 거래로 표시할 수 있는 급한 지급 모드를 도입하여, 모든 정상 노드가 수신 즉시 승인하도록 한다.
- 두 가지 프로토콜 버전을 설계한다: 희박한 지연 환경(희박한 지급)에 최적화된 버전과 고지연 환경(동시 지급)에 최적화된 버전으로, 각각 블록레이스 구조를 다르게 활용한다.
- 블록레이스의 부분 순서와 승인 임계값을 기반으로 이방식 네트워크에서 보안성과 일관성을 확보하여, 비잔틴 행동 조건 하에서도 이중지급을 방지한다.
실험 결과
연구 질문
- RQ1지급 시스템이 비잔틴 결함이 적거나 없을 경우 선형 통신 복잡도를 달성하면서도 최악의 경우 O(n²) 하한선을 충족시킬 수 있는가?
- RQ2합의나 총순서가 필요 없이도 비잔틴 결함이 존재하는 이방식 네트워크에서 보안성과 일관성을 유지하면서도 신뢰할 수 있는 브로드캐스트를 제거할 수 있는가?
- RQ3총순서가 아닌 부분 순서를 가지며 DAG 유사 구조를 사용할 경우, 거래의 최종성과 등가성 충돌 탐지는 어떻게 효율적으로 달성할 수 있는가?
- RQ4이방식 지급 시스템에서 희박한 지연 모드와 고지연 모드 간의 성능 상충 관계는 어떠한가?
- RQ5긴급 거래 메커니즘은 보안성이나 통신 오버헤드를 증가시키지 않고도 최종성 지연을 줄일 수 있는가?
주요 결과
- Flash는 비잔틴 에이전트 수가 상수이거나 0일 경우 각 지급에 대해 O(n)의 통신 복잡도를 달성하며, 최악의 경우에도 O(n²)의 복잡도를 유지하여 알려진 하한선을 충족시킨다.
- 블록레이스 구조는 등가성 충돌 탐지 및 블록 확산에 있어 신뢰할 수 있는 브로드캐스트를 성공적으로 대체하여, 합의 없이도 효율적이고 확장 가능한 통신을 가능하게 한다.
- 희박한 지연 버전에서는 (n + f)/2개의 서로 다른 에이전트로부터의 누적 승인을 통해 거래 최종성을 달성하며, 최대 f명의 비잔틴 에이전트가 존재하더라도 안전성을 확보한다.
- 긴급 지급 모드에서는 표시된 거래가 수신 즉시 모든 정상 노드에 의해 승인되며, 메시지 복잡도가 O(n)을 초과하지 않는 범위에서 최종성 지연을 감소시킨다.
- 고지연 버전은 다수의 지급과 블록을 동시에 발행할 수 있으며, 정상 조건 하에서도 각 지급에 대해 선형 통신 복잡도를 유지한다.
- Flash는 지급 시스템이 합의 문제보다 약한 문제임을 입증한다. 즉, 거래의 총순서가 필요 없기 때문에, 좋은 상황에서 더 나은 성능을 달성할 수 있다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.