Abstract
We consider a set of clients collaborating through an online service provider that is subject to attacks and hence not fully trusted by the clients. We introduce the abstraction of a failaware untrusted service, with meaningful semantics even when the provider is faulty. In the common case, when the provider is correct, such a service guarantees consistency (linearizability) and liveness (wait-freedom) of all operations. In addition, the service always provides accurate and complete consistency and failure detection. We illustrate our new abstraction by presenting a Fail-Aware Untrusted STorage service (FAUST). Existing storage protocols in this model guarantee so-called forking semantics. We observe, however, that none of the previously suggested protocols suffices for implementing fail-aware untrusted storage with the desired liveness and consistency properties (at least wait-freedom and linearizability when the server is correct). We present a new storage protocol, which does not suffer from this limitation, and implements a new consistency notion, called weak fork-linearizability. We show how to extend this protocol to provide eventual consistency and failure awareness in FAUST.
| Original language | English |
|---|---|
| Pages (from-to) | 493-533 |
| Number of pages | 41 |
| Journal | SIAM Journal on Computing |
| Volume | 40 |
| Issue number | 2 |
| DOIs | |
| State | Published - 2011 |
Keywords
- Cloud storage
- Consistency
- Forking semantics
- Hashing
- Integrity
All Science Journal Classification (ASJC) codes
- General Computer Science
- General Mathematics
Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver