Durango: Avalanche Warp Messaging Comes to the EVM

Update (2/21/24): Today, the production code [AvalancheGo@v1.11.0] for the proposed Durango Upgrade was published. If sufficient stake supports Durango, it will activate on the Avalanche Mainnet at 11 AM ET on Wednesday, March 6th, 2024. Durango contains ACPs that are not compatible with < v1.11.0 (Cortina). If Durango activates and you do not upgrade your node before the activation time, your node will be unable to process new blocks and will be marked as offline by other nodes (impacting your node's uptime and potentially jeopardizing your staking rewards). You can track support for ACP-23, ACP-24, ACP-25, ACP-30, ACP-31, ACP-41, and ACP-62 (included in Durango) on snowpeer: https://snowpeer.io/acps

+++

Update (2/13/24): Durango activated successfully on the Fuji Testnet this morning at 11 AM ET!

+++

The pre-release code for a proposed upgrade to the Avalanche Network was published for activation on the Fuji Testnet at 11 A.M. ET (4 P.M. UTC) on Tuesday, February 13th, 2024. This proposed upgrade, codenamed Durango, consists of Avalanche Community Proposals (ACPs) [ACP-23] P-Chain Native Transfers, [ACP-24] Activate Shanghai EIPs on C-Chain, [ACP-25] Virtual Machine Application Errors, [ACP-30] Integrate Avalanche Warp Messaging into the EVM, [ACP-31] Enable Subnet Ownership Transfer, [ACP-41] Remove Pending Stakers, and [ACP-62] Disable AddValidatorTx and AddDelegatorTx.

Note, this pre-release code will ONLY work on Fuji. If you run the code on Mainnet, it will exit on startup. The Durango Upgrade includes protocol optimizations that are not compatible with AvalancheGo versions < v1.11.0. If you run a node on Fuji, you must upgrade your software to AvalancheGo >= v1.11.0 before the activation time on Fuji. If you are a Mainnet node operator, no action is required.

Pending a successful activation on the Fuji Testnet of all implementable ACPs, Avalanche Validators can choose to update their nodes to a production release of Durango (yet to be published) that supports the ACPs on Avalanche Mainnet. Reminder: Avalanche Validators can signal their support for ACPs.

Cross-Subnet Interoperability

The first native Cross-Subnet message was sent on Avalanche Mainnet using Avalanche Warp Messaging (AWM) on December 22nd, 2022. Following this milestone, ACP-30 proposed activating AWM on the C-Chain and Subnet-EVM. Activating this ACP brings native cross-chain communication to every EVM Chain in the Avalanche Ecosystem and establishes a standard for future VMs to communicate using AWM.

With AWM, there are no third party intermediaries or trust assumptions outside of the validator set of the Primary Network and the communicating Subnets. With only the validators of a Subnet, every Avalanche Subnet can send messages to one another. AWM leverages the Avalanche P-Chain as a registry of all Subnets’ validator sets including a BLS Public Key for each validator.

To send a message, an untrusted relayer or user aggregates signatures from a threshold of the Subnets’ participating stake. Once it has received signatures from a threshold of stake, it constructs a BLS Multi-Signature and a bit set to specify which validators have included a signature. For a receiving Subnet to verify the message, it looks up the validator set of the source Subnet at the current P-Chain height from its local database, checks that the total weight of included validators meets the required threshold, aggregates the specified BLS public keys, and then verifies the signature against the resulting aggregate public key. Any relayers broadcasting invalid BLS Multi-Signatures will be ignored. Note, no transactions/messages are included in the P-Chain to send an Avalanche Warp Message. Messages are passed directly between communicating Subnets or between a Subnet and the C-Chain. Here is a diagram of how this works between two Subnets:

This lightweight protocol replaces the management of point-to-point connections with the simplicity of one unified registry: the Avalanche P-Chain. For the full details on how this is integrated into the EVM, see ACP-30.

In order to use AWM, a threshold stake of the Subnet’s validators need to register BLS keys via ‘AddPermissionlessValidatorTx’. ACP-62 proposes disabling ‘AddValidatorTx’ and ‘AddDelegatorTx’ to push all new stakers to use ‘AddPermissionlessValidatorTx’ and ‘AddPermissionlessDelegatorTx’. Wide adoption of registered BLS keys not only enables Subnets to utilize AWM, but also accelerates the timeline for potential future P-Chain upgrades.

Improving the Developer Experience 

This upgrade also addresses some common requests from developers to improve the developer experience. These include adding P-Chain native transfers, enabling subnet ownership transfers, maintaining smart contract compatibility with Ethereum by supporting the Ethereum Shanghai Upgrade, and adding VM application errors. 

Currently, users who want to transfer assets between P-Chain addresses either need to leave the P-Chain or use a transaction type not meant for native transfers. ACP-23 proposes supporting native transfers on the P-Chain with ‘BaseTx’. By supporting native transfers on the P-Chain, users can manage their assets more efficiently and securely.

Another challenge for developers has been changing the owner of a Subnet, as currently the owner is immutable when new Subnets are created on the P-chain. Subnet operators may want to transition ownership of the Subnet to a new owner for a number of reasons, i.e. to perform a periodic rotation of the Subnet’s control key(s). ACP-31 proposes allowing the current owner of a Subnet to transfer ownership to a new owner via ‘TransferSubnetOwnershipTx’.

Durango also activates ACP-24, which incorporates the changes from the Ethereum Shanghai Upgrade to ensure the C-Chain maintains smart contract compatibility with Ethereum. Specifically, EIP-3855 adds the PUSH0 opcode to the C-Chain, maintaining compatibility with Solidity versions >= v0.8.20. See the ACP for full details on the changes. 

At the VM level, a peer cannot signal VM application errors, resulting in a network timeout and failed request. ACP-25 proposes adding an ‘AppError’ message to indicate that an error has occurred. This allows a peer to signal failure early rather than wait for a timeout to fire, reducing the latency of a failed request from the network timeout (~2s) to a single network round trip time (~500ms).

Starting the Path to 100k Subnets

To help further increase the scalability of the P-Chain, ACP-41 proposes removing a user-specified ‘StartTime’ for stakers. This modifies the P-Chain to start a staker’s staking period when the transaction is accepted. This greatly reduces the computation load on the P-Chain, increasing the efficiency of all Avalanche Network Validators and sets the stage for future P-Chain upgrades, including continuous staking (stake once and forget about it).

In addition to scaling the P-chain, key features will be needed in order to walk the “Path to 100k Subnets”. Many of these will rely on BLS keys, whose wide adoption not only enables Subnets to fully utilize Avalanche Warp Messaging and to send cross-Subnet messages, but also accelerates the timeline for future P-Chain upgrades. These include, but are not limited to:

  • Arbitrary Subnet Rewards: The P-Chain currently restricts Elastic Subnets to follow the reward curve defined in a ‘TransformSubnetTx’. With sufficient BLS key adoption, Elastic Subnets can define their own reward curve and reward conditions. The P-Chain can be modified to take in a message indicating if a Subnet validator should be rewarded with how many tokens signed with a BLS Multi-Signature.
  • Subnet Attestations: The Primary Network or a Subnet can attest to the state of their Subnet with a BLS Multi-Signature. This can enable clients to fetch the current state of the Subnet without syncing the entire Subnet. StateSync enables clients to download chain state from peers up to a recent block near tip. However, it is up to the client to query these peers and resolve any potential conflicts in the responses. With Subnet Attestations, clients can query an API node to prove information about a Subnet without querying the Subnet's validators. This can especially be useful for Subnet-Only Validators to prove information about the C-Chain.

As mentioned earlier, ACP-62 proposes the shift to the new BLS key tx type, ‘AddPermissionlessValidatorTx’, accelerating towards the future of BLS-powered advancements in the Avalanche Network.

SHARE //
NEXT UP//
NFT

Salvor Secures Avalanche Rush with a $1M Incentive Grant to Build Out Avalanche’s Prime NFT Lending Platform

Gaming

Avalanche & Funtico: Revolutionizing Gaming on the Blockchain

Avalanche Watch: April 2024

DEFI

The Avalanche Foundation Announces Memecoin Rush

Institutions

Homium Issues First Home Equity Loans on Avalanche

Enterprise

Feature.io Uses Avalanche-Powered API to Bring Web3 to Any Streaming Platform or Media File

Enterprise

stc Bahrain and Avalanche forge partnership to drive Web3 progress in the Middle East

Enterprise

Avalanche x Seedhe Maut: Revolutionizing the Fan Engagement Economy with Metasky

Enterprise

Really Launches Avalanche Subnet to Expand Reach of On-Chain Movies

Developers

Frosty: Bringing Strong Liveness Guarantees to the Snow Family of Consensus Protocols

Platform

BitNote Launches Encrypted Notes on Avalanche

Platform

Avalanche Integrates with Stripe for Crypto Onramping

Avalanche Watch: March 2024

Platform

The Avalanche Foundation Unveils the Icebreaker Program

Community

The Avalanche Foundation Launches Ambassador DAO to Usher in the Next Wave of Users

The Avalanche Foundation Announces a New Board

Community

The Avalanche Foundation Discloses Community Coin Holdings

Platform

Avalanche Foundation Launches Community Grants Program with Gitcoin

Institutions

Clearpool Expands to Avalanche with Exclusive Launch of Credit Vaults

Enterprise

Coachella to Gamify the Festival Experience and Distribute New Rewards Using Avalanche

Developers

Startup Incubator Codebase Names First Cohort

Institutions

Diamond Standard Leverages Oasis Pro and Avalanche to Make Diamonds an Investable Asset Class

Institutions

Tokenization 101: The Tokenized Collateral Ecosystem

Enterprise

Avalanche Powers Web3-Enabled Voucher Program on Alipay+ D-store

Institutions

Avalanche and Chainlink Leveraged in Tokenized Asset Settlement Project

Developers

The Graph Expands Data Tools for Avalanche Developers

Community

Avalanche Foundation: Eligibility Criteria Framework for Community Coins

Platform

Avalanche Watch: February 2024

NFT

Best Dish Ever Launches NFTs on Avalanche, Pioneering the Future of Culinary Exploration

Gaming

Legendary MMORPG MapleStory Comes to Avalanche

Platform

Teleporter Makes Avalanche a Fully Interoperable L0 Network

Enterprise

Loyalty+ to Receive Multiverse Incentives to Spur AI-Enhanced Loyalty Programs

DEFI

SteakHut V2 Introduces New Liquidity Features on Avalanche

Enterprise

Avalanche to Power SI Tickets’ NFT Platform, Box Office

NFT

Looty and Inspect Launch Loyalty Platform with Loot Crate Rewards, Boosting Avalanche NFT Season

Platform

Durango: Avalanche Warp Messaging Comes to the EVM

Community

Avalanche DeFi Saga with Rep3

Institutions

Citi Tests Benefits of Private Markets Tokenization With Avalanche Evergreen Subnet ‘Spruce’

Enterprise

Avalanche Named Exclusive Sponsor of Collider on the Lot Startup Accelerator

Platform

Cortina: X-Chain Linearization

Avalanche Watch: January 2024

Gaming

Owned Blends SocialFi and Gaming on Avalanche with Battle Tech

Enterprise

The Empire State Building Launches NFT Loyalty Program on Avalanche Using Uptop

Institutions

Intain Launches Avalanche Subnet to Usher in New Era for Multi-Trillion Dollar Securitized Finance Market

Institutions

How Avalanche Uses Account Abstraction to Improve the Web3 Experience for Institutions

Institutions

Institutional Products, Pilots Signal Growing Interest in Tokenization

Enterprise

Edgevana to Provide Infrastructure to Avalanche Network, Expanding Validator Decentralization

Institutions

South Korean Digital Asset Custodian BDACS to Support Avalanche

DEFI

Struct Finance Joins Avalanche Rush with an Incentive Program of up to $1M

DEFI

Fonbnk Builds Avalanche On-Ramp for Cross-Border Payments in Emerging Markets

Platform

Avalanche Wallet Phase-Out Guide

Platform

Avalanche Watch: December Edition

Institutions

What is Asset Tokenization: Why & Why Now?

DEFI

Sub-Saharan Africa: A Land Of DeFi Opportunity

NFT

NFT-TiX Migrates to Avalanche and Announces Global Festival Partnerships

Enterprise

AR Platform Really to Upgrade Entertainment Using Avalanche

Gaming

Tiltyard Gives Web3 Games Tournaments and Fantasy Sports Features

DEFI

Hubble Exchange Launches Order Book DEX Built on a Custom Avalanche Subnet

Platform

Avalanche Watch: November Edition

Developers

NodeKit Raises a $1.2M Pre-Seed Round to Build a Shared Sequencer L1 with HyperSDK

Gaming

Mirai Labs Blends SocialFi and Web3 Gaming, Migrates to an Avalanche Subnet

Institutions

Republic Selects Avalanche for its Profit-Sharing Note, Gains Vista Support

Platform

Avalanche Watch: October Edition

Institutions

Avalanche Supports Citi FX Solution Under Project Guardian

Institutions

Onyx by J.P. Morgan Leverages Avalanche To Explore a New Paradigm for Portfolio Management

Platform

Avalanche Foundation Mission Statement and Reminder About System Unlocks

Developers

Web2 and Web3 Leaders Launch Codebase by Avalanche, an Accelerator Supporting Early-Stage Avalanche Projects

DEFI

Avalanche Expands Forex Market in Africa With Canza Finance’s Baki Launch

Platform

Avalanche Powers Metaverse Experience at Hong Kong FinTech Week

Gaming

5 Great Web3 Games Coming Soon

Institutions

Beneath the Surface: The Infrastructure Driving Tokenization Forward

Developers

Avalanche is Advancing Off-Chain Computation Services for Developers

Enterprise

Neal Stephenson’s LAMINA1 to Reimagine the Open Metaverse with New Layer 1 Built on Avalanche

Ava Labs Accelerates Push in India with Key Senior Hires

Platform

CCRI Finds Avalanche Emits 12x Less CO2 Than Ethereum, 300,000x Less CO2 Than Bitcoin

DEFI

The Tangible Benefits of Bringing Non-USD Stablecoins and FX On-Chain

Institutions

On-Chain Cash Management: Thematic Takeaways From Partner Discussions

Platform

7 Avalanche Use Cases

NFT

Builder Spotlight: Zeroone is Rethinking How NFT Enjoyers Create and Collect

Institutions

Navigating Tokenized Asset Investments for Institutional Buyers

NFT

Blockticity Mints $275M in Hemp and Other Product Certifications on Avalanche, Disrupting a $4.5T Industry

Developers

Introducing Firewood: A Next-Generation Database Built for High-Throughput Blockchains

Community

Builder Spotlight: Steven Gates Wants to Bring Subnets to the World

Community

Avalanche Foundation Launches Ted Yin Grant Program to Expand Open Source Technology Development

Enterprise

Korean Entertainment Giant Powers Ticketing Platform with Avalanche

Developers

Developer Spotlight: NodeKit’s Cofounder on Why Avalanche is “Unrivaled”

Platform

New Avalanche C-Chain Explorer Launches

Developers

Time to Finality (TTF): The Ultimate Metric for Blockchain Speed

Platform

Avalanche Watch: August Edition

Developers

Movement Labs Raises Pre-Seed Round, Launches Movement SDK To Reignite Web3’s Interoperable Future

Gaming

Builder Spotlight: Kam Punia’s Quest to Level Up Web3 RPGs

DEFI

Multiswap Launches with Plan to Unlock Swaps of 300+ Assets in a Single Transaction on Avalanche

Gaming

Korean Game Publisher Neowiz and Ava Labs Form Partnership

NFT

NFT Marketplace Hyperspace Makes EVM Debut on Avalanche

Enterprise

PlayThink and Loyalty Marketing Announce Plans for Web3 Ecosystem for 100M Japanese Users on Avalanche

NFT

Artist Spotlight: Three Creators Drawing the NFT Future

NFT

Artist Spotlight: Creators Expanding NFT Possibilities

DEFI

Dexalot Subnet Earns Avalanche Multiverse Incentives of up to $3 Million

Developers

Elastic Era: Considerations for Subnet Builders

Developers

Sigma Prime to Expand Security Tooling for Avalanche