70f14d6c846db34c6fed8ddfe5281e5656734a7e
Audio keylogger
inspired by https://ctftime.org/task/17576
Generator
Generates a wav file with keyboard sounds matching the privided input string. Only supports a-z and spaces, and should at least contain 250 characters to gain a statistically significant sample.
python3 ./generator.py <input>
Solver
Minimalistic solver example that samples the audio stream, and on detecting the start/end of sounds, calculates the average volume of that keystroke and maps it onto an arbitrary mono-alphabetic alphabet. The resulting "substitution cipher" can then be put through a solver to find the original text.
See test.sh for an example.
python3 ./solver.py output.wav
Languages
Python
87.3%
Shell
12.7%