A computer-implemented method (400, 500) for facilitating detection of attacks in a cyber-physical system of interacting elements with physical inputs and outputs, the method comprising: receiving, by a first entity of a plurality of entities, a first reading from a first set of sensors of the cyber-physical system via a first network, wherein the first set of sensors are operating on the first network; receiving, by the first entity, a second reading from a second set of sensors of the cyber-physical system via a second network, wherein the second set of sensors is a set of redundant sensors for the first set of sensors, wherein the second set of sensors are operating on the second network which is a redundant network for the first network, wherein the second network includes security measures which prevent access by any external entity, and wherein the first reading and the second reading are received by other entities of the plurality of entities; executing (406, 410), by the first entity and the other entities, a set of instructions which is a smart contract based on the first reading and the second reading; determining, by the first entity and the other entities, whether a result of the executed smart contract matches an expected condition; in response to determining a consensus of the result of the executed smart contract by a majority of the plurality of entities, writing the result to a block chain; and in response to determining, by at least one of the entities, that the result of the smart contract does not match the expected condition, performing a remedial action based on the result, wherein the remedial action comprises at least one of: generating a notification for any of the other entities of the plurality of entities; or performing an action associated with investigating the result. receiving, by a first entity of a plurality of entities, a first reading from a first set of sensors of the cyber-physical system via a first network, wherein the first set of sensors are operating on the first network; receiving, by the first entity, a second reading from a second set of sensors of the cyber-physical system via a second network, wherein the second set of sensors is a set of redundant sensors for the first set of sensors, wherein the second set of sensors are operating on the second network which is a redundant network for the first network, wherein the second network includes security measures which prevent access by any external entity, and wherein the first reading and the second reading are received by other entities of the plurality of entities; executing (406, 410), by the first entity and the other entities, a set of instructions which is a smart contract based on the first reading and the second reading; determining, by the first entity and the other entities, whether a result of the executed smart contract matches an expected condition; in response to determining a consensus of the result of the executed smart contract by a majority of the plurality of entities, writing the result to a block chain; and in response to determining, by at least one of the entities, that the result of the smart contract does not match the expected condition, performing a remedial action based on the result, wherein the remedial action comprises at least one of: generating a notification for any of the other entities of the plurality of entities; or performing an action associated with investigating the result. generating a notification for any of the other entities of the plurality of entities; or performing an action associated with investigating the result.