[논문 리뷰] Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains
본 논문은 모듈화된 오픈 소스 권한부여 블록체인 플랫폼인 Hyperledger Fabric을 제시합니다. 이 플랫폼은 새로운 execute-order-validate 아키텍처, 플러그 가능한 합의, 범용 프로그래밍 언어 지원을 갖추고 있으며, Bitcoin-inspired 통화를 활용한 벤치마크를 통해 높은 처리량과 낮은 지연을 달성하는 것을 보여줍니다.
Fabric is a modular and extensible open-source system for deploying and operating permissioned blockchains and one of the Hyperledger projects hosted by the Linux Foundation (www.hyperledger.org). Fabric is the first truly extensible blockchain system for running distributed applications. It supports modular consensus protocols, which allows the system to be tailored to particular use cases and trust models. Fabric is also the first blockchain system that runs distributed applications written in standard, general-purpose programming languages, without systemic dependency on a native cryptocurrency. This stands in sharp contrast to existing blockchain platforms that require "smart-contracts" to be written in domain-specific languages or rely on a cryptocurrency. Fabric realizes the permissioned model using a portable notion of membership, which may be integrated with industry-standard identity management. To support such flexibility, Fabric introduces an entirely novel blockchain design and revamps the way blockchains cope with non-determinism, resource exhaustion, and performance attacks. This paper describes Fabric, its architecture, the rationale behind various design decisions, its most prominent implementation aspects, as well as its distributed application programming model. We further evaluate Fabric by implementing and benchmarking a Bitcoin-inspired digital currency. We show that Fabric achieves end-to-end throughput of more than 3500 transactions per second in certain popular deployment configurations, with sub-second latency, scaling well to over 100 peers.
연구 동기 및 목표
- 합의와 실행을 분리하는 유연한 권한부여 블록체인이 필요하다는 동기를 제시한다.
- 병렬 엔도스먼트 및 구성 가능한 신뢰 모델을 가능하게 하는 새로운 아키텍처(execute-order-validate)를 도입한다.
- 확장 가능한 원장을 형성하기 위해 상호 작용하는 모듈식 구성요소(ordering service, MSP, gossip, containerized chaincode)와 그 상호 작용을 설명한다.
- Bitcoin-inspired 암호화폐 벤치마크와 성능 평가를 통해 실현 가능성을 입증한다.
제안 방법
- 병렬 엔도스먼트와 유연한 신뢰 가정을 가능하게 하는 세 단계의 execute–order–validate 작업 흐름을 제안한다.
- 합의와 실행을 분리하고 다기관 협업을 위한 채널을 지원하는 모듈식이고 플러그 가능한 ordering service를 정의한다.
- 컨테이너 내에서 표준 언어로 체인코드(스마트 계약) 구현하여 실행을 격리하고 엔도스먼트 정책을 가능하게 한다.
- 어떤 피어가 트랜잭션을 엔도스먼트해야 하는지 결정하기 위해 엔도스먼트 정책을 사용하고, 정렬 순서 전에 출력(읽기/쓰기 세트)을 수집한다.
- 피어 간 결정론적으로 엔도스먼트 정책 평가, 읽기-쓰기 충돌 검사 및 원장 업데이트를 통해 트랜잭션을 검증한다.
- 일반 인프라에서 Bitcoin-inspired 암호화폐를 벤치마킹하여 처리량과 지연을 측정함으로써 성능을 평가한다.
실험 결과
연구 질문
- RQ1권한부여된(blockchain)이 합의와 실행을 분리하면서도 유연한 신뢰 모델을 지원할 수 있는 방법은?
- RQ2일반 목적의 언어로 작성된 스마트 계약을 안전하고 기밀하며 확장 가능한 방식으로 실행하는 플랫폼이 가능한가?
- RQ3현실적인 배치에서 모듈식이고 플러그 가능 합의(blockchain) 아키텍처의 처리량, 지연, 확장성 등의 성능 특성은 무엇인가?
주요 결과
- Fabric은 일반적으로 널리 사용되는 배포 구성에서 엔드-투-엔드 처리량이 3500건 이상의 트랜잭션/초를 달성한다.
- Fabric은 초 이하의 지연을 달성한다.
- 시스템은 100개 이상의 피어로도 잘 확장된다.
- 엔도스먼트 정책은 트랜잭션 검증에 대해 유연하고 표현력 있는 신뢰 가정을 가능하게 한다.
- 거래는 주문/배치되기 전에 실행되므로 병렬성을 가능하게 하고 비결정적 실행 문제를 완화한다.
- 이 아키텍처는 채널을 지원하여 조직 간 분산 원장을 가능하게 한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.