TempestSDR: Remote video eavesdropping using a software-defined radio platform


This project is a software toolkit for remotely eavesdropping video monitors using a Software Defined Radio (SDR) receiver. It exploits compromising emanations from cables carrying video signals.

Raster video is usually transmitted one line of pixels at a time, encoded as a varying current. This generates an electromagnetic wave that can be picked up by an SDR receiver. The software maps the received field strength of a pixel to a gray-scale shade in real-time. This forms a false colour estimate of the original video signal.

The toolkit uses unmodified off-the-shelf hardware which lowers the costs and increases mobility compared to existing solutions. It allows for additional post-processing which improves the signal-to-noise ratio. The attacker does not need to have prior knowledge about the target video display. All parameters such as resolution and refresh rate are estimated with the aid of the software.

The software consists of a library written in C, a collection of plug-ins for various Software Define Radio (SDR) front-ends and a Java-based Graphical User Interface (GUI). It is a multi-platform application, with all native libraries pre-compiled and packed into a single Java jar file.


  • JTempestSDR.jar is the self-contained multi-platform GUI executable. It should work with just a double click on most Windows/Ubuntu x86/x64 based machines. You can download here.
  • [Download dlls] contains the precompiled dll files for Linux/Windows x86/x64 which you can use in your own project under the GNU GPL license.

Double click on the JTempestSDR.jar file to launch. If it fails to launch, you will need to recompile the project.

TempestSDR tutorial.


Source: https://github.com/martinmarinov/