>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
C-plus-plus

当键盘声音太大时:kbd-audio 如何将声音转为文字

你是否曾想过,机械键盘的咔嗒声不仅仅是声音,还可能是一种数据泄露的途径?kbd-audio 项目将这种理论威胁转化为了一个实际可用的工具,能够通过声音猜测按键内容。让我们来了解一下它的工作原理以及为何需要关注这个问题。

声学窃听的背后是什么

kbd-audio 是一个用于键盘声音分析的开源工具包。该项目的主要特点是三个版本的 Keytap 工具,每个版本使用不同的文本识别方法:

  1. Keytap — 需要事先对特定键盘的录音进行训练
  2. Keytap2 — 使用英文字母频率统计和 n-gram 模型
  3. Keytap3 — 完全自动化版本,算法有所改进

Keytap demo

实际工作原理

你可以通过在线演示直接在浏览器中体验这些技术:

本地使用时,项目提供:

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 工具让你可以看到按键的"声音指纹"是什么样的:

Sound wave visualization

谁会觉得这有用

  1. 安全系统开发者 — 用于测试漏洞
  2. 取证专家 — 作为数字取证工具
  3. 机械键盘爱好者 — 检查他们的键盘有多"吵"
  4. CTF 玩家 — 作为一种非标准的分析工具

用户评价:

"这效果令人难以置信。我希望你意识到你创造了什么" — ffpip

"这种攻击和 Van Eck 窃听正是为什么 Edward Snowden 在输入密码和其他敏感信息时会用毯子把自己和笔记本电脑盖起来的原因" — aarchi

值得一试吗?

kbd-audio 同时是:

  • 漏洞的概念验证
  • 随时可用的渗透测试工具
  • 信号分析的有趣案例

如果你从事信息安全工作,或者只是喜欢探索非传统技术,这个项目值得关注。只是别惊讶——在了解它之后,你可能会想换一把薄膜键盘,或者开始躲在毯子下面打字。

附:项目作者 Georgi Gerdjikov(ggerganov)还以其他信号处理和机器学习方面的有趣开发而闻名。

相关项目