This repository is the canonical location for development and documentation of inter-chain standards utilised by the Cosmos network & interchain ecosystem. It shall be used to consolidate design rationale, protocol semantics, and encoding descriptions for the inter-blockchain protocol (IBC), including both the core transport, authentication, & ordering layer (IBC/TAO) and the application layers describing packet encoding & processing semantics (IBC/APP). Contributions are welcome.
The rendered, ordered set of all interchain standards written so far can be read as a single PDF.
Please see ICS 1 for a description of what a standard entails.
To propose a new standard, open an issue. To start a new standardisation document, copy the template and open a PR.
See PROCESS.md for a description of the standardisation process.
If you are diving in or planning to review inter-blockchain communication protocol specifications, the following are required reading:
All standards in the "draft" stage are listed here in order of their ICS numbers, sorted by category.
| Interchain Standard Number | Standard Title | Stage |
|---|---|---|
| 1 | ICS Specification Standard | Draft |
| Interchain Standard Number | Standard Title | Stage |
|---|---|---|
| 2 | Validity Predicate | Draft |
| 3 | Connection Semantics | Draft |
| 4 | Channel & Packet Semantics | Draft |
| 5 | Port Allocation | Draft |
| 18 | Relayer Algorithms | Draft |
| 23 | Vector Commitments | Draft |
| 24 | Host Requirements | Draft |
| 25 | Handler Interface | Draft |
| 26 | Relayer Module | Draft |
| Interchain Standard Number | Standard Title | Stage |
|---|---|---|
| 20 | Fungible Token Transfer | Draft |
Directed arrows indicate a dependency relationship (that origin depends on destination).