Iroh 1.0
Iroh 1.0: Shifting the Paradigm to Dial Keys
June 15, 2026 | Published by b5
The Philosophy: Dial Keys, Not IPs
The core premise of Iroh is straightforward, yet it represents the necessary evolution of internet connectivity. For too long, we have relied on IP addresses—a system fraught with instability.
"IP addresses are fragile; they can vanish or change without warning, and the user has zero control over this process."
Unlike IPs, Dial Keys are persistent. They remain constant as your device migrates across networks and are entirely under your ownership. While traditional IPs are often trapped behind restrictive firewalls, Iroh ensures your device remains securely addressable regardless of its physical or network location.
We believe this is the fundamental way the internet should operate. Today, we are thrilled to announce the arrival of iroh version 1.0.
A Journey to Stability
While 1.0 is our first stable release, it is the culmination of an intense development cycle spanning 65 previous versions and over four years of open-source building. The scale of adoption is already evident: in the last 30 days alone, our public relays have processed over 200 million endpoint creations.
Real-World Applications
Developers are currently leveraging Iroh for a diverse array of use cases:
- 🎥 High-bandwidth video streaming
- 🤖 Training Large Language Models (LLMs) and interacting with AI agents
- 🔐 End-to-end secure chat systems
- 🎮 Low-latency multiplayer gaming
- 📂 Peer-to-peer file transfers
Technical Foundations
We have prioritized open standards, leaning heavily on IETF drafts. Our technical stack includes:
- QUIC Multipath: A custom implementation allowing Iroh to manage several routes within one connection and "hot swap" them as network conditions fluctuate.
- QUIC NAT Traversal: Enabling direct peer-to-peer connections while keeping the underlying connection metadata encrypted.
- Local-First Logic: Full configurations that allow devices to discover and connect to one another on a local network without requiring an internet connection.
- WASM Integration: Continuous testing to ensure Iroh compiles to WebAssembly for browser-based execution.
- Extensibility:
- Hooks: Power users can inject custom logic to dictate connection behavior.
- Custom Transports: Support for
Bluetooth Low-Energy (BLE),WiFi Aware,Tor, and the upcomingLoRaimplementation.
All of these diverse technologies are unified under a single dial-by-key abstraction.
The Power of the Key
The utility of the dial key extends beyond simple connectivity. Because the key secures all incoming data, it serves as the root for:
- Identity
- Permissions
- Attribution
Efficiency and Cost
By using keys to establish direct paths, Iroh minimizes reliance on centralized cloud infrastructure.
When of data moves directly between devices, the result is a twofold win:
- Lower Costs: Reduced cloud egress fees.
- Better Performance: Fewer router hops lead to a more efficient global internet.
Expanded Language Support
We previously paused Foreign Function Interface (FFI) support to avoid API churn during rapid development. With the stability of 1.0, we are delivering on our promise to bring it back.
In addition to the core Rust crate, we now officially support:
PythonNode.jsKotlin(Ideal for Android apps)Swift(Ideal for iOS apps)
Stability and Support Policy
Wire and API Stability
Iroh 1.0 guarantees stability for both the wire protocol and the language APIs. This means any v1 endpoint can communicate with any other v1 endpoint, regardless of the language used or the minor version installed.
- Future Versioning: We may version APIs and the wire protocol independently.
- Breaking Changes: Any modification to wire stability will only occur during a major release.
Support Schedule
Major and minor versions following 1.0 will be supported on a formal schedule.
Canary (0.9x) and Release Candidates (1.0.0-rcX) are no longer supported as of today. If you encounter a bug in an older version, please update to 1.0 before filing a report.
Public Relay Lifecycle
Public relays (typically accessed via the n0 preset) follow this sunset schedule:
| Release Version | Public Relay End-of-Life |
|---|---|
v1.0 | Until General EOL |
v0.35x | December 31, 2026 |
v0.9x / v1.0.0-rcX | September 30, 2026 |
Note: Relay binaries are open source, and hosted relays are available via Iroh services. Public relays are subject to rate-limiting.
Get Started Today
The era of dialing keys is here. You now have a production-ready networking stack to integrate into your applications with total confidence.
Your Onboarding Checklist
- Read the Quickstart Guide
- Explore the Source Code
- Join the Discord Channel
Join the conversation:
Reddit | HackerNews | Bluesky | X.com
// Example: Conceptualizing a dial-by-key connection
let endpoint = iroh::Endpoint::new().await?;
let node_key = "K7...example_key...z9";
endpoint.connect(node_key).await?;
println!("Connected securely via Dial Key!");