著录项信息
专利名称 | 汽车防盗设备的密钥分配方法及装置 |
申请号 | CN201510718955.5 | 申请日期 | 2015-10-28 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2016-01-20 | 公开/公告号 | CN105262586A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L9/08 | IPC分类号 | H;0;4;L;9;/;0;8;;;H;0;4;L;2;9;/;0;6查看分类表>
|
申请人 | 铁将军汽车电子有限公司 | 申请人地址 | 广东省中山市东凤镇东阜路和平大道铁将军工业园
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 铁将军汽车电子股份有限公司 | 当前权利人 | 铁将军汽车电子股份有限公司 |
发明人 | 李安培;李珠;刘振 |
代理机构 | 北京市立方律师事务所 | 代理人 | 刘延喜;王增鑫 |
摘要
本发明涉及汽车防盗技术领域,具体涉及一种汽车防盗设备的密钥分配方法及其相应的装置。所述的分配方法包括:产生具有唯一性特征的加密密钥及其相对应的解密密钥;通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。第一密钥在从遥控器端传送给主机时被加密在第一密文数据包中,且用于解密该第一密文数据包的解密密钥也被加密在第二密文数据包中被分配到主机端,使得第一密钥不能被非法截获而得到。
1.一种汽车防盗设备的密钥分配方法,其特征在于,包括以下步骤:
产生具有唯一性特征的加密密钥及其相对应的解密密钥;
通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;
通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机;
所述第一接口和第二接口的发送操作同步执行。
2.根据权利要求1所述的方法,其特征在于:所述加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。
3.根据权利要求1所述的方法,其特征在于:所述加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和私钥。
4.根据权利要求1所述的方法,其特征在于:所述第一密钥和/或所述第二密钥随机生成和/或预存在存储介质中。
5.根据权利要求1所述的方法,其特征在于:所述第一接口和第二接口均为有线接口或无线接口。
6.根据权利要求1所述的方法,其特征在于:所述第一密钥和/或第二密钥由非线性散转表格算法或AES算法生成。
7.根据权利要求1所述的方法,其特征在于:响应于所述遥控器的请求而执行向第一接口发送的步骤;或响应于本机的指令而执行向第一接口发送的步骤。
8.根据权利要求1所述的方法,其特征在于:响应于所述主机的请求而执行向第二接口发送的步骤;或响应于本机的指令而执行向第二接口发送的步骤。
9.根据权利要求1所述的方法,其特征在于:重复执行本方法,使每次产生的加密密钥及其解密密钥均不同于以往以作用于不同的汽车防盗设备。
10.一种汽车防盗设备的密钥分配装置,其特征在于,包括有:
密钥生成模块,用于产生具有唯一性特征的加密密钥及其相对应的解密密钥;
第一发送模块,用于通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;
第二发送模块,用于通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机;
所述第一发送模块和第二发送模块的发送操作同步执行。
11.根据权利要求10所述的装置,其特征在于:所述密钥生成模块被配置为生成的加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。
12.根据权利要求10所述的装置,其特征在于:所述密钥生成模块被配置为生成的加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和私钥。
13.根据权利要求10所述的装置,其特征在于:所述第一密钥和/或所述第二密钥随机生成和/或预存在存储介质中。
14.根据权利要求10所述的装置,其特征在于:所述第一接口和第二接口均为有线接口或无线接口。
15.根据权利要求10所述的装置,其特征在于:所述密钥生成模块被配置为采用非线性散转表格算法或AES算法生成第一密钥和/或第二密钥。
16.根据权利要求10所述的装置,其特征在于:所述第一发送模块响应于所述遥控器的请求而执行向第一接口发送的步骤;或响应于本机的指令而执行向第一接口发送的步骤。
17.根据权利要求10所述的装置,其特征在于:所述第二发送模块响应于所述主机的请求而执行向第二接口发送的步骤;或响应于本机的指令而执行向第二接口发送的步骤。
18.根据权利要求10所述的装置,其特征在于:重复调用本装置的各模块,使每次产生的加密密钥及其解密密钥均不同于以往以作用于不同的汽车防盗设备。
汽车防盗设备的密钥分配方法及装置\n【技术领域】\n[0001] 本发明涉及汽车防盗技术领域,具体涉及一种汽车防盗设备的密钥分配方法及其相应的装置。\n【背景技术】\n[0002] 随着社会的飞速发展,汽车成为人们日常出行主要的交通工具,随着私家车的数量增加,汽车被盗也演变成了日益严重的社会问题。\n[0003] 目前汽车防盗主要采用电子式防盗技术,通常采用发送终端如遥控器来发送带有控制指令的密文,给设置于汽车上的接收主机来控制车门、发动机启动和供油系统等方式实现防盗控制。一般的应用场景是,预先在遥控器中存储固定密钥,遥控器发送该固定密钥给主机端存储,主机接收该固定密钥以实现与遥控器端的配对;之后遥控器端可采用该固定密钥加密控制指令生成密文数据包发送给主机端,设置于汽车上的主机接收并采用固定密钥解密密文数据包并读取控制指令,根据控制指令执行相应的解锁或锁定等操作。\n[0004] 现有技术中的密钥分配是直接将未加密的固定密钥存储在遥控器端,经遥控器端发送给主机来实现配对,能通过对遥控器发出的信号空中捕捉和扫描跟踪而截获该未加密的固定密钥,安全性低;且现有技术中同一厂家生产的遥控器和主机中采用同一固定密钥,易导致汽车防盗设备被批量破解。\n[0005] 因此,如何提供一种汽车防盗设备中的密钥分配方法及其相应的终端,增加密钥的保密性,提高车辆的安全性,是本领域技术人员需要解决的技术问题。\n【发明内容】\n[0006] 本发明的一个目的旨在解决上述至少一个问题,提供了一种汽车防盗设备的密钥分配方法及其相应的装置。\n[0007] 为实现该目的,本发明采用如下技术方案:\n[0008] 本发明提供了一种汽车防盗设备的密钥分配方法,包括以下步骤:\n[0009] 产生具有唯一性特征的加密密钥及其相对应的解密密钥;\n[0010] 通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;\n[0011] 通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。\n[0012] 根据本发明一个实施例所揭示,所述加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。\n[0013] 根据本发明的又一个实施例所揭示,所述加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和私钥。\n[0014] 具体的,所述第一接口和第二接口的发送操作同步执行。\n[0015] 可选的,所述第一密钥和/或所述第二密钥随机生成和/或预存在存储介质中。\n[0016] 可选的,所述第一接口和第二接口均为有线接口或无线接口。\n[0017] 具体的,所述第一密钥和/或第二密钥由非线性散转表格算法或AES算法生成。\n[0018] 进一步的,响应于所述遥控器的请求而执行向第一接口发送的步骤;或响应于本机的指令而执行向第一接口发送的步骤。\n[0019] 进一步的,响应于所述主机的请求而执行向第二接口发送的步骤;或响应于本机的指令而执行向第二接口发送的步骤。\n[0020] 进一步的,重复执行本方法,使每次产生的加密密钥及其解密密钥均不同于以往以作用于不同的汽车防盗设备。\n[0021] 本发明还提供了一种汽车防盗设备的密钥分配装置,包括有:\n[0022] 密钥生成模块,用于产生具有唯一性特征的加密密钥及其相对应的解密密钥;\n[0023] 第一发送模块,用于通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;\n[0024] 第二发送模块,用于通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。\n[0025] 根据本发明一个实施例所揭示,所述密钥生成模块被配置为生成的加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。\n[0026] 根据本发明又以个实施例所揭示,所述密钥生成模块被配置为生成的加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和私钥。\n[0027] 具体的,所述第一发送模块和第二发送模块的发送操作同步执行。\n[0028] 可选的,所述第一密钥和/或所述第二密钥随机生成和/或预存在存储介质中。\n[0029] 可选的,所述第一接口和第二接口均为有线接口或无线接口。\n[0030] 具体的,所述密钥生成模块被配置为采用非线性散转表格算法或AES算法生成第一密钥和/或第二密钥。\n[0031] 具体的,所述第一发送模块响应于所述遥控器的请求而执行向第一接口发送的步骤;或响应于本机的指令而执行向第一接口发送的步骤。\n[0032] 具体的,所述第二发送模块响应于所述主机的请求而执行向第二接口发送的步骤;或响应于本机的指令而执行向第二接口发送的步骤。\n[0033] 具体的,重复调用本装置的各模块,使每次产生的加密密钥及其解密密钥均不同于以往以作用于不同的汽车防盗设备。\n[0034] 与现有技术相比,本发明具备如下优点:\n[0035] 1、本发明中通过第一接口向遥控器端发送第一密钥、采用生成的加密密钥加密有第一密钥的第一密文数据包;以及通过第二接口向主机端发送第二密钥、采用该第二密钥加密有解密密钥的第二密文数据包,其中,加密密钥和解密密钥为数学上相关的对应加解密密钥。使得遥控器端向主机发送第一密文数据包请求配对时,主机端采用解密得出的解密密钥解密该第一密文数据包得到该第一密钥完成配对。第一密钥在从遥控器端传送给主机的过程中被加密在第一密文数据包中,即使被非法截获因没有解密密钥也无法得到该第一密钥,且用于解密该第一密文数据包的解密密钥也被加密在第二密文数据包中被分配到主机端,不能被非法截获而得到。提高了整个汽车防盗设备的安全性。\n[0036] 2、由于本发明中密钥分配装置每次生成的第一密钥、第二密钥、加密密钥和解密密钥均是唯一的,即使上述4个密钥均泄露,也只能破解一台分配有上述密钥的汽车防盗设备,能避免汽车防盗器被批量破解,进一步提高了汽车防盗设备的安全性。\n[0037] 本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。\n【附图说明】\n[0038] 本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:\n[0039] 图1为本发明一个实施例中汽车防盗设备密钥分配方法的流程示意图;\n[0040] 图2为本发明一个实施例中汽车防盗设备密钥分配装置的结构示意图。\n【具体实施方式】\n[0041] 下面结合附图和示例性实施例对本发明作进一步地描述,其中附图中相同的标号全部指的是相同的部件。此外,如果已知技术的详细描述对于示出本发明的特征是不必要的,则将其省略。\n[0042] 本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。\n[0043] 本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。\n[0044] 有必要先对本发明的应用场景及其原理进行如下的先导性说明。\n[0045] 本发明的方法和相应的装置用于为汽车防盗设备分配密钥,本发明以带有处理器和传输接口的独立于汽车防盗设备的第三方密钥分配装置为硬件基础来描述。通过向遥控器中分配加密密钥,该加密密钥能采用对称密钥生成算法或非对称密钥生成算法生成,相应的该加密密钥用于对第一密钥采用对称加密算法或非对称加密算法加密得到第一密文数据包;对应的向主机端分配有与加密密钥对应的解密密钥,用于解密遥控器端发送的第一密文数据包得到第一密钥,但该解密密钥被加密在第二密文数据包中分配给主机。在本发明中灵活运用了对称加密算法和非对称加密算法,下文简要说明这两种加密算法。\n[0046] 对称加密,也叫私钥加密,指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,所以也称这种加密算法为秘密密钥算法或单密钥算法。它要求发送方和接收方在安全通信之前,商定一个密钥。\n对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信至关重要。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。现有技术中常用的对称加密算法主要有DES、TripleDES、RC2、RC4、RC5和Blowfish等。本领域技术人员应当足以理解这一广泛应用的技术及其各种算法的灵活运用。对称加密的关键点在于安全存储或传输对称密钥,而在本发明中灵活采用汽车防盗设备分配装置来解决这一问题。\n[0047] 非对称加密,也叫公开密钥加密,在加密和解密时使用不同的密钥,加密时使用的密钥和解密时使用的密钥形成一个密钥对,用其中的一个密钥加密的密文只能用另一个密钥解密,而不能由其他密钥(包括加密用的密钥)解密。通常一个密钥指定为“公钥”,另一个则指定为“私钥”,只能由密钥持有人保管。公开密钥加密技术解决了密钥的发布和管理的问题,进行数据通信的双方可以安全地确认对方身份和公开密钥,提供通信的可鉴别性。非对称密钥加密算法主要有RSA、DSA、DiffieHellman、PKCS和PGP等。\n[0048] 以下将详细说明为了运用上述的原理实现上述的场景而提出的本发明的若干技术方案的具体实施方式。\n[0049] 需要说明的是,本发明提供的一种汽车防盗设备的密钥分配方法,可以通过编程将该密钥分配方法实现为计算机程序在PC机或其他类似的带有微处理器的可编程智能设备中运行。\n[0050] 请参阅图1,本发明的一种汽车防盗设备的密钥分配方法的一个典型实施例,具体包括以下步骤:\n[0051] S11,产生具有唯一性特征的加密密钥及其相对应的解密密钥。\n[0052] 本发明中的加密密钥和解密秘钥可以是对称加密算法所规范的具有相同内容的密钥;也可以是非对称加密算法所规范的数学上相关的公钥和私钥。根据生成上述密钥的算法不同,下文采用两个实施例来说明加密密钥和解密密钥的生成过程。为便于理解程序,该步骤以采用Java编程语言在PC机上产生该对密钥为例来说明,但是并不能构成对本发明的限制;本实施例的实现理论上与采用的编程语言和基于的硬件没有关系,本领域内技术人员也可以采用其他实施方法来实现该步骤。\n[0053] 1、在本发明的一个实施例中,所述加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。\n[0054] 不难理解,Java中密钥生成器KeyGenerator类中提供了创建对称密钥的方法,且在KeyGenerator类中预定义了一个静态方法getInstance(),通过该静态方法来获得KeyGenerator类的对象。例如,可以通过定义函数KeyGenerator kg=\nKeyGenerator.getInstance(“DESede”)来获取密钥生成器。其中方法getInstance()的参数为字符串类型,可指定加密算法的名称,例如可以是常用的对称加密算法“Blowfish”、“DES”、“DESede”、“HmacMD5”等。上述函数中采用了“DESede”算法,该算法较常用的“DES”安全性更高。然后可采用函数kg.init(168)限定生成的密钥的长度。当然,该函数也可以省略,在获取密钥生成器时会根据算法默认所生成的密钥长度。例如,“DES”算法对应的密钥长度为56位;“DESede”算法对应的密钥长度为112位或168位。\n[0055] 上述步骤在获得的KeyGenerator类的对象中获得了一对可用于DESede对称加密算法的加密密钥和解密密钥。进一步的,将该生成的密钥以字节的方式写入自定义的密钥文件中,再将该文件存储在存储装置中。\n[0056] 可以理解的是,所述加密密钥和解密密钥所在的文件应当被存储在所述密钥分配装置的存储装置中。该存储装置可以同时被用来存储该密钥分配装置的程序或数据,也可以是专门用来存储该加密密钥和解密密钥所在的文件的特定的存储装置,例如特制的密钥存储芯片,以提高加密密钥和解密密钥所在的文件存储的安全性。可以理解的是,本发明中的存储装置可以采用高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。\n[0057] 在一个优选的实施例中,为了进一步增加加密密钥和解密密钥所在的文件存储的安全性,降低存储器被非法用户采用芯片反向技术获得加密密钥和解密密钥的风险,本实施例中所述存储装置均采用铁电随机存取存储器FRAM(Ferroelectric Random Access Memory)。\n[0058] 众所周知,在芯片反向技术中,差分功率分析技术常被用来提取密钥信息,该技术主要通过测量存储器在读写逻辑状态数据“0”和“1”时的不同功耗,通过统计学的方法来分析提取与密钥有关的信息。而本发明中FRAM是非易失性存储器,其为铁电存储器,但因为该存储器芯片中并不含铁基材料,使其不受磁场的影响。该FRAM与常用的电可擦除可编程只读存储器EEPROM存储技术相比,FRAM在电场、辐射等环境中具有更强的抗数据损坏能力。其超快读写时间和低功耗(其读取功耗与写入功耗实际上相同)使攻击者更难以使用差分功率分析技术对其进行攻击获得密钥。\n[0059] 2、在本发明的又一个实施例中,所述加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和私钥。\n[0060] 不难理解,该实施例中采用Java中KeyPairGenerator类来生成公钥和私钥对。且在KeyPairGenerator类中预定义了一个静态方法getInstance(),通过该静态方法来获得KeyPaairGenerator类的对象。例如,可以通过定义函数KeyPairGenerator kg=\nKeyPairGenerator.getInstance(“RSA”)来获取基于RSA算法的密钥生成器。其中方法getInstance()的参数为字符串类型,可指定加密算法的名称,例如还可以是常用的非对称加密算法“RSA”、“DSA”、“DiffieHellman”、“PKCS”和“PGP”等。\n[0061] 上述步骤在获得的KeyPairGenerator类型的对象中获得了一对可用于RSA非对称加密算法的加密密钥和解密密钥。进一步的,通过调用函数KeyPair.getPublic()从该密钥对中获得公钥,通过调用函数KeyPair.getPrivate()从该密钥对中获得私钥;然后将该生成的公钥和私钥以字节的方式分别写入自定义的公钥文件和私钥文件中,再将公钥文件和私钥文件存储在存储装置中。\n[0062] 可以理解的是,所述公钥文件和私钥文件应当被存储在所述密钥分配装置的存储装置中。该存储装置可以同时被用来存储该密钥分配装置的程序或数据,也可以是专门用来存储该公钥文件和私钥文件的特定的存储装置,例如特制的密钥存储芯片,以提高公钥文件和私钥文件存储的安全性。可以理解的是,本发明中的存储装置可以采用高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。\n[0063] 在一个优选的实施例中,为了进一步增加加密密钥和解密密钥所在的文件存储的安全性,降低存储器被非法用户采用芯片反向技术获得加密密钥和解密密钥的风险,本实施例中所述存储装置均采用铁电随机存取存储器FRAM(Ferroelectric Random Access Memory)。\n[0064] 进一步的,在本发明的方法中,还包括以下步骤:\n[0065] S12,通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;\n[0066] 以及步骤S13,通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。\n[0067] 由于需要通过接口向遥控器和主机分配密钥和数据包,以使遥控器和主机能通过学习的方式配对。在一个实施例中,为了提高密钥分配的效率,所述向第一接口和第二接口发送数据是同步进行的。下文将步骤S12和S13结合在一起描述该实施例的实现。\n[0068] 前述步骤中,在密钥分配装置的存储装置中存储有随即生成的唯一性的加密密钥和解密密钥。需要被分配密钥的遥控器向该密钥分配装置发送一个请求,或者密钥分配装置响应于一个发送指令,向第一接口执行发送操作;同理,需要被分配密钥的主机向该密钥分配装置发送一个请求,或者密钥分配装置响应于一个发送指令,向第二接口执行发送操作。不难理解,通过上述接口向遥控器和主机发送数据可以是有线传输,也可以是无线传输,本发明对此不做限定。\n[0069] 在密钥分配装置中,向第一接口和第二接口发送数据前,需要预先生成第一密钥和第二密钥,所述第一密钥和第二密钥可以是响应于遥控器端和主机端的请求或密钥分配装置的发送指令后,随机生成;也可以是在密钥分配装置中预先生成并保存在本地存储介质中,响应于遥控器端和主机端的请求或密钥分配装置的发送指令后,从存储介质中读取再发送。\n[0070] 为了保证第一密钥和第二密钥的随机性和唯一性,即每个遥控器和主机中的第一密钥和第二密钥不同。不难理解,所述第一密钥和第二密钥之间可以不用存在关联。产生第一密钥和第二密钥的算法可以相同也可以不同,所述的算法可以是运行自定义的存储在密钥分配装置中的特定算法程序所实现,也可以是任何现有的算法。例如,在本发明一个示例性实施例中,可以采用非线性散转表格算法或者AES算法来生成第一密钥和第二密钥,也可以采用滚动码算法KEELOQ来生成第一密钥和第二密钥。KEELOQ技术是一种复杂的非线性加密算法,经它加密后的码为滚动码,它的编码方式不是固定的,使数据传输具有极高的保密性,每次输出的滚动码都是唯一、不规则且不重复的。\n[0071] 为了保证第一密钥从遥控器安全的传输到主机端,第一密钥要被加密密钥加密成第一数据包,该加密过程在密钥分配装置中完成。所采用的加密算法可以是对称加密算法或非对称加密算法,该对称加密算法和非对称加密算法可以采用自定义或经过改进的加密算法。例如采用现有的对称加密算法,常用的对称加密算法主要有DES、TripleDES、RC2、RC4、RC5和Blowfish等;或者采用现有技术中常用的非对称加密算法RSA、DSA、\nDiffieHellman、PKCS和PGP,无论采用何种加密方式都要保证将该加密密钥对应的解密密钥分配到主机端以实施解密。同样的,本发明中分配到主机端的解密密钥需要在密钥分配装置中基于一定的加密算法加密成第二密文数据包,所采用的加密算法可以是运行自定义的存储在密钥分配装置中的特定算法程序所实现,也可以是任何现有的算法。\n[0072] 1、在本发明的一个实施例中,所述第一密钥被加密密钥采用对称加密算法加密。\n本实施例以对称加密算法DESede为例来说明该实施例的实现过程,当然本发明也可以采用其他对称加密算法,该实施例并不能构成对本发明的限制。首先从密钥文件存储装置中读出用于DESede加密算法的加密密钥和解密密钥。采用加密密钥基于对称加密算法DESede对生成的第一密钥进行加密生成第一密文数据包,再将第一密钥和第一密文数据包通过有线或无线的通信方式通过第一接口传输到防盗设备的遥控器端。采用第二密钥基于一定的加密算法对解密密钥进行加密生成第二密文数据包,再将第二密钥和第二密文数据包通过有线或无线的通信方式通过第二接口传输到防盗设备的主机端。在本实施例中,所述的加密算法可以是按照一个既定的算法生成所述的第二密文数据包,所述的既定算法可以是任何现有的算法或本发明之后开发的算法中适合的算法。但需要保证所述接收方的主机端同时配置有该加密算法所对应的解密算法。\n[0073] 2、在本发明的又一个实施例中,所述第一密钥被加密密钥采用非对称加密算法加密。本实施例以非对称加密算法RSA为例来说明该实施例的实现过程,当然本发明也可以采用其他非对称加密算法,该实施例并不能构成对本发明的限制。首先从公钥文件存储装置中读出用于RSA加密算法的加密公钥,从私钥文件存储装置中读出对应的解密私钥。采用加密公钥基于非对称加密算法RSA对生成的第一密钥进行加密生成第一密文数据包,再将第一密钥和第一密文数据包通过有线或无线的通信方式通过第一接口传输到防盗设备的遥控器端。采用第二密钥基于一定的加密算法对解密私钥进行加密生成第二密文数据包,再将第二密钥和第二密文数据包通过有线或无线的通信方式通过第二接口传输到防盗设备的主机端。在本实施例中,所述的加密算法可以是按照一个既定的算法生成所述的第二密文数据包,所述的既定算法可以是任何现有的算法或本发明之后开发的算法中适合的算法。但需要保证所述接收方的主机端同时配置有该加密算法所对应的解密算法。\n[0074] 在本发明的密钥分配装置完成了其中一套汽车防盗设备的密钥分配后,可以重复执行以上各步骤为更多的汽车防盗设备分配密钥,可以在批量生产中应用。本发明采用的各密钥生成算法可以生成不同的加密密钥、解密密钥、第一密钥和第二密钥,使得不同的汽车防盗设备中被分配的各密钥不同,防止汽车防盗设备被批量破解。\n[0075] 进一步,依据计算机软件的功能模块化思维,本发明还提供一种汽车防盗设备的密钥分配装置。请参阅图2,其包括有密钥生成模块11、第一发送模块12和第二发送模块13。\n[0076] 所述密钥生成模块11,用于产生具有唯一性特征的加密密钥及其相对应的解密密钥。\n[0077] 本发明中的加密密钥和解密秘钥可以是对称加密算法所规范的具有相同内容的密钥;也可以是非对称加密算法所规范的数学上相关的公钥和私钥。根据生成上述密钥的算法不同,下文采用两个实施例来说明密钥生成模块11生成加密密钥和解密密钥的过程。\n为便于理解该模块的实现,以采用Java编程语言在PC机上产生该对密钥为例来说明,但是并不能构成对本发明的限制;本实施例的实现理论上与采用的编程语言和基于的硬件没有关系,本领域内技术人员也可以采用其他实施例来实现该模块。\n[0078] 1、在本发明的一个实施例中,所述密钥生成模块11被配置为生成的加密密钥及其解密密钥为对称加密算法所规范的具有相同内容的密钥。\n[0079] 不难理解,Java中密钥生成器KeyGenerator类中提供了创建对称密钥的方法,且在KeyGenerator类中预定义了一个静态方法getInstance(),通过该静态方法来获得KeyGenerator类的对象。例如,可以通过定义函数KeyGenerator kg=\nKeyGenerator.getInstance(“DESede”)来获取密钥生成器。其中方法getInstance()的参数为字符串类型,可指定加密算法的名称,例如可以是常用的对称加密算法“Blowfish”、“DES”、“DESede”、“HmacMD5”等。上述函数中采用了“DESede”算法,该算法较常用的“DES”安全性更高。然后可采用函数kg.init(168)限定生成的密钥的长度。当然,该函数也可以省略,在获取密钥生成器时会根据算法默认所生成的密钥长度。例如,“DES”算法对应的密钥长度为56位;“DESede”算法对应的密钥长度为112位或168位。\n[0080] 上述密钥生成模块11在获得的KeyGenerator类的对象中获得了一对可用于DESede对称加密算法的加密密钥和解密密钥。进一步的,将该生成的密钥以字节的方式写入自定义的密钥文件中,再将该文件存储在存储装置中。\n[0081] 可以理解的是,所述加密密钥和解密密钥所在的文件应当被存储在所述密钥分配装置的存储装置中。该存储装置可以同时被用来存储该密钥分配装置的程序或数据,也可以是专门用来存储该加密密钥和解密密钥所在的文件的特定的存储装置,例如特制的密钥存储芯片,以提高加密密钥和解密密钥所在的文件存储的安全性。可以理解的是,本发明中的存储装置可以采用高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。\n[0082] 在一个优选的实施例中,为了进一步增加加密密钥和解密密钥所在的文件存储的安全性,降低存储器被非法用户采用芯片反向技术获得加密密钥和解密密钥的风险,本实施例中所述存储装置均采用铁电随机存取存储器FRAM(Ferroelectric Random Access Memory)。\n[0083] 众所周知,在芯片反向技术中,差分功率分析技术常被用来提取密钥信息,该技术主要通过测量存储器在读写逻辑状态数据“0”和“1”时的不同功耗,通过统计学的方法来分析提取与密钥有关的信息。而本发明中FRAM是非易失性存储器,其为铁电存储器,但因为该存储器芯片中并不含铁基材料,使其不受磁场的影响。该FRAM与常用的电可擦除可编程只读存储器EEPROM存储技术相比,FRAM在电场、辐射等环境中具有更强的抗数据损坏能力。其超快读写时间和低功耗(其读取功耗与写入功耗实际上相同)使攻击者更难以使用差分功率分析技术对其进行攻击获得密钥。\n[0084] 2、在本发明的又一个实施例中,所述密钥生成模块11被配置为生成的加密密钥及其解密密钥分别为非对称加密算法所规范的数学上相关的公钥和密钥。\n[0085] 不难理解,该实施例中采用Java中KeyPairGenerator类来生成公钥和私钥对。且在KeyPairGenerator类中预定义了一个静态方法getInstance(),通过该静态方法来获得KeyPaairGenerator类的对象。例如,可以通过定义函数KeyPairGenerator kg=\nKeyPairGenerator.getInstance(“RSA”)来获取基于RSA算法的密钥生成器。其中方法getInstance()的参数为字符串类型,可指定加密算法的名称,例如可以是常用的非对称加密算法“RSA”、“DSA”、“DiffieHellman”、“PKCS”和“PGP”等。\n[0086] 密钥生成模块11在获得的KeyPairGenerator类型的对象中获得了一对可用于RSA非对称加密算法的加密密钥和解密密钥。进一步的,通过调用函数KeyPair.getPublic()从该密钥对中获得公钥,通过调用函数KeyPair.getPrivate()从该密钥对中获得私钥;然后将该生成的公钥和私钥以字节的方式分别写入自定义的公钥文件和私钥文件中,再将公钥文件和私钥文件存储在存储装置中。\n[0087] 可以理解的是,所述公钥文件和私钥文件应当被存储在所述密钥分配装置的存储装置中。该存储装置可以同时被用来存储该密钥分配装置的程序或数据,也可以是专门用来存储该公钥文件和私钥文件的特定的存储装置,例如特制的密钥存储芯片,以提高公钥文件和私钥文件存储的安全性。可以理解的是,本发明中的存储装置可以采用高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。\n[0088] 在一个优选的实施例中,为了进一步增加加密密钥和解密密钥所在的文件存储的安全性,降低存储器被非法用户采用芯片反向技术获得加密密钥和解密密钥的风险,本实施例中所述存储装置均采用铁电随机存取存储器FRAM(Ferroelectric Random Access Memory)。\n[0089] 进一步的,所述密钥生成模块11还被配置为生成第一密钥和第二密钥。在密钥分配装置中,向第一接口和第二接口发送数据前,需要采用密钥生成模块11预先生成第一密钥和第二密钥,所述第一密钥和第二密钥可以是响应于遥控器端和主机端的请求或密钥分配装置的发送指令后,随机生成;也可以是在密钥分配装置中由密钥生成模块11预先生成并保存在本地存储介质中,响应于遥控器端和主机端的请求或密钥分配装置的发送指令后,从存储介质中读取再发送。\n[0090] 为了保证第一密钥和第二密钥的随机性和唯一性,即每个遥控器和主机中的第一密钥和第二密钥不同,不难理解,所述第一密钥和第二密钥之间可以不用存在关联。采用密钥生成模块11产生第一密钥和第二密钥的算法可以相同也可以不同,所述的算法可以是运行自定义的存储在密钥分配装置中的特定算法程序所实现,也可以是任何现有的算法。例如,在本发明一个示例性实施例中,密钥生成模块11可以采用线性散转表格算法或者AES算法来生成第一密钥和第二密钥,也可以采用滚动码算法KEELOQ来生成第一密钥和第二密钥。KEELOQ技术是一种复杂的非线性加密算法,经它加密后的码为滚动码,它的编码方式不是固定的,使数据传输具有极高的保密性,每次输出的滚动码都是唯一、不规则且不重复的。\n[0091] 进一步的,所述第一发送模块12,用于通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器。\n[0092] 所述第二发送模块13,用于通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。\n[0093] 为了保证第一密钥从遥控器安全的传输到主机端,第一密钥要被加密密钥加密成第一数据包,该加密过程由密钥分配装置中第一发送模块12实施完成。所述第一发送模块\n12所采用的加密算法可以是对称加密算法或非对称加密算法,该对称加密算法和非对称加密算法可以采用自定义或经过改进的加密算法。例如采用现有的对称加密算法,常用的对称加密算法主要有DES、TripleDES、RC2、RC4、RC5和Blowfish等;或者采用现有技术中常用的非对称加密算法RSA、DSA、DiffieHellman、PKCS和PGP,无论采用何种加密方式都要保证将该加密密钥对应的解密密钥分配到主机端以实施解密。同样的,本发明中分配到主机端的解密密钥需要第二发送模块12基于一定的加密算法加密成第二密文数据包,所采用的加密算法可以是运行自定义的存储在密钥分配装置中的特定算法程序所实现,也可以是任何现有的算法。\n[0094] 在前述密钥生成模块11中,随即生成的加密密钥和解密密钥存储在密钥分配装置的存储装置中。需要被分配密钥的遥控器向该密钥分配装置发送一个请求,或者密钥分配装置响应于一个发送指令,由所述第一发送模块12向第一接口执行发送操作;同理,需要被分配密钥的主机向该密钥分配装置发送一个请求,或者密钥分配装置响应于一个发送指令,由所述第二发送模块13向第二接口执行发送操作。不难理解,通过上述接口向遥控器和主机发送数据可以是有线传输,也可以是无线传输,本发明对此不做限定。\n[0095] 由于需要第一发送模块12和第二发送模块13通过接口分别向遥控器和主机分配密钥及数据包,使得遥控器和主机能通过学习的方式配对。在一个实施例中,为了提高密钥分配的效率,所述第一发送模块12和第二发送模块13的发送操作同步执行。\n[0096] 根据本发明中第一发送模块12采用的加密算法不同,本发明通过两个实施例来实现,如下文所述。\n[0097] 1、在本发明的一个实施例中,所述第一密钥被加密密钥采用对称加密算法加密。\n本实施例以对称加密算法DESede为例来说明该实施例的实现过程,当然本发明也可以采用其他对称加密算法,该实施例并不能构成对本发明的限制。首先第一发送模块12从密钥文件存储装置中读出用于DESede加密算法的加密密钥和解密密钥。该第一发送模块12采用加密密钥基于对称加密算法DESede对生成的第一密钥进行加密生成第一密文数据包,再通过第一发送模块12将第一密钥和第一密文数据包通过有线或无线的通信方式通过第一接口传输到防盗设备的遥控器端。\n[0098] 第二发送模块13采用第二密钥基于一定的加密算法对解密密钥进行加密生成第二密文数据包,再由第二发送模块13将第二密钥和第二密文数据包通过有线或无线的通信方式通过第二接口传输到防盗设备的主机端。在本实施例中,所述的加密算法可以是按照一个既定的算法生成所述的第二密文数据包,所述的既定算法可以是任何现有的算法或本发明之后开发的算法中适合的算法。但需要保证所述接收方的主机端同时配置有该加密算法所对应的解密算法。\n[0099] 2、在本发明的又一个实施例中,所述第一密钥被加密密钥采用非对称加密算法加密。本实施例以非对称加密算法RSA为例来说明该实施例的实现过程,当然本发明也可以采用其他非对称加密算法,该实施例并不能构成对本发明的限制。首先第一发送模块12从公钥文件存储装置中读出用于RSA加密算法的加密公钥,从私钥文件存储装置中读出对应的解密私钥。所述第一发送模块12采用加密公钥基于非对称加密算法RSA对生成的第一密钥进行加密生成第一密文数据包,再将第一密钥和第一密文数据包通过有线或无线的通信方式通过第一接口传输到防盗设备的遥控器端。\n[0100] 第二发送模块13还被配置为采用第二密钥基于一定的加密算法对解密私钥进行加密生成第二密文数据包,再将第二密钥和第二密文数据包通过有线或无线的通信方式通过第二接口传输到防盗设备的主机端。在本实施例中,所述的加密算法可以是按照一个既定的算法生成所述的第二密文数据包,所述的既定算法可以是任何现有的算法或本发明之后开发的算法中适合的算法。但需要保证所述接收方的主机端同时配置有该加密算法所对应的解密算法。\n[0101] 在本发明的密钥分配装置完成了其中一套汽车防盗设备的密钥分配后,可以重复调用上述各模块为更多的汽车防盗设备分配密钥,可以在批量生产中应用。本发明采用的密钥生成模块11可以生成不同的加密密钥、解密密钥、第一密钥和第二密钥,使得不同的汽车防盗设备中被分配的各密钥不同,防止汽车防盗设备被批量破解。\n[0102] 在本发明的一个应用场景中,所述汽车防盗设备的密钥分配装置预先生成加密密钥、解密密钥、第一密钥和第二密钥并存储,当然,上述各密钥也可以是在密钥分配装置收到汽车防盗设备的请求或密钥分配装置上的指令后再随机生成。响应于遥控器的密钥分配请求或密钥分配装置上的指令,所述密钥分配装置通过向第一接口发送第一密钥及采用所述加密密钥对该第一密钥加密形成的第一密文数据包,以将该第一密钥及第一密文数据包写入汽车防盗设备的遥控器;响应于主机的密钥分配请求或密钥分配装置上的指令,该密钥分配装置通过向第二接口发送第二密钥及采用该第二密钥对所述解密密钥进行加密形成的第二密文数据包,以将该第二密钥及第二密文数据包写入汽车防盗设备的主机。重复执行上述操作,使每次产生的加密密钥及其解密密钥均不同于以往以作用于不同的汽车防盗设备。\n[0103] 综上所述,本发明中通过第一接口向遥控器端发送第一密钥、采用生成的加密密钥加密有第一密钥的第一密文数据包;以及通过第二接口向主机端发送第二密钥、采用该第二密钥加密有解密密钥的第二密文数据包,其中,加密密钥和解密密钥为数学上相关的对应加解密密钥。使得遥控器端向主机发送第一密文数据包请求配对时,主机端采用解密得出的解密密钥解密该第一密文数据包得到该第一密钥完成配对。第一密钥在从遥控器端传送给主机的过程中被加密在第一密文数据包中,即使被非法截获因没有解密密钥也无法得到该第一密钥,且用于解密该第一密文数据包的解密密钥也被加密在第二密文数据包中被分配到主机端,不能被非法截获而得到。提高了整个汽车防盗设备的安全性。\n[0104] 进一步的,由于本发明中密钥分配装置每次生成的第一密钥、第二密钥、加密密钥和解密密钥均是唯一的,即使上述4个密钥均泄露,也只能破解一台分配有上述密钥的汽车防盗设备,能避免汽车防盗器被批量破解,进一步提高了汽车防盗设备的安全性。\n[0105] 在此处所提供的说明书中,虽然说明了大量的具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实施例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。\n[0106] 虽然上面已经示出了本发明的一些示例性实施例,但是本领域的技术人员将理解,在不脱离本发明的原理或精神的情况下,可以对这些示例性实施例做出改变,本发明的范围由权利要求及其等同物限定。
法律信息
- 2020-10-20
未缴年费专利权终止
IPC(主分类): H04L 9/08
专利号: ZL 201510718955.5
申请日: 2015.10.28
授权公告日: 2018.11.20
- 2018-11-20
- 2017-08-22
著录事项变更
申请人由铁将军汽车电子有限公司变更为铁将军汽车电子股份有限公司
地址由528425 广东省中山市东凤镇东阜路和平大道铁将军工业园变更为528425 广东省中山市东凤镇东阜路和平大道铁将军工业园
- 2016-02-17
实质审查的生效
IPC(主分类): H04L 9/08
专利申请号: 201510718955.5
申请日: 2015.10.28
- 2016-01-20
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-04-03
|
2013-01-04
| | |
2
| |
2011-06-29
|
2009-12-24
| | |
3
| |
2009-05-20
|
2007-11-13
| | |
4
| |
2010-08-04
|
2010-01-14
| | |
5
| |
2008-02-06
|
2007-09-03
| | |
6
| |
2013-12-18
|
2012-05-31
| | |
7
| | 暂无 |
2012-12-14
| | |
8
| |
2014-09-10
|
2014-05-30
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |