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.
For a list of IBC implementations, IBC-supporting blockchains, and special IBC bridges, see ECOSYSTEM.md.
To add your project to this list, submit a pull request.
Learn more about the IBC Ecosystem Working Group.
Check out a list of frequently asked questions.
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.
Learn more about the IBC Steering Committee.
If you are planning to review inter-blockchain communication protocol specifications, the following are required reading:
Translated versions of some of these documents can be found in the translation folder.
All standards at or past the "Draft" stage are listed here in order of their ICS numbers, sorted by category.
Interchain Standard Number | Kind | Standard Title | Stage |
---|---|---|---|
1 | Meta | ICS Specification Standard | Draft |
Interchain Standard Number | Kind | Standard Title | Stage |
---|---|---|---|
2 | Interface | Client Semantics | Draft |
3 | Instantiation | Connection Semantics | Draft |
4 | Instantiation | Channel & Packet Semantics | Draft |
5 | Interface | Port Allocation | Draft |
6 | Instantiation | Solo Machine Client | Draft |
7 | Instantiation | Tendermint Client | Draft |
9 | Instantiation | Loopback Client | Draft |
10 | Instantiation | GRANDPA Client | Draft |
18 | Interface | Relayer Algorithms | Draft |
23 | Interface | Vector Commitments | Draft |
24 | Interface | Host Requirements | Draft |
25 | Interface | Handler Interface | Draft |
26 | Interface | Routing Module | Draft |
Interchain Standard Number | Kind | Standard Title | Stage |
---|---|---|---|
20 | Instantiation | Fungible Token Transfer | Draft |
27 | Instantiation | Interchain Accounts | Draft |
Directed arrows indicate a dependency relationship (that origin depends on destination).