遥控码的编码方法和识别方法

文档序号:7505691阅读:994来源:国知局
专利名称:遥控码的编码方法和识别方法
技术领域
本发明属于无线遥控技术领域,具体涉及一种遥控码的编码方法和识别方法。
背景技术
随着生活水平的提高,人们对产品智能化和人性化的要求越来越高,无线遥控技术因此空前兴起。要进行无线遥控,就需要通过遥控设备(电子钥匙、遥控器等)以无线信号形式向被控设备(汽车、电视等)发出“遥控码”,而被控设备再根据遥控码进行特定动作 (如打开发动机、换台等)。现有的遥控码由起始码(Mart-Bit)、地址码(Address-Bit)、资料码 (Data-Bit)、资料反码(/Data-Bit)、同步码(Synchronous Bit)组成。其中,起始码、地址码、资料码、资料反码为二进制形式(即每位均为0或1);起始码为定值(可为1位,或称 Ι-bits,可为1),表示遥控信号开始;地址码(可为对位)为遥控设备本身的地址资料(或者说遥控设备的ID),其代表遥控码是由什么遥控设备发出的,与遥控设备对应的被控设备中存储有相同的地址资料,其收到遥控码后会对比较地址码和自身存储的地址资料,只有二者相同时才对根据遥控码进行动作,从而实现遥控设备与被控设备的匹配;资料码和资料反码由用户的操作决定(如与遥控设备上的按键相对),其代表要被控设备执行什么动作(如是要打开车门还是启动发动机),资料码和资料反码位数相同(如都为6位),且相同位的值相反(例如,若遥控码第一位为1,则遥控反码第一位为0),二者可相互验证;同步码则为一特定信号,表示遥控码结束。具体的,遥控码中可用不同的无线信号表示0或1,如用64α的高电平无线信号接64α的低电平无线信号表示0,用64 α的低电平无线信号接 64 α的高电平无线信号表示1,其中α为遥控设备的振荡周期,同步码则可为64 α的高电平信号接256 α的低电平信号;当然,无线信号与0、1间的具体对应方法有多种。显然,上述遥控码每次命令被控设备进行相同操作时的代码(即无线信号)是完全相同的,而无线信号又很容易被截获并模仿,从而导致被控设备容易被盗用或非法控制。 为此,部分现有的遥控码的编码方法会在发送前对遥控码的部分内容进行简单变换(当然,被控设备接收遥控码后也要进行相应变换),以使各次遥控中发出的遥控码不同,提高安全性。发明人发现现有技术中至少存在如下问题在要被控设备进行相同动作时,根据现有的编码方法生成的遥控码或者完全相同,或者变化规律简单而重码率仍很高,因此其容易被破解并模仿,从而导致被控设备易于被盗用或非法控制,产生严重的安全性问题,在对汽车、保安系统等安全性要求很高的被控设备进行遥控时该问题就更加严重。

