---
# System prepended metadata

title: Untitled

---

Introduction:
CAIP stands for Chain Agnostic Improvement Proposals. It defines the standard for protocols that is not specific to a single chain aka multi chain protocol.

The problem: 
It is a great challenge for a multichain protocol to differentiate entities and transactions that are spread across different chains. This can create confusion and complexity in tracking and managing those data. Protocols tend to come up with their own standard of differentiating chains that makes it incompatible with other multichain protocols. 

Let's consider an example. In case of Push Protocol, a subscriber can receive notifications from various supported chains. But it will be really hard to different and maintain these data just through the subscriber's address as it won't help us different the notifications from different chains.

The solution:

Chain Agnostic Standards Alliance(CASA) which is an open source collaboration of various protocols in the web3 space. They came with a standard called CAIP that helps standardize the way we represent each transaction and entities in a blockchain. It creates a global standard that makes it easier to identify entities of a blockchain which in turn reduces the complexity of maintaining those data. It also helps different multi chain protocols compatible. There are different CAIP formats denoted by CAIP-N where N is a Natural number to identify different entities of a blockchain. For example, CAIP-2 defines the standard to define each blockchain and CAIP-10 defines the standard to represent the addresses of a blockchain. 

At Push Protocol, we extensively use CAIP-10 to identify an address in different blockchains. This helps us differentiate the alias of a channel in different chains, get the list of notifications targeted to a specific wallet in different chains and also to target a notification to a specific wallet address. It is composed of three main components
1. Namespace: It covers a class of similar blockchains. Usually it describes an ecosystem or standard, such as e.g eip155 helps represent the EVM class of blockchains.
2. Chain id: It represent a specific blockchain within a class of blockchains. e.g. 1 is used to identify Ethereum mainnet and 137 is used to identify Polygon Mainnet 
3. Account: It is a case sensitive alphanumeric that resprent an address in the native blockchain format. Eg: example if solana and Ethereum address.

Combining all these three helps us identify an address and to what blockchain it belongs to.

Introduction:
CAIP stands for Chain Agnostic Improvement Proposals. It defines the standard for protocols that is not specific to a single chain aka multi chain protocol.

The problem: 
It is a great challenge for a multichain protocol to differentiate entities and transactions that are spread across different chains. This can create confusion and complexity in tracking and managing those data. Protocols tend to come up with their own standard of differentiating chains that makes it incompatible with other multichain protocols. 

Let's consider an example. In case of Push Protocol, a subscriber can receive notifications from various supported chains. But it will be really hard to different and maintain these data just through the subscriber's address as it won't help us different the notifications from different chains.

The solution:

Chain Agnostic Standards Alliance(CASA) which is an open source collaboration of various protocols in the web3 space. They came with a standard called CAIP that helps standardize the way we represent each transaction and entities in a blockchain. It creates a global standard that makes it easier to identify entities of a blockchain which in turn reduces the complexity of maintaining those data. It also helps different multi chain protocols compatible. There are different CAIP formats denoted by CAIP-N where N is a Natural number to identify different entities of a blockchain. For example, CAIP-2 defines the standard to define each blockchain and CAIP-10 defines the standard to represent the addresses of a blockchain. 

At Push Protocol, we extensively use CAIP-10 to identify an address in different blockchains. This helps us differentiate the alias of a channel in different chains, get the list of notifications targeted to a specific wallet in different chains and also to target a notification to a specific wallet address. It is composed of three main components
1. Namespace: It covers a class of similar blockchains. Usually it describes an ecosystem or standard, such as e.g eip155 helps represent the EVM class of blockchains.
2. Chain id: It represent a specific blockchain within a class of blockchains. e.g. 1 is used to identify Ethereum mainnet and 137 is used to identify Polygon Mainnet 
3. Account: It is a case sensitive alphanumeric that resprent an address in the native blockchain format. Eg: example if solana and Ethereum address.

Combining all these three helps us identify an address and to what blockchain it belongs to.

Introduction:
CAIP stands for Chain Agnostic Improvement Proposals. It defines the standard for protocols that is not specific to a single chain aka multi chain protocol.

The problem: 
It is a great challenge for a multichain protocol to differentiate entities and transactions that are spread across different chains. This can create confusion and complexity in tracking and managing those data. Protocols tend to come up with their own standard of differentiating chains that makes it incompatible with other multichain protocols. 

Let's consider an example. In case of Push Protocol, a subscriber can receive notifications from various supported chains. But it will be really hard to different and maintain these data just through the subscriber's address as it won't help us different the notifications from different chains.

The solution:

Chain Agnostic Standards Alliance(CASA) which is an open source collaboration of various protocols in the web3 space. They came with a standard called CAIP that helps standardize the way we represent each transaction and entities in a blockchain. It creates a global standard that makes it easier to identify entities of a blockchain which in turn reduces the complexity of maintaining those data. It also helps different multi chain protocols compatible. There are different CAIP formats denoted by CAIP-N where N is a Natural number to identify different entities of a blockchain. For example, CAIP-2 defines the standard to define each blockchain and CAIP-10 defines the standard to represent the addresses of a blockchain. 

At Push Protocol, we extensively use CAIP-10 to identify an address in different blockchains. This helps us differentiate the alias of a channel in different chains, get the list of notifications targeted to a specific wallet in different chains and also to target a notification to a specific wallet address. It is composed of three main components
1. Namespace: It covers a class of similar blockchains. Usually it describes an ecosystem or standard, such as e.g eip155 helps represent the EVM class of blockchains.
2. Chain id: It represent a specific blockchain within a class of blockchains. e.g. 1 is used to identify Ethereum mainnet and 137 is used to identify Polygon Mainnet 
3. Account: It is a case sensitive alphanumeric that resprent an address in the native blockchain format. Eg: example if solana and Ethereum address.

Combining all these three helps us identify an address and to what blockchain it belongs to.

