针对日益增长的汽车遥控无钥匙进入系统(RKE)市场,飞思卡尔半导体近期推出了包含硬件和软件安全协议(VKSP)的整体解决方案。
RKE由发射端(遥控钥匙)和集成于车身控制模块中的接收端组成。发射端将用户按键命令通过数据编码、加密和组帧后通过射频发射电路发射,而车内接收端则将接收到的信号通过射频解调、数据解码和帧解密后完成棚应车门、车灯控制和报警等用户指令。系统框图如图1。
发射端:使用Freescale低端8位MC9S08QG4/8(4K/8K Flash)微控制器完成用户按键的数据编码、加密组帧,再通过SAW声表谐振器电路发射至UHF频段。
接收端:使用UHF射频接收芯片MC33596完成信号解调和数据曼彻斯特解码,再将数据传送到车身主控芯片(本没计选用了8位MC9S08DZ系列)进行数据解密和指令执行。
加密协议:采用Freescale研发的町变密钥安全协议(VKSP)。
可变密钥安全协议(VKSP)是飞思卡尔专门为遥控类应用市场开发的安全传输协议。其特点为:
◆采用128位密钥加密验证,增强了安全性。
◆密钥中的32位可变密钥(计数器)部分随时问和按键而增加。
◆即使在遥控距离外被许多次按键操作之后,该钥匙也可以继续正常使用,不需要和接收端重新进行该钥匙的学习流程。
◆最大支持254个不同指令传输。
◆除了采用飞思卡尔提供的AES加密算法模块外,用户也可以根据需要(如缩小程序大小,减少解密时间)使用自己的加密算法模块。
◆纯软件实现,可以灵活地应用于各类微控制器。
◆软件大小:不包含AES加密模块约为1.5 KB,如果含AES模块则接近3 KB。软件以库函数的形式免费授权给采用飞思卡尔方案的客户使用。
VKSP的发送过程如图2。
每次按下钥匙,将会产生一个发送帧。发送帧有两个部分:数据部分和消息验证码(MAC)部分。数据部分不用加密,由3个部分共64位组成:钥匙号。3字节;用户命令,1字节;可变密钥,4字节。每次发送随时间和用户按键而增加,以确保即使用户命令相同,每次发送的消息帧内容也不会重复。消息验证码(MAC)部分有8个字节,由加密模块产生。
接收过程分为3步,如图3。
①接收端检查接收到的发送帧中的钥匙号足否存在于接收端存储的有效钥匙号数据库中。如果存在,则从接收端数据库中同时取出该钥匙对应的本地密钥(localkey)和可变密钥(variable key),进入下一步骤,否则丢弃该帧。
②检查发送帧中的可变密钥是否大于①中接收端数据库巾该钥匙目前的可变密钥。如是,进入下一步骤,否则丢弃该帧。这一步骤保证了任何再次重复发送的帧不会被认为有效帧。