发明内容
本发明所要解决的技术问题包括,针对现有的遥控码安全性差的问题,提供一种安全性好的遥控码的编码方法。解决本发明技术问题所采用的技术方案是一种遥控码的编码方法,包括
根据预设的屏蔽码更新遥控设备中存储的循环码;根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码。在本发明的遥控码的编码方法中,遥控码中的地址码是根据循环码的不同而变化的,每次发送遥控码时循环码又会根据屏蔽码发生变化,而屏蔽码是预先存储在遥控设备和对应的被控设备中的,很难被盗取,因此其遥控码的变化规律复杂,重码率低,不易破解和模仿,安全性很好。优选的是,所述根据预设的屏蔽码更新遥控设备中存储的循环码包括步骤1、根据预设的屏蔽码和遥控设备中存储的循环码运算得到A值;步骤2、根据A值运算得到1位的C值;根据当前的循环码运算得到B值,所述B值与循环码位数相同,且其中有一位为空;步骤3、将所述C值加入B值的空位中,得到更新后的循环码。进一步优选的是,所述根据预设的屏蔽码和遥控设备中存储的循环码运算得到A 值具体为对预设的屏蔽码和遥控设备中存储的循环码进行求和运算或求差运算或相与运算,以运算结果作为A值。进一步优选的是,根据A值运算得到1位的C值具体为判断所述A值中值为1的位的个数,当所述个数为奇数时令C = 1,为偶数时令C =0;或者判断所述A值中值为1的位的个数,当所述个数为奇数时令C = 0,为偶数时令C =1 ;或者判断所述A值中值为0的位的个数,当所述个数为奇数时令C= 1,为偶数时令C =0;或者判断所述A值中值为0的位的个数,当所述个数为奇数时令C = 0,为偶数时令C =1。进一步优选的是,所述根据当前的循环码运算得到B值具体为将当前的循环码左移一位得到B值,所述B值的最低位为空;或者将当前的循环码右移一位得到B值,所述B值的最高位为空。优选的是,所述根据预设的屏蔽码更新遥控设备中存储的循环码的步骤至少连续进行2次。优选的是,所述根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码包括对更新后的循环码和遥控设备中存储的地址资料进行异或运算或者同或运算,以运算结果作为遥控码中的地址码。优选的是,还包括在所述遥控码中设置1位的反转码,每次发送遥控码所述反转码反转一次;其中,当所述遥控码中的反转码为1时,所述遥控码中的地址码、资料码、资料反码进行一次反转,当所述反转码为0时,所述地址码、资料码、资料反码不变;或者当所述遥控码中的反转码为0时,所述遥控码中的地址码、资料码、资料反码进行一次反转,当所述反转码为1时,所述地址码、资料码、资料反码不变。优选的是,所述地址码和遥控设备的地址资料均为M位,所述循环码和循环屏蔽码均为10位。本发明所要解决的技术问题还包括,针对现有技术中的遥控码安全性差的问题, 提供一种安全性好的遥控码的识别方法。解决本发明技术问题所采用的技术方案是一种遥控码的识别方法,包括接收遥控码;根据预设的屏蔽码更新被控设备中存储的循环码;根据更新后的循环码和被控设备中存储的地址资料运算得到参比地址码;比较所述参比地址码与遥控码中的地址码是否相同,若是则判断遥控码合法;若否则判断遥控码非法,并将被控设备中的循环码还原为更新前的值。在本发明的遥控码的识别方法中,只有在遥控码的地址码与被控设备生成的参比地址码相同时才认定遥控码合法,而被控设备的参比地址码是不断变化的,其变化规律与屏蔽码和初始的循码有关(具体变化规律与上述编码方法中的地址码变化规律相同);因此只有与被控设备对应的,具有相同屏蔽码、初始循环码及运算方法的遥控设备才能一直同步的产生合法遥控码并控制被控设备,被控设备被非法控制的可能性很低,遥控码安全性很好。在上述的遥控码的编码方法和识别方法中,各数据的“一位”均指一个二进制的位元(bit),其值为0或1 (特殊情况下为“空”),下同。本发明特别适用于汽车电子钥匙等重要设备的无线遥控中。


