Execution monitoring of security-critical programs in distributed systems: a specification-based approach | Synapse