← Latest papers
💻 computer science

Function Recognition from Raw Power Side Channels in Bare-Metal Embedded Systems: Feasibility and Limits

This paper demonstrates that while recognizing specific C functions from raw power traces in bare-metal embedded systems is feasible using class-specific autoencoders, the approach faces inherent physical limits due to signal similarities and variations, positioning it as a complementary behavioral signal rather than a standalone security detector.

Original authors: Mohammed Mezaouli, Yehya Nasser, Samir Saudi, Marc-Oliver Pahl

Published 2026-11-10
📖 4 min read☕ Coffee break read

Original authors: Mohammed Mezaouli, Yehya Nasser, Samir Saudi, Marc-Oliver Pahl

Original paper licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

In the quiet, resource-constrained world of embedded systems, the tiny computers that run everything from industrial sensors to automotive controllers often operate without the safety nets of a full operating system. These "bare-metal" devices are efficient and fast, but their simplicity creates a blind spot for security monitors. Without an operating system to log every action, it is difficult to know what the software is actually doing while it runs. For years, researchers have looked for a way to peek inside these black boxes by listening to the physical signals the devices emit. Just as a person's heartbeat changes with their activity, these microcontrollers emit tiny fluctuations in electrical power consumption that shift depending on the code they are executing. This phenomenon, known as a power side channel, suggests that the physical energy usage of a device might reveal its internal software behavior, offering a way to verify what a machine is doing without needing to trust the machine itself.

A team of researchers at IMT Atlantique in France set out to test the limits of this idea. They asked a fundamental question: could they identify specific, common computer instructions—such as those that copy or clear memory—just by watching the raw power consumption of a device running continuously? To find out, they built a test environment using a standard microcontroller and a specialized oscilloscope to record the electrical current as the device ran various programs. They focused on five critical functions often involved in security vulnerabilities: memory copy, memory set, memory move, and two string-handling operations. The researchers did not try to decode the entire program or find specific bugs; instead, they wanted to see if the power trace alone could act as a reliable fingerprint to say, "This specific action is happening right now."

The team compared different methods to interpret these power traces. They tried advanced sequence models that look at patterns over time, similar to how a language model predicts the next word in a sentence. However, they found a more effective approach by training a separate, specialized model for each specific function. Imagine a security guard who has memorized the exact gait of five specific people; instead of trying to guess who everyone is, the guard simply checks if a person matches the known pattern of one of the five. If the person does not match any of the five, the guard ignores them. In their experiment, this method of using separate models for each function worked best. When the device ran a continuous stream of code containing these five target functions mixed with other activities, the system correctly identified the target functions 96% of the time. It missed the target only 4% of the time, a strong result for a passive monitoring system.

However, the study also revealed clear boundaries to what this technology can achieve. The researchers discovered that not all software functions leave a distinct enough mark on the power consumption to be easily recognized. Two specific functions, one used to allocate memory and another to copy strings, proved nearly impossible to distinguish from other operations. The memory allocation function was too consistent; it used almost the exact same amount of power regardless of the size of the memory being requested, leaving no variation for the system to latch onto. The string-copy function was too similar to other memory operations, creating a power signature that blended in with its neighbors. Because of this, the system struggled to tell these specific actions apart from the background noise of the device's other activities.

The results show that while raw power monitoring is a powerful tool for observing software behavior, it is not a magic bullet that can solve every security problem. The system successfully identified the presence of specific, security-relevant actions in a continuous stream of data without needing any software installed on the device itself. This provides an independent layer of evidence that can be used alongside traditional software logs. Yet, the high rate of false alarms—where the system incorrectly thought a target function was running when it was not—means this method cannot yet stand alone as a security alarm. It is a sensor that tells you a specific type of activity is likely occurring, but it requires other evidence to confirm if that activity is safe or dangerous. Ultimately, the work demonstrates that physical signals can reveal software behavior, but only up to the point where the physical signal itself stops providing enough unique information to tell the actions apart.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →