Paper 2023/163
Hardware-Software Co-design for Side-Channel Protected Neural Network Inference
Abstract
Physical side-channel attacks are a major threat to stealing confidential data from devices. There has been a recent surge in such attacks on edge machine learning (ML) hardware to extract the model parameters. Consequently, there has also been some work, although limited, on building corresponding side-channel defenses against such attacks. All the current solutions either take the fully software or fully hardware-centric approaches, which are limited either in performance or flexibility. In this paper, we propose the first hardware-software co-design solution for building side-channel-protected ML hardware. Our solution targets edge devices and addresses both performance and flexibility needs. To that end, we develop a secure RISC-V-based coprocessor design that can execute a neural network implemented in C/C++. The coprocessor uses masking to execute various neural network operations like weighted summations, activation functions, and output layer computation in a side-channel secure fashion. We extend the original RV32I instruction set with custom instructions to control the masking gadgets inside the secure coprocessor. We further use the custom instructions to implement easy-to-use APIs that are exposed to the end-user as a shared library. Finally, we demonstrate the empirical side-channel security of the design with 1M traces.
Metadata
- Available format(s)
- Category
- Applications
- Publication info
- Preprint.
- Keywords
- machine learning inferenceside-channel analysismaskingflexibility
- Contact author(s)
-
aanujdu @ ncsu edu
aaysu @ ncsu edu - History
- 2023-02-15: approved
- 2023-02-10: received
- See all versions
- Short URL
- https://ia.cr/2023/163
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2023/163, author = {Anuj Dubey and Rosario Cammarota and Avinash Varna and Raghavan Kumar and Aydin Aysu}, title = {Hardware-Software Co-design for Side-Channel Protected Neural Network Inference}, howpublished = {Cryptology {ePrint} Archive, Paper 2023/163}, year = {2023}, url = {https://eprint.iacr.org/2023/163} }