A code-driven tutorial on encrypted control: From pioneering realizations to modern implementations
Nils Schlüter, Junsoo Kim, Moritz Schulze Darup
TL;DR
The paper addresses confidentiality of process data in networked CPS by introducing encrypted control and a code-driven tutorial that demonstrates practical encrypted implementations of basic controllers. It systematically surveys Paillier, GSW, and CKKS, explaining how fixed-point encoding and integer reformulations enable real-valued control computations on encrypted data with varying multiplicative depths. The authors provide concrete MATLAB toolbox implementations for state feedback and PI control under encryption, along with numerical experiments that validate that encrypted closed-loop behavior closely matches plaintext performance under reasonable encoding parameters. This work lowers the barrier to adopting encrypted control in practice by offering concrete, executable examples and a clear discussion of tradeoffs such as encoding error and depth limitations, making encrypted control more accessible to researchers and practitioners.
Abstract
The growing interconnectivity in control systems due to robust wireless communication and cloud usage paves the way for exciting new opportunities such as data-driven control and service-based decision-making. At the same time, connected systems are susceptible to cyberattacks and data leakages. Against this background, encrypted control aims to increase the security and safety of cyber-physical systems. A central goal is to ensure confidentiality of process data during networked controller evaluations, which is enabled by, e.g., homomorphic encryption. However, the integration of advanced cryptographic systems renders the design of encrypted controllers an interdisciplinary challenge. This code-driven tutorial paper aims to facilitate the access to encrypted control by providing exemplary realizations based on popular homomorphic cryptosystems. In particular, we discuss the encrypted implementation of state feedback and PI controllers using the Paillier, GSW, and CKKS cryptosystem.
