Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3190508.3190538acmconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
research-article
Open access

Hyperledger fabric: a distributed operating system for permissioned blockchains

Published: 23 April 2018 Publication History

Abstract

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 block-chain 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.

References

[1]
Apache CouchDB. http://couchdb.apache.org.
[2]
Apache Kafka. http://kafka.apache.org.
[3]
Bitcoin. http://bitcoin.org.
[4]
Chain. http://chain.com.
[5]
Ethereum. http://ethereum.org.
[6]
gRPC. http://grpc.io.
[7]
Hyperledger. http://www.hyperledger.org.
[8]
Hyperledger Fabric. http://github.com/hyperledger/fabric.
[9]
Hyperledger Sawtooth. http://sawtooth.hyperledger.org.
[10]
LevelDB in Go. https://github.com/syndtr/goleveldb/.
[11]
The Linux Foundation. http://www.linuxfoundation.org.
[12]
MultiChain. http://www.multichain.com/.
[13]
Quorum. http://www.jpmorgan.com/global/Quorum.
[14]
Tendermint. http://tendermint.com.
[15]
IBM announces major blockchain solution to speed global payments. https://www-03.ibm.com/press/us/en/pressrelease/53290.wss, 2017.
[16]
R. Aitken. IBM & Walmart launching blockchain food safety alliance in China with Fortune 500's JD.com. https://www.forbes.com/sites/tomgroenfeldt/2017/03/05/ibm-and-maersk-apply-blockchain-to-container-shipping/, 2017.
[17]
P.-L. Aublin, R. Guerraoui, N. Knežević, V. Quéma, and M. Vukolić. The next 700 BFT protocols. ACM Trans. Comput. Syst., 32(4):12:1--12:45, Jan. 2015.
[18]
E. Ben-Sasson, A. Chiesa, C. Garman, M. Green, I. Miers, E. Tromer, and M. Virza. Zerocash: Decentralized anonymous payments from bitcoin. In IEEE Symposium on Security & Privacy, pages 459--474, 2014.
[19]
A. N. Bessani, J. Sousa, and E. A. P. Alchieri. State machine replication for the masses with BFT-SMART. In International Conference on Dependable Systems and Networks (DSN), pages 355--362, 2014.
[20]
G. Bracha and S. Toueg. Asynchronous consensus and broadcast protocols. J. ACM, 32(4):824--840, 1985.
[21]
N. Budhiraja, K. Marzullo, F. B. Schneider, and S. Toueg. The primary-backup approach. In S. Mullender, editor, Distributed Systems (2nd Ed.), pages 199--216. ACM Press/Addison-Wesley, 1993.
[22]
C. Cachin, R. Guerraoui, and L. E. T. Rodrigues. Introduction to Reliable and Secure Distributed Programming (2. ed.). Springer, 2011.
[23]
C. Cachin, S. Schubert, and M. Vukolić. Non-determinism in byzantine fault-tolerant replication. In 20th International Conference on Principles of Distributed Systems (OPODIS), 2016.
[24]
C. Cachin and M. Vukolić. Blockchain consensus protocols in the wild. In A. W. Richa, editor, 31st Intl. Symposium on Distributed Computing (DISC 2017), pages 1:1--1:16, 2017.
[25]
J. Camenisch and E. V. Herreweghen. Design and implementation of the idemix anonymous credential system. In ACM Conference on Computer and Communications Security (CCS), pages 21--30, 2002.
[26]
M. Castro and B. Liskov. Practical Byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst., 20(4):398--461, Nov. 2002.
[27]
B. Charron-Bost, F. Pedone, and A. Schiper, editors. Replication: Theory and Practice, volume 5959 of Lecture Notes in Computer Science. Springer, 2010.
[28]
K. Croman, C. Decker, I. Eyal, A. E. Gencer, A. Juels, A. Kosba, A. Miller, P. Saxena, E. Shi, E. G. Sirer, et al. On scaling decentralized blockchains. In International Conference on Financial Cryptography and Data Security (FC), pages 106--125. Springer, 2016.
[29]
A. Demers, D. Greene, C. Hauser, W. Irish, J. Larson, S. Shenker, H. Sturgis, D. Swinehart, and D. Terry. Epidemic algorithms for replicated database maintenance. In ACM Symposium on Principles of Distributed Computing (PODC), pages 1--12. ACM, 1987.
[30]
T. T. A. Dinh, R. Liu, M. Zhang, G. Chen, B. C. Ooi, and J. Wang. Untangling block-chain: A data processing view of blockchain systems. e-print, arXiv:1708.05665 {cs.DB}, 2017.
[31]
Fujitsu Limited. Fujitsu cloud service adopted by Japanese Bankers Association for blockchain-based financial service testbed. http://www.fujitsu.com/global/about/resources/news/press-releases/2017/0914-01.html, 2017.
[32]
R. Garcia, R. Rodrigues, and N. M. Preguiça. Efficient middleware for Byzantine fault tolerant database replication. In European Conference on Computer Systems (EuroSys), pages 107--122, 2011.
[33]
T. Groenfeldt. IBM and Maersk apply blockchain to container shipping. https://www.forbes.com/sites/tomgroenfeldt/2017/03/05/ibm-and-maersk-apply-blockchain-to-container-shipping/, 2018.
[34]
R. Guerraoui, R. R. Levy, B. Pochon, and V. Quéma. Throughput optimal total order broadcast for cluster environments. ACM Trans. Comput. Syst., 28(2):5:1--5:32, 2010.
[35]
J. P. Morgan. Quorum whitepaper. https://github.com/jpmorganchase/quorum-docs, 2016.
[36]
F. P. Junqueira, B. C. Reed, and M. Serafini. Zab: High-performance broadcast for primary-backup systems. In International Conference on Dependable Systems & Networks (DSN), pages 245--256, 2011.
[37]
M. Kapritsos, Y. Wang, V. Quéma, A. Clement, L. Alvisi, and M. Dahlin. All about Eve: Execute-verify replication for multi-core servers. In Symposium on Operating Systems Design and Implementation (OSDI), pages 237--250, 2012.
[38]
R. Karp, C. Schindelhauer, S. Shenker, and B. Vocking. Randomized rumor spreading. In Symposium on Foundations of Computer Science (FOCS), pages 565--574. IEEE, 2000.
[39]
B. Kemme. One-copy-serializability. In Encyclopedia of Database Systems, pages 1947--1948. Springer, 2009.
[40]
B. Kemme and G. Alonso. A new approach to developing and implementing eager database replication protocols. ACM Transactions on Database Systems, 25(3):333--379, 2000.
[41]
B. Kemme, R. Jiménez-Peris, and M. Patiño-Martínez. Database Replication. Synthesis Lectures on Data Management. Morgan & Claypool Publishers, 2010.
[42]
A. E. Kosba, A. Miller, E. Shi, Z. Wen, and C. Papamanthou. Hawk: The blockchain model of cryptography and privacy-preserving smart contracts. In 37th IEEE Symposium on Security & Privacy, 2016.
[43]
S. Liu, P. Viotti, C. Cachin, V. Quéma, and M. Vukolić. XFT: practical fault tolerance beyond crashes. In Symposium on Operating Systems Design and Implementation (OSDI), pages 485--500, 2016.
[44]
S. Nakamoto. Bitcoin: A peer-to-peer electronic cash system. http://www.bitcoin.org/bitcoin.pdf, 2009.
[45]
D. Ongaro and J. Ousterhout. In search of an understandable consensus algorithm. In USENIX Annual Technical Conference (ATC), pages 305--320, 2014.
[46]
F. Pedone and A. Schiper. Handling message semantics with Generic Broadcast protocols. Distributed Computing, 15(2):97--107, 2002.
[47]
B. Peterson. IBM told investors that it has over 400 blockchain clients - including Walmart, Visa, and Nestle. Business Insider UK, http://uk.businessinsider.com/ibm-blockchain-enterprise-customers-walmart-visa-nestl-2018-3/, 2018.
[48]
F. B. Schneider. Implementing fault-tolerant services using the state machine approach: A tutorial. ACM Comput. Surv., 22(4):299--319, 1990.
[49]
J. Sengupta, R. Komarraju, and K. Bear. Bridging the divide: How CLS and IBM moved to blockchain. IBM Institute for Business Value, https://www-935.ibm.com/services/us/gbs/thoughtleadership/bridgingdivide/, 2017.
[50]
S. Settty, S. Basu, L. Zhou, M. L. Roberts, and R. Venkatesan. Enabling secure and resource-efficient blockchain networks with VOLT. Technical Report MSR-TR-2017-38, Microsoft Research, 2017.
[51]
M. Shapiro, N. Preguiça, C. Baquero, and M. Zawirski. Conflict-free replicated data types. In Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems, SSS'11, pages 386--400, Berlin, Heidelberg, 2011. Springer-Verlag.
[52]
A. Singh, T. Das, P. Maniatis, P. Druschel, and T. Roscoe. BFT protocols under fire. In Symposium on Networked Systems Design & Implementation (NSDI), pages 189--204, 2008.
[53]
J. Sousa, A. Bessani, and M. Vukolić. A Byzantine fault-tolerant ordering service for the Hyperledger Fabric blockchain platform. In International Conference on Dependable Systems and Networks (DSN), 2018.
[54]
A. S. Tanenbaum. Distributed operating systems anno 1992. what have we learned so far? Distributed Systems Engineering, 1(1):3--10, 1993.
[55]
B. Vandiver, H. Balakrishnan, B. Liskov, and S. Madden. Tolerating Byzantine faults in transaction processing systems using commit barrier scheduling. In ACM Symposium on Operating Systems Principles (SOSP), pages 59--72, 2007.
[56]
M. Venkataraman, M. Vridhachalam, A. Rosen, and B. Arthur. Adopting blockchain for enterprise asset management (EAM). IBM developerWorks, https://www.ibm.com/developerworks/cloud/library/cl-adopting-blockchain-for-enterprise-asset-management-eam/index.html, 2017.
[57]
M. Vukolić. The quest for scalable blockchain fabric: Proof-of-work vs. BFT replication. In International Workshop on Open Problems in Network Security (iNetSec), pages 112--125, 2015.
[58]
G. Wood. Ethereum: A secure decentralised generalised transaction ledger. Byzantium Version, https://ethereum.github.io/yellowpaper/paper.pdf.
[59]
J. Yin, J. Martin, A. Venkataramani, L. Alvisi, and M. Dahlin. Separating agreement from execution for Byzantine fault tolerant services. In ACM Symposium on Operating Systems Principles (SOSP), pages 253--267, 2003.

