Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
cryptocurrencies [2019/06/02 14:18] seredins |
cryptocurrencies [2019/06/02 15:00] seredins |
||
---|---|---|---|
Line 6: | Line 6: | ||
Decentralized cryptocurrencies such as Bitcoin and Ethereum enable distrusting parties (e.g., anonymous users on the Internet) to coordinate their financial operations. | Decentralized cryptocurrencies such as Bitcoin and Ethereum enable distrusting parties (e.g., anonymous users on the Internet) to coordinate their financial operations. | ||
For instance, users can exchange assets, pay for some service, coordinate on a lottery, raise funds cooperatively, or use escrows. ** | For instance, users can exchange assets, pay for some service, coordinate on a lottery, raise funds cooperatively, or use escrows. ** | ||
+ | **One of the main strengths of cryptocurrencies is that they enable such operations without relying on a trusted third party, such as a bank or a central administration.** | ||
- | ====== Understanding cryptocurrencies ====== | + | ==== Understanding cryptocurrencies ==== |
- | **Our aim is to understand the foundational blocks underlying cryptocurrency systems. | + | |
- | To do so, we study these systems from a distributed computing perspective. | + | |
+ | Our aim is to understand the foundational blocks underlying cryptocurrency systems, then use this knowledge to obtain more efficient solutions. | ||
+ | We study these systems from a distributed computing perspective. | ||
Concretely, we seek to get a thorough understanding of cryptocurrencies by deconstructing them into well-known primitives, e.g., consensus algorithms, atomic snapshots, read/write registers, failure detectors, etc. | Concretely, we seek to get a thorough understanding of cryptocurrencies by deconstructing them into well-known primitives, e.g., consensus algorithms, atomic snapshots, read/write registers, failure detectors, etc. | ||
- | ** | ||
- | ====== Why Bitcoin is an Overkill ====== | ||
- | One of the main results we have obtained is an asynchronous (i.e., //consensusless//) approach to implementing decentralized asset transfers. We use this approach to design AT2 (//Asynchronous Trustworthy Transfers//), a class of algorithms for solving asset transfers in various models, namely in the shared memory model, as well as in the deterministic & probabilistic message-passing models. | + | ==== Why Bitcoin is an Overkill ==== |
+ | |||
+ | One of the main results we have obtained concerns decentralized payments, or the **asset transfers** problem. | ||
+ | Bitcoin is one of the most popular solution to this problem. | ||
+ | Like all current solutions, Bitcoin relies on a consensus algorithm, which is a very expensive building block. | ||
+ | This reflects both in the poor performance of the Bitcoin platform as well as in its high energy costs. | ||
+ | We showed that this building block is unnecessary, namely that implementing decentralized asset transfers does not require consensus. | ||
+ | We introduce AT2 (**Asynchronous Trustworthy Transfers**), a class of algorithms for solving asset transfers in various models (shared memory, as well as in the deterministic & probabilistic message-passing models). | ||
+ | |||
+ | This result highlights the importance of studying distributed systems from first principles. We are currently working on several AT2 implementations. | ||
+ | If you are a student interested in master or semester projects, please contact [[rachid.guerraoui@epfl.ch|Prof. Rachid Guerraoui]] directly. | ||
- | With help from the ZettaBytes channel ([[https://www.youtube.com/channel/UCfY6ovyFMaw30NRs-KrxrWw|YouTube]]), we have created a series of explanatory videos where we describe the main idea behind AT2: | + | With help from the ZettaBytes channel ([[https://www.youtube.com/channel/UCfY6ovyFMaw30NRs-KrxrWw|YouTube]]), we have created a series of explanatory videos where we describe the main ideas behind AT2: |
Line 25: | Line 36: | ||
- | ====== Publications & Preprints ====== | + | ==== Publications & Preprints ==== |
- Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, and Dragos-Adrian Seredinschi. “AT2: Asynchronous Trustworthy Transfers”, (arXiv:1812.10844) [[https://arxiv.org/abs/1812.10844|☞]] | - Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, and Dragos-Adrian Seredinschi. “AT2: Asynchronous Trustworthy Transfers”, (arXiv:1812.10844) [[https://arxiv.org/abs/1812.10844|☞]] | ||
- Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, and Dragos-Adrian Seredinschi. “The Consensus Number of a Cryptocurrency”. In Proceedings of the 38th Annual ACM Symposium on Principles of Distributed Computing **(PODC 2019)** | - Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, and Dragos-Adrian Seredinschi. “The Consensus Number of a Cryptocurrency”. In Proceedings of the 38th Annual ACM Symposium on Principles of Distributed Computing **(PODC 2019)** | ||
- | ====== Members & collaborators ====== | + | ==== Members & collaborators ==== |