Когда клавиатура звучит слишком громко: как kbd-audio превращает звук в текст
Репозиторий давно не обновлялся
Последнее обновление было 3 года назад.
Вы когда-нибудь задумывались, что ваш механический клавиатурный клик — это не просто звук, а потенциальная утечка данных? Проект kbd-audio превращает эту теоретическую угрозу в работающий инструмент, который может угадывать нажатые клавиши по звуку. Давайте разберёмся, как это работает и зачем это нужно.
Что скрывается за акустическим перехватом
kbd-audio — это набор инструментов с открытым исходным кодом для анализа звуков клавиатуры. Основная фишка проекта — три версии инструмента Keytap, каждая из которых использует разные подходы для распознавания текста:
- Keytap — требует предварительного обучения на записях конкретной клавиатуры
- Keytap2 — использует статистику частотности букв и n-грамм в английском языке
- Keytap3 — полностью автоматизированная версия с улучшенными алгоритмами

Как это работает на практике
Попробовать технологии можно прямо в браузере через онлайн-демо:
Для локального использования проект предлагает:
git clone https://github.com/ggerganov/kbd-audio
cd kbd-audio
mkdir build && cd build
cmake ..
make
Основные зависимости — SDL2 для работы с аудио и FFTW3 для преобразования Фурье (опционально).
Техническая кухня проекта
Под капотом kbd-audio использует:
- Анализ акустических сигналов с микрофона
- Сравнение с эталонными образцами (Keytap)
- Статистические модели языка (Keytap2/3)
- Визуализацию звуковых волн для отладки
Инструмент view-gui позволяет увидеть, как выглядят «звуковые отпечатки» нажатий клавиш:

Кому это может быть полезно
- Разработчикам систем безопасности — для тестирования уязвимостей
- Криминалистам — как инструмент цифровой криминалистики
- Любителям механики — проверить, насколько их клавиатура «шумная»
- CTF-игрокам — в качестве нестандартного инструмента анализа
Как отмечают пользователи:
"This works incredibly well. I hope you realize what you've created" — ffpip
"This attack and Van Eck phreaking are why Edward Snowden, while typing passwords and other sensitive information, would pull a blanket over himself and his laptop" — aarchi
Стоит ли пробовать?
kbd-audio — это одновременно:
- Доказательство концепции уязвимости
- Готовый инструмент для пентеста
- Интересный пример анализа сигналов
Если вы работаете с информационной безопасностью или просто интересуетесь необычными технологиями — этот проект заслуживает внимания. Только не удивляйтесь, если после знакомства с ним захочется перейти на мембранную клавиатуру или печатать под одеялом.
P.S. Автор проекта Георгий Герганов (ggerganov) известен и другими интересными разработками в области обработки сигналов и машинного обучения.