Cited By

View all
  • (2025)A secure data storage and sharing scheme for port supply chain based on blockchain and dynamic searchable encryptionComputer Standards & Interfaces10.1016/j.csi.2024.10388791:COnline publication date: 1-Jan-2025
  • (2025)Securing supply chain through blockchain-integrated algorithmic system: ensuring product quality and counterfeiting tags detectionCluster Computing10.1007/s10586-024-04764-128:1Online publication date: 1-Feb-2025
  • (2024)Transparent and Reliable Data Sharing between Infrastructure and Vehicle through Blockchain in an Automated Driving EnvironmentJournal of Digital Contents Society10.9728/dcs.2024.25.7.191925:7(1919-1929)Online publication date: 31-Jul-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
EuroSys '18: Proceedings of the Thirteenth EuroSys Conference
April 2018
631 pages
ISBN:9781450355841
DOI:10.1145/3190508
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 April 2018

Check for updates

Qualifiers

  • Research-article

Funding Sources

  • European Union's Horizon 2020 Framework Programme
  • Swiss State Secretariat for Education, Research and Innovation (SERI)

Conference

EuroSys '18
Sponsor:
EuroSys '18: Thirteenth EuroSys Conference 2018
April 23 - 26, 2018
Porto, Portugal

Acceptance Rates

