车门不是那么好开的

本文以自己的菜车为例分析了其无线钥匙的安全性。包括编码方式,滚动码窗口,芯片等。本想通过解码大量数据,破解其加密算法的,但发觉并没有那么容易。

信号分析

车钥匙发出的是433MHz的无线电信号,ASK调幅模式。首先用ASK接收模块解调(详见前文),并用逻辑分析仪观察其波形。

下图中:

  • Overview 里有两个完整的钥匙信号(以3个较长的低电平分隔);
  • 第一次Zoom in显示了一个完整的信号;
  • 第二次Zoom in只显示了前导(Leading)和开始(Start)部分的波形。
车钥匙无线电信号概况

图中只是尝试用 PWM 解码(因为 PWM 在无线电遥控中用得比较多),但实际上并不一定是 PWM。

和其它无线电遥控类似,一次按键会发送多个重复的信号,它们的数据是相同的,以确保接收端会收到。
不过这个车钥匙的第一个信号的前导波形会更长一些,可能是要确保接收端被唤醒。

下图是连续两次按键的信号。可以看出:

  • 前导部分波形一样;
  • 第一个红圈里的波形一样;
  • 两个红圈之间的波形完全不一样;
  • 第二个红圈里的波形相反。
连续两次按键的信号波形

至此,基本可以确定不是固定码。如果是固定码,打开车门就太容易了。

差分曼彻斯特编码

