> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cosmos.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Cross-Chain Validation

# Synopsis

This standard document specifies packet data structure, state machine handling logic, and encoding details for Cross-Chain Validation (CCV). CCV is the specific IBC level protocol that enables *Interchain Security*, a Cosmos-specific category of *Shared Security*.

At a high level, CCV enables a *provider chain* (e.g., the Cosmos Hub) to provide *security* to multiple *consumer chains*. This means that the validator sets on the consumer chains are chosen from the validator set of the provider chain (for more details, see the [Security Model](/ibc/latest/spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts#security-model) section).

The communication between the provider and the consumer chains is done through the IBC protocol over a *unique*, *ordered* channel (one for each consumer chain).

> Throughout this document, we will use the terms chain and blockchain interchangeably.

## Contents

* [Overview and Basic Concepts](/ibc/latest/spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts)
* [System Model and Properties](/ibc/latest/spec/app/ics-028-cross-chain-validation/system_model_and_properties)
* [Technical Specification: Data Structures and Methods](/ibc/latest/spec/app/ics-028-cross-chain-validation/technical_specification)
  * [Data Structures](/ibc/latest/spec/app/ics-028-cross-chain-validation/data_structures)
  * [Methods](/ibc/latest/spec/app/ics-028-cross-chain-validation/methods)

## Example Implementations

* Interchain Security [Go implementation](https://github.com/cosmos/interchain-security).

## History

Jun 27, 2022 - Draft written

Aug 3, 2022 - Revision of *Bond-Based Consumer Voting Power* property

Aug 29, 2022 - Notify Staking module of matured unbondings in `EndBlock()`

Dec 2, 2022 - Enable existing chains to become consumer chains

Dec 7, 2022 - Add provider-based timeouts

## Copyright

All content herein is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0).
