Harmonia: Securing Cross-Chain Applications Using Zero-Knowledge Proofs