EuroSys '18 Paper Acceptance Rate 43 of 262 submissions, 16%;
Overall Acceptance Rate 241 of 1,308 submissions, 18%

Upcoming Conference

EuroSys '25
Twentieth European Conference on Computer Systems
March 30 - April 3, 2025
Rotterdam , Netherlands

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17,350
  • Downloads (Last 6 weeks)599
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2025)A secure data storage and sharing scheme for port supply chain based on blockchain and dynamic searchable encryptionComputer Standards & Interfaces10.1016/j.csi.2024.10388791:COnline publication date: 1-Jan-2025
  • (2025)Securing supply chain through blockchain-integrated algorithmic system: ensuring product quality and counterfeiting tags detectionCluster Computing10.1007/s10586-024-04764-128:1Online publication date: 1-Feb-2025
  • (2024)Transparent and Reliable Data Sharing between Infrastructure and Vehicle through Blockchain in an Automated Driving EnvironmentJournal of Digital Contents Society10.9728/dcs.2024.25.7.191925:7(1919-1929)Online publication date: 31-Jul-2024
  • (2024)Consortium Blockchain Model for Decentralized of Healthcare InformationJournal of Digital Contents Society10.9728/dcs.2024.25.6.162125:6(1621-1630)Online publication date: 30-Jun-2024
  • (2024)Perspective Chapter: Integrating Large Language Models and Blockchain in TelemedicineA Comprehensive Overview of Telemedicine [Working Title]10.5772/intechopen.1005063Online publication date: 9-Apr-2024
  • (2024)Avaliação de desempenho de transações da rede blockchain Ethereum: um estudo de casoCuadernos de Educación y Desarrollo10.55905/cuadv16n11-11616:11(e6428)Online publication date: 21-Nov-2024
  • (2024)COLEProceedings of the 22nd USENIX Conference on File and Storage Technologies10.5555/3650697.3650717(329-346)Online publication date: 27-Feb-2024
  • (2024)Application of Blockchain Technology in the Management of Legal DocumentsInternational Journal of Advanced Research in Science, Communication and Technology10.48175/IJARSCT-15645(264-272)Online publication date: 6-Mar-2024
  • (2024)Research on ZKP Algorithm of Data Asset Security and Privacy Protection Based on Blockchain TechnologyInternational Journal of e-Collaboration10.4018/IJeC.34921120:1(1-20)Online publication date: 24-Jul-2024
  • (2024)The Role and Importance of Metaverse and Blockchain Technology in the Tourism and Hospitality IndustryImpact of AI and Tech-Driven Solutions in Hospitality and Tourism10.4018/979-8-3693-6755-1.ch009(155-174)Online publication date: 30-Jun-2024
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media