Proof of Aliveness presented at ACSAC2019 2019

by Marten van Dijk, Zheng Yang, Jianying Zhou, Chenglu Jin,

Summary : In 2017, malware Triton was discovered in a petrol plant in Saudi Arabia, and it shut down the safety instrumented systems in the affected industrial control system without being noticed by the operators. If the malware was not discovered by a security company on time, it could leave the system running without any safety measures, and eventually lead to an explosion. To detect such attacks, one can track the running status of the devices in the field to know that they are still ``alive''. However, in practice, there yet does not exist an efficient and cryptographically secure mechanism/ protocol that can prove the aliveness of a device to control centers over an open network.This paper aims to tackle this practical problem by introducing a new cryptographic notion called Proof of Aliveness (PoA). We propose to use a one-way function (OWF) chain structure to build an efficient proof of aliveness, such that the prover sends every node on the OWF chain in a reverse order periodically, and it can be verified by a verifier with the possession of the tail (last node) of the OWF chain. However, the practicality of this construction is limited by the finite number of nodes on an OWF chain. We enhance our first PoA construction by linking multiple OWF chains together using a pseudo-random generator chain. By integrating one-time signature schemes into the structure, we can achieve auto-replenishment of aliveness-proofs, which implies that this PoA can be used forever without an interruption for reinitialization.To make our proposals more practical, we analyzed the security of the above PoA proposals in the standard model. Besides that, we also specifically defined a security model for the concept of PoA. Our PoA constructions are implemented and evaluated on Raspberry Pis for a demonstration of its performance.