Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2508859.2516750acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article

PoWerStore: proofs of writing for efficient and robust storage

Published: 04 November 2013 Publication History

Abstract

Existing Byzantine fault tolerant (BFT) storage solutions that achieve strong consistency and high availability, are costly compared to solutions that tolerate simple crashes. This cost is one of the main obstacles in deploying BFT storage in practice.
In this paper, we present PoWerStore, a robust and efficient data storage protocol. PoWerStore's robustness comprises tolerating network outages, maximum number of Byzantine storage servers, any number of Byzantine readers and crash-faulty writers, and guaranteeing high availability (wait-freedom) and strong consistency (linearizability) of read/write operations. PoWerStore's efficiency stems from combining lightweight cryptography, erasure coding and metadata write-backs, where readers write-back only metadata to achieve strong consistency. Central to PoWerStore is the concept of ``Proofs of Writing'' (PoW), a novel data storage technique inspired by commitment schemes. PoW rely on a 2-round write procedure, in which the first round writes the actual data and the second round only serves to ``prove'' the occurrence of the first round. PoW enable efficient implementations of strongly consistent BFT storage through metadata write-backs and low latency reads.
We implemented PoWerStore and show its improved performance when compared to existing robust storage protocols, including protocols that tolerate only crash faults.

References

[1]
Jerasure. https://github.com/tsuraan/Jerasure, 2008.
[2]
The Neko Project. http://ddsg.jaist.ac.jp/neko/, 2009.
[3]
Ittai Abraham, Gregory Chockler, Idit Keidar, and Dahlia Malkhi. Byzantine Disk Paxos: Optimal Resilience with Byzantine Shared Memory. Distributed Computing, 18(5):387--408, 2006.
[4]
Amitanand S. Aiyer, Lorenzo Alvisi, and Rida A. Bazzi. Bounded Wait-free Implementation of Optimally Resilient Byzantine Storage Without (Unproven) Cryptographic Assumptions. In Proceedings of DISC, 2007.
[5]
Hagit Attiya, Amotz Bar-Noy, and Danny Dolev. Sharing Memory Robustly in Message-Passing Systems. J. ACM, 42:124--142, January 1995.
[6]
Rida A. Bazzi and Yin Ding. Non-skipping Timestamps for Byzantine Data Storage Systems. In Proceedings of DISC, pages 405--419, 2004.
[7]
Alysson Neves Bessani, Miguel P. Correia, Bruno Quaresma, Fernando Andre, and Paulo Sousa. Depsky: dependable and secure storage in a cloud-of-clouds. In Proceedings of EuroSys, pages 31--46, 2011.
[8]
Kevin D. Bowers, Ari Juels, and Alina Oprea. Hail: a high-availability and integrity layer for cloud storage. In CCS, pages 187--198, 2009.
[9]
Kevin D. Bowers, Ari Juels, and Alina Oprea. Proofs of retrievability: theory and implementation. In CCSW, pages 43--54, 2009.
[10]
Christian Cachin and Stefano Tessaro. Optimal Resilience for Erasure-Coded Byzantine Distributed Storage. In Proceedings of DSN, pages 115--124, 2006.
[11]
Brian Cho and Marcos K. Aguilera. Surviving congestion in geo-distributed storage systems. In Proceedings of USENIX ATC, pages 40--40, 2012.
[12]
Gregory Chockler, Dahlia Malkhi, and Danny Dolev. Future directions in distributed computing. chapter A data-centric approach for scalable state machine replication, pages 159--163. 2003.
[13]
Allen Clement, Edmund L. Wong, Lorenzo Alvisi, Michael Dahlin, and Mirco Marchetti. Making byzantine fault tolerant systems tolerate byzantine faults. In Proceedings of NSDI, pages 153--168, 2009.
[14]
Wei Dai. Crypto++ 5.6.0 benchmarks. Website, 2009. Available online at http://www.cryptopp.com/benchmarks.html.
[15]
Dan Dobre, Rachid Guerraoui, Matthias Majuntke, Neeraj Suri, and Marko Vukolic. The Complexity of Robust Atomic Storage. In Proceedings of PODC, pages 59--68, 2011.
[16]
Partha Dutta, Rachid Guerraoui, Ron R. Levy, and Marko Vukolic. Fast Access to Distributed Atomic Memory. SIAM J. Comput., 39:3752--3783, December 2010.
[17]
Rui Fan and Nancy Lynch. Efficient Replication of Large Data Objects. In Proceedings of DISC, pages 75--91, 2003.
[18]
Chryssis Georgiou, Nicolas C. Nicolaou, and Alexander A. Shvartsman. Fault-tolerant Semifast Implementations of Atomic Read/Write Registers. J. Parallel Distrib. Comput., 69(1):62--79, January 2009.
[19]
Garth R. Goodson, Jay J. Wylie, Gregory R. Ganger, and Michael K. Reiter. Efficient Byzantine-Tolerant Erasure-Coded Storage. In Proceedings of DSN, 2004.
[20]
Rachid Guerraoui and Marko Vukolic. Refined quorum systems. Distributed Computing, 23(1):1--42, 2010.
[21]
Shai Halevi and Silvio Micali. Practical and provably-secure commitment schemes from collision-free hashing. In Proceedings of CRYPTO, pages 201--215, 1996.
[22]
James Hendricks, Gregory R. Ganger, and Michael K. Reiter. Low-overhead Byzantine fault-tolerant storage. In Proceedings of SOSP, pages 73--86, 2007.
[23]
Maurice Herlihy. Wait-Free Synchronization. ACM Trans. Program. Lang. Syst., 13(1), 1991.
[24]
Maurice P. Herlihy and Jeannette M. Wing. Linearizability: A Correctness Condition for Concurrent Objects. ACM Trans. Program. Lang. Syst., 12(3), 1990.
[25]
Prasad Jayanti, Tushar Deepak Chandra, and Sam Toueg. Fault-tolerant Wait-free Shared Objects. J. ACM, 45(3), 1998.
[26]
Aniket Kate, Gregory M. Zaverucha, and Ian Goldberg. Constant-size commitments to polynomials and their applications. In Proceedings of ASIACRYPT, volume 6477, pages 177--194, 2010.
[27]
Petr Kuznetsov and Rodrigo Rodrigues. Bftw3: Why? When? Where? workshop on the theory and practice of Byzantine fault tolerance. SIGACT News, 40(4):82--86, 2009.
[28]
Leslie Lamport. On Interprocess Communication. Distributed Computing, 1(2):77--101, 1986.
[29]
Leslie Lamport, Robert E. Shostak, and Marshall C. Pease. The byzantine generals problem. ACM Trans. Program. Lang. Syst., 4(3):382--401, 1982.
[30]
Harry C. Li, Allen Clement, Amitanand S. Aiyer, and Lorenzo Alvisi. The Paxos Register. In Proceedings of SRDS, pages 114--126, 2007.
[31]
Barbara Liskov and Rodrigo Rodrigues. Tolerating Byzantine Faulty Clients in a Quorum System. In Proceedings of ICDCS, 2006.
[32]
Nancy A. Lynch and Mark R. Tuttle. An introduction to input/output automata. CWI Quarterly, 2:219--246, 1989.
[33]
Dahlia Malkhi and Michael K. Reiter. A High-Throughput Secure Reliable Multicast Protocol. J. Comput. Secur., 5(2):113--127, March 1997.
[34]
Dahlia Malkhi and Michael K. Reiter. Secure and Scalable Replication in Phalanx. In Proceedings of SRDS, pages 51--58, 1998.
[35]
Jean-Philippe Martin, Lorenzo Alvisi, and Michael Dahlin. Minimal Byzantine Storage. In Proceedings of DISC, pages 311--325, 2002.
[36]
David Mazieres and Dennis Shasha. Building secure file systems out of byantine storage. In PODC, pages 108--117, 2002.
[37]
NetEm. NetEm, the Linux Foundation. Website, 2009. Available online at http://www.linuxfoundation.org/collaborate/workgroups/networking/netem.
[38]
Michael K. Reiter. Secure Agreement Protocols: Reliable and Atomic Group Multicast in Rampart. In Proceedings of CCS, pages 68--80, 1994.
[39]
Alexander Shraer, Christian Cachin, Asaf Cidon, Idit Keidar, Yan Michalevsky, and Dani Shaket. Venus: verification for untrusted cloud storage. In CCSW, pages 19--30, 2010.
[40]
Alexander Shraer, Jean-Philippe Martin, Dahlia Malkhi, and Idit Keidar. Data-centric reconfiguration with network-attached disks. In Proceedings of LADIS, pages 22--26, 2010.
[41]
Atul Singh, Tathagata Das, Petros Maniatis, Peter Druschel, and Timothy Roscoe. Bft protocols under fire. In Proceedings of NSDI, pages 189--204, 2008.
[42]
Emil Stefanov, Marten van Dijk, Ari Juels, and Alina Oprea. Iris: a scalable cloud file system with efficient integrity checks. In ACSAC, pages 229--238, 2012.
[43]
Sue-Hwey Wu, Scott A. Smolka, and Eugene W. Stark. Composition and behaviors of probabilistic i/o automata. In Proceedings of CONCUR, pages 513--528, 1994.