图1为本发明实施例2的遥控码的编码方法的流程示意图。
具体实施例方式为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式
对本发明作进一步详细描述。实施例1 本实施例提供一种遥控码的编码方法,其包括以下步骤根据预设的屏蔽码更新遥控设备中存储的循环码;根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码。在本实施例的遥控码的编码方法中,遥控码中的地址码是根据循环码的不同而变化的,每次发送遥控码时循环码又会根据屏蔽码发生变化,而屏蔽码是预先存储在遥控设备和对应的被控设备中的,很难被盗取,因此其遥控码的变化规律复杂,重码率低,不易破解和模仿,安全性很好。实施例2 本实施例提供一种遥控码的编码方法,其包括以下步骤S01、用户按下遥控设备的按键(比如汽车电子钥匙上的启动键),编码过程开始。其中,遥控设备根据按键的不同获得对应的资料码并生成资料反码,资料码和资料反码均可为6位,且相同位的值相反。S02、根据预设的屏蔽码更新遥控设备中存储的循环码。其中,屏蔽码是出厂时预先存储在遥控设备中的,可为10位;屏蔽码也预设在遥控设备中,与屏蔽码一样为10位,每次进行遥控时循环码都会进行至少一次更新,故其值不断变化(共〗"1= 1024种可能)。优选的,根据屏蔽码更新循环码的操作可包括S021、根据预设的屏蔽码和遥控设备中存储的循环码运算得到A值。优选的,本步骤具体可为对屏蔽码和循环码进行相与运算而得到A值;当然,运用其它的算法从屏蔽码和当前循环码得到A值也是可行的,例如对屏蔽码和当前循环码进行求差运算、求和运算、逻辑运算等得到A值。由于其具体的运算方法是多样的,故在此不再逐一具体描述。S022、根据A值运算得到1位的C值;C值为1位,即为0或1。优选的,本步骤具体可为判断A值中值为1的位的个数,并根据该个数确定C值; 例如,可在值为1的位的个数为奇数时令C = 1,为偶数时令C = 0(即采用“正向模式”); 或者也可在值为1的位的个数为偶数时令C = 1,为奇数时令C = 0(即采用“反向模式”)。 这种得出C值的运算比较简单,且A值稍有不同得到的C值就会变化。当然,上述“正向模式”、“反向模式”只是具体的判断C值的规则,可根据不同情况自由设定。当然,用其它的算法根据A值得到C值的也是可行的,例如也可根据值为0的位的个数为奇数还是偶数确定C的值(具体方法与上述方法类似);或者可对A值进行其它特定运算而得到C值。由于其具体的运算方法是多样的,故在此不再逐一具体描述。S023、根据当前的循环码运算得到B值,B值与循环码位数相同(本实施例中都为 10位),且其中有一位为空(即该位没有值,是一个“空位”)。当然,本步骤与S022步骤的先后顺序是可以互换的,本实施例的叙述顺序并不视为对其的限定。优选的,本步骤具体可为将循环码左移一位得到B值,该B值的最低位为空。因 B值与循环码都为10位,故循环码“左移” 一位后,其第一位“移出”B值的范围而被舍弃, 同时B值的最后一位因没有值而为“空”。也就是说,此时B值的第一位至第九位相当于循环码的第二位至第十位,而B值的第十位则为空。这种“移动”式的算法所需的运算量少, 且其结果相当于使更新后的循环码的每一位都发生了变化,保密性好。当然,用其它的算法根据循环码得到B值也是可行的,例如可将循环码右移一位得到B值(此时B值的最高位为空);或者也可对循环码的各位数据进行交换,再将其中的一位设为空等。由于其具体的运算方法是多样的,故在此不再逐一具体描述。S024、将C值加入B值的空位中,得到更新后的循环码;至此完成一次对循环码进行更新操作。也就是说,将C值(0或1)加入B值(实际有值的为9位)的空位中,得到一个新的10位的值,并以其作为更新后的循环码。S025、优选的,判断对循环码进行更新的次数是否达到16次,如是则进入S03步骤,如否则返回S021步骤继续对循环码进行更新。也就是说,在生成遥控码时,优选可对循环码连续进行至少2次(此处以16次为例)更新,以进一步提高遥控码的保密性。S03、根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码(即以运算结果作为遥控码中的地址码)。其中,地址资料即为遥控设备的ID,其预先存储在遥控设备中,可为M位,且优选是可程式化(Programmale)的,以方便对其进行修改寸。具体的,本步骤优选可为对循环码和遥控设备的地址资料进行异或运算(xor),以运算结果作为遥控码中的地址码;异或运算比较简单,且输出结果的保密性较好。显然,由于本实施例中的循环码为10位,而地址资料为M位,故进行异或运算时可采用两个循环码再加上循环码中的4位与地址资料对应的方式,例如表1的对应方式。表1中AO表示地址资料的第一位,Al表示第二位,以此类推,而RO表示循环码的第一位,Rl表示第二位,以此类推。当然,二者间的具体对应方法是多样的,故在此不再逐一具体描述。表1地址资料与循环码进行异或运算时的位数对应关系表
权利要求
1.一种遥控码的编码方法,其特征在于,包括 根据预设的屏蔽码更新遥控设备中存储的循环码;根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码。
2.根据权利要求1所述的遥控码的编码方法,其特征在于,所述根据预设的屏蔽码更新遥控设备中存储的循环码包括步骤1、根据预设的屏蔽码和遥控设备中存储的循环码运算得到A值; 步骤2、根据A值运算得到1位的C值;根据当前的循环码运算得到B值,所述B值与循环码位数相同,且其中有一位为空;步骤3、将所述C值加入B值的空位中,得到更新后的循环码。
3.根据权利要求2所述的遥控码的编码方法,其特征在于,所述根据预设的屏蔽码和遥控设备中存储的循环码运算得到A值具体为对预设的屏蔽码和遥控设备中存储的循环码进行求和运算或求差运算或相与运算,以运算结果作为A值。
4.根据权利要求2所述的遥控码的编码方法,其特征在于,根据A值运算得到1位的C 值具体为判断所述A值中值为1的位的个数,当所述个数为奇数时令C = 1,为偶数时令C = O; 或者判断所述A值中值为1的位的个数,当所述个数为奇数时令C = 0,为偶数时令C= 1 ; 或者判断所述A值中值为0的位的个数,当所述个数为奇数时令C = 1,为偶数时令C = O; 或者判断所述A值中值为0的位的个数,当所述个数为奇数时令C = 0,为偶数时令C = 1。
5.根据权利要求2所述的遥控码的编码方法,其特征在于,所述根据当前的循环码运算得到B值具体为将当前的循环码左移一位得到B值,所述B值的最低位为空; 或者将当前的循环码右移一位得到B值,所述B值的最高位为空。
6.根据权利要求1至5中任意一项所述的遥控码的编码方法,其特征在于, 所述根据预设的屏蔽码更新遥控设备中存储的循环码的步骤至少连续进行2次。
7.根据权利要求1至5中任意一项所述的遥控码的编码方法,其特征在于,所述根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码包括对更新后的循环码和遥控设备中存储的地址资料进行异或运算或者同或运算,以运算结果作为遥控码中的地址码。
8.根据权利要求1至5中任意一项所述的遥控码的编码方法,其特征在于,还包括在所述遥控码中设置1位的反转码,每次发送遥控码所述反转码反转一次;其中,当所述遥控码中的反转码为1时,所述遥控码中的地址码、资料码、资料反码进行一次反转,当所述反转码为0时,所述地址码、资料码、资料反码不变; 或者当所述遥控码中的反转码为0时,所述遥控码中的地址码、资料码、资料反码进行一次反转,当所述反转码为1时,所述地址码、资料码、资料反码不变。
9.根据权利要求1至5中任意一项所述的遥控码的编码方法,其特征在于,所述地址码和遥控设备的地址资料均为M位,所述循环码和循环屏蔽码均为10位。
10.一种遥控码的识别方法,其特征在于,包括 接收遥控码;根据预设的屏蔽码更新被控设备中存储的循环码; 根据更新后的循环码和被控设备中存储的地址资料运算得到参比地址码; 比较所述参比地址码与遥控码中的地址码是否相同,若是则判断遥控码合法;若否则判断遥控码非法,并将被控设备中的循环码还原为更新前的值。
全文摘要
本发明提供一种遥控码的编码方法和识别方法,属于无线遥控技术领域,其可解决现有的遥控码安全性差的问题。本发明的遥控码的编码方法包括根据预设的屏蔽码更新遥控设备中存储的循环码;根据更新后的循环码和遥控设备中存储的地址资料运算得到遥控码中的地址码。本发明的遥控码的识别方法包括根据预设的屏蔽码更新被控设备中存储的循环码;根据更新后的循环码和被控设备中存储的地址资料运算得到参比地址码;根据参比地址码与接收到的遥控码中的地址码是否相同判断遥控码的合法性。本发明可用于汽车电子钥匙等重要设备的无线遥控中。
文档编号H03M13/15GK102545915SQ20121003485
公开日2012年7月4日 申请日期2012年2月16日 优先权日2012年2月16日
发明者张世兵 申请人:奇瑞汽车股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1