下图是常用的单线编码(图片来自WiKi

Biphase系列就是通常说的曼彻斯特编码,其中Biphase-S和差分曼彻斯特只是平移半个周期(并反向)的关系,所以可认为是一回事。而Biphase-M和Biphase-S是按位取反关系(即0和1的对应关系反过来),所以也可以认为是等价的。下面以“差分曼彻斯特编码”来统称。

常用的单线编码(主要看不同的曼彻斯特编码类型)

观察我的车钥匙的波形,可以和差分曼彻斯特编码对应起来。主要表现在:

  • 波形数据中只有两种宽度的电平,并且是两倍关系;
  • 窄的电平是成对出现的。(其实这种编码简单地说就是:两个窄电平表示0,一个宽电平表示1)

差分曼彻斯特编码还有一个特性是:波形反相,表示的数据相同。这说明上图中第二个红圈中的波形其实是表示相同的数据。这也比较合符逻辑。

综上,我们可认为其编码方式是差分曼彻斯特编码。

顺便说一下,曼彻斯特编码也是很常用的,比如以太网中就是。另外,后续的收发测试表明,这种编码比PWM的抗干扰能力要强。

解码的数据

下面是按同一把车钥匙的同一个键依次得到的实际数据:

0x7283df 664fac42ae d22d
0x7283df 0d2ea18d3e d22d
0x7283df 1f78611523 d22d
0x7283df c37b06f96b d22d
0x7283df fa0eff1919 d22d
0x7283df 6bec6e956e d22d
0x7283df 2a83ccbc78 d22d

可以看到,总共80 bit,只有中间40 bit的数据在变。通过按不同的键,以及换另一把钥匙试验,可以得出:

  • 前24 bit (0x7283df) 中包含钥匙相关的信息;
  • 后16 bit (0xd22d) 是操作码,即开门、关门,开后备箱等。
  • 中间的40 bit就是传说中的滚动码了。肉眼看,毫无规律。

实验1:简单重放

  1. 录下(解码)钥匙信号;
  2. 再(编码)发送出去。

结果:显然是开不了车门的。滚动码的特征是用过就作废。

实验2:截获重放

  1. 把钥匙和车分隔(确保车收不到钥匙信号);
  2. 录下(解码)钥匙信号;
  3. 再(编码)发送给车。

结果:可以开门。由于车没有收到原始的钥匙信号,截获的信号是有效的。

这个实验看似简单,其实也说明了不少问题:

  • 钥匙和车之间的通讯是单向的,不存在动态认证的过程;
  • 信号是时间无关的(即不会随时间过期),只与顺序相关。

而且这个实验是盗车手段的原型。即盗贼通过干扰器阻止汽车接受钥匙信号,自己把钥匙信号保存下来,然后用来开门。

实验3:操作码替换

  1. 把钥匙和车分隔(确保车收不到钥匙信号);
  2. 录下(解码)关门时的钥匙信号;
  3. 把关门的操作码替换为开门的;
  4. 再(编码)发送给车。

结果:可以开门。这说明同一把钥匙,不同的操作是共用一个滚动码序列的。

另外,因为组装数据重新编码后汽车接收端能接受,这也进一步确认了差分曼彻斯特的编码方式。

实验4:滚动码窗口测试

有文章说某种伪随机数的滚动码的窗口是256。超过这个窗口,会导致开不了门,或需要复位。我们可以测试一下。

  1. 把钥匙和车分隔(确保车收不到钥匙信号);
  2. 连续按开门键360次(远远超过了256);
  3. 再把钥匙拿到车附近,按开门键。

结果:可以开门。这说明,我的车的滚动窗口是大于256的,或者根本没有“窗口”。至于到底是怎样,就不得而知了。

注意:这个实验有一定的危险性,因为万一有256的窗口限制,会有可能导致开不了门。但我在实验的时候,录下了这360次的钥匙信号,万一开不了,可以用这些录下来的信号去开门。但如果不能录下信号,就不要随便做这个实验了。

芯片分析

为了找到加密算法的线索,我拆开了车钥匙。其主芯片是 NXP 61X0915,应该是一款汽车钥匙专用的单片机。但网上找不到Datasheet。
问了一些朋友,说这个资料就是不公开的。也许是出于安全考虑吧。

车钥匙芯片

参考

下面主要是一些加密算法相关的链接。有一些算法是已被破解了的。但对于普通人,尤其是在没有额外信息的前提下,破解并不是那么容易的。总之,没在自己的菜车上验证通过,就不多说了。

结语

本文对车钥匙的无线电信号进行了解码和编码的一些测试。确定是差分曼彻斯特编码。通过模拟拦截无线电信号,可以打开车门,证明钥匙和车之间是没有时间信息的单向通讯。这种方式也是中级盗车贼的简易手段。即使只拦截或窃取了关门信号,也有可能用于开门(至少对于我的车是可以的)。所以,只要“偷走”车钥匙的一个无线按键信号,就有可能把车门打开。

另外,我的车并没有传说中的256的滚动码窗口。从芯片上也得不到加密算法的线索。安全级别也算高了一点。

对于加密码算法的直接破解,并不是那么容易。有些破解可能是基于一些额外的信息,比如泄密的密钥(或者密钥发行体系的隐患,比如一个厂家多款车共用一个根密钥,容易导致泄密)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,137评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,824评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,465评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,131评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,140评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,895评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,535评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,435评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,952评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,081评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,210评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,896评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,552评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,089评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,198评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,531评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,209评论 2 357

推荐阅读更多精彩内容

  • 之前做过的项目有需要通过音频口通信用方波来收发数据,由于这方面的资料比较少,下面就介绍下其原理,希望能给大家帮助。...
    操哥阅读 8,565评论 12 58
  • 1、嵌入式系统的定义 (1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本...
    荣卓然阅读 1,823评论 0 5
  • 什么是嵌入式 IEEE(Institute of Electrical and Electronics Engin...
    Leon_Geo阅读 3,711评论 1 20
  • 我在想,什么是黑暗?黑暗带给人怎样的感觉?假如,我们眼前一片漆黑,看不到任何东西,只有空邈邈的无边无尽的黑暗,而这...
    哈路AI阅读 244评论 0 1
  • ——《我的朋友很少》剧评 2015年的时候,大概是上半年在布丁上看到了这部动漫,同样是被它的名字吸...
    夏目心叶阅读 1,049评论 0 2