好莱坞科幻片Eagle Eye (鹰眼) 中有这么一幕:
政府军方高层得知自己研制的超级计算机获得了智能计划’造反’,于是他们在一个密封的小屋子里商量对策.
屋子里切断了一切电子通讯设备,墙壁足够厚,声音也传不到外面. 正当他们在里边商量对策的时候,某人在桌子上放了一杯水…结果悲剧了: 墙壁虽厚,却有玻璃窗, 智能计算机的摄像透过窗子,看到了杯子里面的水…
在说话的时候,声波传到杯子使水面震动产生波纹. 计算机通过图像分析震动, 计算出他们对话的内容……
听起来匪夷所思,不过我想说的是,类似的技术不仅已经存在,而且实验效果居然能达到高达80%的准确率. 这也是这篇文章的目的, 读
(sp)iPhone: Decoding Vibrations From Nearby Keyboards Using Mobile Phone Accelerometers
by Philip Marquardt (MIT),Arunabh Verma, Henry Cater and Patrick Traynor (Georgia Institute of Technology)
paper后感
这篇paper主要描述这样一种信息泄露实验:
当前的智能手机大多都内置了高灵敏的重力感应器 (Accelerometer), 这些重力感应器能接收到来自附近震源的信号 – 比如你把手机放在办公司或者家里的电脑旁边(我想大多数人都会这样吧),那么当你在敲键盘的时候, 手机的感应器是能感受到震动的.
因此,如果有黑客能控制到你的智能手机重力感应器,那么他就有可能由此知道你在附近的键盘上都输入了些什么内容! (注意, 黑客们并不需要控制你的电脑,只是你的手机重力感应器!)
这是如何做到的呢? marquardt et al 在文中提出这样一种输入模型:
- 对于某个键盘字符, 把它归类为 左(L) 或者 右(R) 键. 文中以TGB/YHN 划分左右(当然假定所用的是广泛采用的QWERTY键盘) 比如 ‘a’ 就属于L , ‘u’ 属于R
- 对于某两个连续输入的字符, 吧他们归类为 远(F) 或者 近 (N) , 远近的阀值文中取值为3,也就是说两个字符在键盘的位置相距超过3就认为’远’, 否则就为 ‘近’
比如输入’canoe’ 这个词, 其输入模型就是:
ca | an | no | oe |
LLN | LRF | RRF | RLF |
明显地,对于一个有n个字母的词, 其’两两’连续的序列有 n-1 个
有了这个模型后, marquardt et al 就通过建立训练模型,得到大量敲键与感应器特征向量的数据, 由此训练2个神经网络分类器, 一个用来分类 LR, 另一个用来分类FN. 再通过对比常用字典中词汇的LRFN,得知某个敲键序列的最大可能单词.
(其中一个实验结果,可见top1,2准确率达到了72.92%)
想知道更多细节,请下载paper吧.
感觉:
- 文中的实验文本类别都非常有限和类似,要达到自由文本的高识别率,还有一段路
- 现在的智能手机真灵敏啊
- 让你丫再把手机放电脑旁!