The link to the IBC paper is dead
https://github.com/cosmos/ibc/raw/master/CosmosIBCSpecification.pdf
I have some general questions about IBC
Overview
The way I am understanding IBC is that each pair of chains that can transact directly will do so through a pair of on chain light clients doing validation of the other chain, thus allowing assertions about the state of the other chain. Hubs are introduced as a way to avoid having to introduce a new light client on each existing chain for each new chain that arrives.
Is this correct?
PegZones
It is stated that PegZones, which are separate Tendermint style chains, are required when connecting to a chain without strong finality guarantees , e.g. probabilistic finality in PoW chains. The way it is described, the PegZone just picks some fixed threshold block depth to consider probabilistic chain finalised. But in the model, as I describe above, its not clear why you need an entirely new chain to do this? why cant the light client doing the validation do this directly?
Arbitrary state
Why is it that IBC only supports token balances now? are there novel conceptual challenges which emerge when one attempts to support arbitrary state? Again, as described above, it would not seem so.