Cited By

View all
  • (2024)Distributed Transaction Processing in Untrusted EnvironmentsCompanion of the 2024 International Conference on Management of Data10.1145/3626246.3654684(570-579)Online publication date: 9-Jun-2024
  • (2023)Brief Announcement: CausalEC: A Causally Consistent Data Storage Algorithm based on Cross-Object Erasure CodingProceedings of the 2023 ACM Symposium on Principles of Distributed Computing10.1145/3583668.3594603(374-377)Online publication date: 19-Jun-2023
  • (2022)Efficient Publicly Verifiable Proofs of Data Replication and Retrievability Applicable for Cloud StorageAdvances in Science, Technology and Engineering Systems Journal10.25046/aj0701117:1(107-124)Online publication date: Feb-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CCS '13: Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security
November 2013
1530 pages
ISBN:9781450324779
DOI:10.1145/2508859
Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 November 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. byzantine-fault tolerance
  2. secure distributed storage
  3. strong consistency

Qualifiers

  • Research-article

Conference

CCS'13
Sponsor:

Acceptance Rates

CCS '13 Paper Acceptance Rate 105 of 530 submissions, 20%;
Overall Acceptance Rate 1,261 of 6,999 submissions, 18%

Upcoming Conference

CCS '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 10 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Distributed Transaction Processing in Untrusted EnvironmentsCompanion of the 2024 International Conference on Management of Data10.1145/3626246.3654684(570-579)Online publication date: 9-Jun-2024
  • (2023)Brief Announcement: CausalEC: A Causally Consistent Data Storage Algorithm based on Cross-Object Erasure CodingProceedings of the 2023 ACM Symposium on Principles of Distributed Computing10.1145/3583668.3594603(374-377)Online publication date: 19-Jun-2023
  • (2022)Efficient Publicly Verifiable Proofs of Data Replication and Retrievability Applicable for Cloud StorageAdvances in Science, Technology and Engineering Systems Journal10.25046/aj0701117:1(107-124)Online publication date: Feb-2022
  • (2022)LEGOStoreProceedings of the VLDB Endowment10.14778/3547305.354732315:10(2201-2215)Online publication date: 7-Sep-2022
  • (2021)Cloud Storage Service Architecture Providing the Eventually Consistent Totally Ordered Commit History of Distributed Key-Value Stores for Data Consistency VerificationElectronics10.3390/electronics1021270210:21(2702)Online publication date: 5-Nov-2021
  • (2021)Outsourcing Proofs of RetrievabilityIEEE Transactions on Cloud Computing10.1109/TCC.2018.28655549:1(286-301)Online publication date: 1-Jan-2021
  • (2019)ReplicaTEE: Enabling Seamless Replication of SGX Enclaves in the Cloud2019 IEEE European Symposium on Security and Privacy (EuroS&P)10.1109/EuroSP.2019.00021(158-171)Online publication date: Jun-2019
  • (2018)BEATProceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security10.1145/3243734.3243812(2028-2041)Online publication date: 15-Oct-2018
  • (2018)Multi-Version Coding—An Information-Theoretic Perspective of Consistent Distributed StorageIEEE Transactions on Information Theory10.1109/TIT.2017.272527364:6(4540-4561)Online publication date: Jun-2018
  • (2017)A Layered Architecture for Erasure-Coded Consistent Distributed StorageProceedings of the ACM Symposium on Principles of Distributed Computing10.1145/3087801.3087832(63-72)Online publication date: 25-Jul-2017
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media