Avalanche (blockchain platform)
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
Denominations | |
---|---|
Code | AVAX |
Development | |
Original author(s) | Emin Gün Sirer, Kevin Sekniqi, Maofan “Ted” Yin |
White paper | https://www.avalabs.org/whitepapers |
Initial release | 23 September 2020 |
Code repository | https://github.com/ava-labs/ |
Development status | Active |
Written in | Go, TypeScript, JavaScript, Python, Vue |
Developer(s) | Ava Labs |
Source model | Open source |
Ledger | |
Block explorer | https://explorer.avax.network/ |
Website | |
Website | https://avax.network/ |
Avalanche is a decentralized, open-source proof-of-stake blockchain with smart contract functionality. AVAX is the native cryptocurrency of the platform.
History
[edit]Avalanche was conceptualized as a consensus protocol that operates efficiently in a network of unreliable machines, addressing both crash-faults and Byzantine faults.[1] The foundations of Avalanche were first shared in May 2018 through the InterPlanetary File System (IPFS) by a pseudonymous group known as "Team Rocket".[2]
Avalanche was later developed by researchers from Cornell University, led by Emin Gün Sirer and doctoral students Maofan "Ted" Yin and Kevin Sekniqi.[3] After the initial release phase, they founded a startup technology company to develop a blockchain network that would meet finance industry requirements.[4][5][3] In March, 2020, the AVA codebase, part of the Developer Accelerator Program or AVA DAP) for the Avalanche consensus protocol, was released as open-source and made publicly available.[6]
In September 2021, the Ava labs foundation secured a $230 million from a consortium including Polychain Capital and Three Arrows Capital through the purchase of the AVAX cryptocurrency.[7]
In November 2021, following an agreement with Deloitte to improve U.S. disaster-relief funding, the Avalanche blockchain entered the top 10 cryptocurrencies by market capitalization.[8]
In August 2022, the whistleblower group "Crypto Leaks" published a report alleging that Ava Labs had entered secret agreements with the Roche Freedmen law firm with the intent to legally undermine Avalanche's competitors. Emin Gün Sirer, the CEO of Ava Labs, denied any involvement in illegal or unethical dealings with Roche Freedmen law firm.[9]
In January 2023, a partnership was announced between Avalanche and Amazon Web Services (AWS) to improve Avalanche's infrastructure and decentralized application ecosystem.[10] Arkham Intelligence also announced a partnership with Avalanche, allowing Arkham users to analyze the activities of wallets and entities within the Avalanche ecosystem.
Design
[edit]AVAX
[edit]In September, 2020, the company issued on X-Chain its native token Avax.[11][12]
Protocol
[edit]The protocol has four basic interrelated mechanisms that compose structural support of the consensus tool. These four mechanisms are Slush, Snowflake, Snowball, and Avalanche. By using randomized sampling and metastability to ascertain and persist transactions, it represents a new protocol family. Although the original paper focused on a single protocol, namely Avalanche, it implicitly introduced a broad spectrum of voting-based, or quorum-based consensus protocols, called the Snow family.[2] While Avalanche is a single instantiation, the Snow family seems to be able to generalize all quorum-based voting protocols for replica control. Unlike prior quorum-based work, the Snow family enables arbitrarily parametrizable failure probability at the quorum intersection level. Standard quorum-based protocols define this failure probability to be precisely zero, but by introducing errors in the quorum intersection, a larger set of consensus protocol designs is available.[13]
Background
[edit]Consensus protocols are the basis for the state machine replication problem, which aims to enable a set of machines to achieve agreement over a network even when a subset of the machines are corrupted. There are two major families of consensus protocols to date - classical consensus and Nakamoto consensus protocols.[14] The first achieves consensus through quorums, thus requiring voting. Famous instantiations of this are Paxos (in the crash-fault-tolerant environment) and PBFT[15] in the Byzantine-fault tolerant case. These protocols achieve agreement in a similar operation to a parliament: a proposal (transaction) is proposed and voted on to be accepted or rejected. If sufficient votes cast by the various replicas are accumulated (typically collected through elected leader replica), then a quorum is achieved, and thus agreement.
The second family, pioneered by Satoshi Nakamoto and Bitcoin is that of the Nakamoto consensus. Unlike quorum-based protocols, machines operating an instance of Nakamoto consensus achieve agreement on transactions by downloading the longest chain (typically called a fork). In Bitcoin, the longest chain is verified by ensuring that it is the one with the highest degree of work (or proof of work). Snow, while quorum-based, seems to be a universal generalization of all quorum-based protocols. Unlike prior work which requires that quorums be deterministic, i.e. the failure probability is precisely zero, Avalanche loosens this requirement, thus enabling quorum-based protocols to estimate global network state with errors.[13]
Assumptions
[edit]While the Snow family can be theoretically generalized to all classes of assumptions that quorum-based protocols have previously made, the formalization paper analyzes Avalanche under an asynchronous network in the Byzantine setting.[16][15][17] The assumptions are as follows:
Processors
- Processors operate at arbitrary speed.
- Processors may experience arbitrary failures, even Byzantine ones.
- Processors with stable storage may re-join the protocol after failures.
- Processors can collude, lie, or otherwise attempt to subvert the protocol. (That is, Byzantine failures are permissible.)[15]
Network
- Processors can send messages to any other processor.
- Messages are sent asynchronously and may take arbitrarily long to deliver.
- Messages may be lost, reordered, or duplicated.
- Messages are delivered without corruption, i.e. an adversary cannot forge digital signatures.[15]
Consensus
[edit]The Avalanche consensus algorithm is a unique approach to achieving consensus in various blockchain networks. It utilizes a randomized voting system to quickly confirm transactions, achieve high throughput, and reduce the risk of splits. This approach also allows for the creation of subnets, which can operate independently with their own validators and parameters.[18]
The consensus mechanism also involves a set of sub-protocols, including Avalanche-X, Avalanche-C, and Avalanche-P.[18]
Safety and liveness properties
[edit]The Snow family generalizes the typical definitions of safety and liveness encountered in quorum-based protocols. For Avalanche specifically, these properties are:
- Agreement (or consistency, or safety)
- If any node (or machine) finalizes a value v, no other node will finalize another value u that conflicts with v with probability higher than Ɛ.
- Termination (or liveness)
- If network resumes synchronous operation, then all nodes will achieve agreement.
Avalanche, like other asynchronous networks, is not guaranteed to terminate and thus does not have the liveness property, during asynchrony. Like Paxos, Avalanche's goal is to ensure fault tolerance and it guarantees safety under asynchrony, but not liveness. This is in contrast to Nakamoto consensus, which guarantees liveness, and not safety under asynchrony.[15]
See also
[edit]- Chandra–Toueg consensus algorithm
- Fault-tolerant computer system
- Paxos
- Raft
- Replication (computing)
- Virtual synchrony
References
[edit]- ^ "Avalanche Documentation". GitHub.
- ^ a b Rocket, Team (16 May 2018). "Snowflake to Avalanche: A Novel Metastable Consensus Protocol Family for Cryptocurrencies".
- ^ a b "Blockchain startup raises a quick $42M in first sale". Cornell Chronicle.
- ^ "A Cornell University Crypto Professor Is Launching His Own Coin". Bloomberg.com. Bloomberg. 16 May 2019.
- ^ Leising, Mathew (April 17, 2020). "New Startup Aims to Prove Blockchain Is Fast Enough for Finance". Bloomberg. Retrieved 27 August 2020.
- ^ "AVA Labs releases codebase for AVA blockchain platform". Enterprise Times. 17 March 2020.
- ^ "Avalanche Raises $230 Million From Sale of Surging Crypto Token". Bloomberg. Bloomberg Law. 16 September 2021.
- ^ "Avalanche Surges Into Crypto Top 10 on Deloitte Deal". Bloomberg Law. 22 November 2021.
- ^ "Avalanche Crypto News: What's Going On With The Scandal Surrounding AVAX?". forbes.com.
- ^ Melinek, Jacquelyn (11 January 2023). "AWS partners with Avalanche to Scale Blockchain Solutions for Enterprises, Governments". TechCrunch. Retrieved 7 February 2023.
- ^ "Blockchain Startup Ava Labs Makes Crypto Veteran Top Lawyer". Bloomberg Law.
- ^ "Overview | Avalanche Docs". docs.avax.network. Retrieved 2021-12-19.
- ^ a b Tanana, Dmitry (2019). "Avalanche blockchain protocol for distributed computing security". 2019 IEEE International Black Sea Conference on Communications and Networking (BlackSea Com). Institute of Electrical and Electronics Engineers. pp. 1–3. doi:10.1109/BlackSeaCom.2019.8812863. ISBN 978-1-7281-3234-1. S2CID 201649683.
- ^ Roy, Sangita; Shyamasundar, Rudrapatna K. (2023). "An Analysis of Hybrid Consensus in Blockchain Protocols for Correctness and Progress". In Atluri, Vijayalakshmi; Ferrara, Anna Lisa (eds.). Data and Applications Security and Privacy XXXVII. Lecture Notes in Computer Science. Vol. 13942. Cham: Springer Nature Switzerland. pp. 404–412. doi:10.1007/978-3-031-37586-6_24. ISBN 978-3-031-37586-6.
- ^ a b c d e Castro, Miguel (February 1999). "Practical Byzantine Fault Tolerance" (PDF). Archived (PDF) from the original on 2006-08-31.
- ^ Yin (June 2019). "Scalable and Probabilistic Leaderless BFT Consensus through Metastability". arXiv:1906.08936 [cs.DC].
- ^ Chitra, Tarun; Chitra, Uthsav (2019). "Committee Selection is More Similar Than You Think: Evidence from Avalanche and Stellar". arXiv:1904.09839 [cs.DC].
- ^ a b "Avalanche Platform | Avalanche Dev Docs". docs.avax.network. Retrieved 2023-05-02.