Welcome to the course
Learn about Interchain Messaging, the interoperability protocol of Avalanche.
In this course, you will learn how to build cross-Subnet Solidity dApps with Interchain Messaging and Avalanche Warp Messaging.
Why Take This Course?
A significant innovation in blockchain is the development of multi-chain systems, like Avalanche, which provide a significant improvement in scalability, interoperability, and flexibility. At the core of these multi-chain systems is the ability to run multiple blockchains that communicate. Each chain's VM is optimized for specialized use cases, thereby boosting the network's overall performance.
Cross-chain communication is a crucial building block of multi-chain systems. Utilizing Interchain Messaging and Avalanche Warp Messaging is an incredible easy way to build cross-Subnet dApps, since developers can build on top an extensive and audited development framework.
Course Content
Below you can find a 30 minute recording of a presentation about Avalanche Warp Messaging and Teleporter. This summarizes the content of the first chapters:
Interoperability
In the first section, we cover some basic concepts of interoperability in multi-chain systems. You will learn about examples of interoperability between blockchains and the terms "source," "destination," and "message."
Avalanche Interchain Messaging
In this section, we learn what Avalanche Interchain Messaging is and what is abstracted away from the general dApp developer. You will also build your first cross-Subnet dApps.
Securing Cross-Chain Communication
In this section, we look at techniques to secure cross-chain communication. We dive into signature schemes, multi-signature schemes, and the BLS multi-signature scheme.
Avalanche Interchain Messaging Protocol
Avalanche blockchains can natively interoperate between one another using AWM. You will learn about the AWM message format and how the message flow works.
Prerequisites
Avalanche
This course is meant for people with a solid understanding of the basic concepts of Avalanche. You should be familiar with these concepts:
- Virtual Machines: What they are and what VM customization means
- Avalanche L1s & Blockchains: What the difference between a VM, Blockchain, and an Avalanche L1 is
If any of this is unclear, we strongly recommend taking the Avalanche Fundamentals and Multi-Chain Architecture courses first.
Software Development
You will need a general understanding of Software Development. You won't have to write a lot of code, but you will have to understand some. Therefore, we recommend:
- Solidity: Familiarity with most concepts of the language. All exercises will mainly consist of writing cross-subnet dApps in Solidity.
- Docker: The advanced exercises in the latter part of the course will occur in contained environments for easy setup. It will help if you're generally familiar with the concept of containerization, docker, and docker compose.
- Testing: Having some experience or familiarity with unit testing is ideal.
Learning Outcomes
By the end of this course, students will:
- Understand the challenges of cross-chain communication
- Know what separates Avalanche Warp Messaging from other cross-chain communication protocols
- Understand the differences between Avalanche Warp Messaging and Teleporter
- Apply their knowledge by building cross-Avalanche L1 dApps, such as asset bridges
Overall, this course aims to provide an advanced understanding of Teleporter. By completing this course, students will be better prepared to build advanced cross-Avalanche L1 blockchain applications.