  Currently there exist many blockchains with weak trust guarantees, limiting
applications and participation. Existing solutions to boost the trust using a
stronger blockchain, e.g., via checkpointing, requires the weaker blockchain to
give up sovereignty. In this paper, we propose a family of protocols in which
multiple blockchains interact to create a combined ledger with boosted trust.
We show that even if several of the interacting blockchains cease to provide
security guarantees, the combined ledger continues to be secure - our
TrustBoost protocols achieve the optimal threshold of tolerating the insecure
blockchains. This optimality, along with the necessity of blockchain
interactions, is formally shown within the classic shared memory model,
tackling the long standing open challenge of solving consensus in the presence
of both Byzantine objects and processes. Furthermore, our proposed construction
of TrustBoost simply operates via smart contracts and require no change to the
underlying consensus protocols of the participating blockchains, a form of
``consensus on top of consensus''. The protocols are lightweight and can be
used on specific (e.g., high value) transactions; we demonstrate the
practicality by implementing and deploying TrustBoost as cross-chain smart
contracts in the Cosmos ecosystem using approximately 3,000 lines of Rust code,
made available as open source. Our evaluation shows that using 10 Cosmos chains
in a local testnet, TrustBoost has a gas cost of roughly $2 with a latency of 2
minutes per request, which is in line with the cost on a high security chain
such as Bitcoin or Ethereum
