  A plethora of different blockchain platforms have emerged in recent years,
but many of them operate in silos. As such, there is a need for reliable
cross-chain communication to enable blockchain interoperability. Blockchain
interoperability is challenging because transactions can typically not be
reverted - as such, if one transaction is committed then the protocol must
ensure that all related transactions are committed as well. Existing
interoperability approaches, e.g., Cosmos and Polkadot, are limited in the
sense that they only support interoperability between their own subchains, or
require intrusive changes to existing blockchains. To overcome this limitation,
we propose PIEChain, a general, Kafka-based cross-chain communication
framework. We utilize PIEChain for a practical case study: a cross-chain
auction in which users who hold tokens on multiple chains bid for a ticket sold
on another chain. PIEChain is the first publicly available, practical
implementation of a general framework for cross-chain communication.
