用于促进安全通信的方法和系统转让专利

申请号 : CN201610380536.X

文献号 : CN106254304A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 尤尔根·盖林斯吉亚斯·阿尔-卡迪彼得·波拉克

申请人 : 恩智浦有限公司

摘要 :

根据本发明的第一方面,构想一种用于促进网络中的安全通信的方法,所述方法包括:通过所述网络中的源节点将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别所述网络中的目标节点的装置识别符;通过所述源节点将所述已加密密码密钥发送到所述目标节点。根据本发明的第二方面,提供一种相对应的非暂时性的有形计算机程序产品。根据本发明的第三方面,提供一种用于促进网络中的安全通信的相对应的系统。

权利要求 :

1.一种用于促进网络中的安全通信的方法,其特征在于,包括:通过所述网络中的源节点将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别所述网络中的目标节点的装置识别符;

通过所述源节点将所述已加密密码密钥发送到所述目标节点。

2.根据权利要求1所述的方法,其特征在于,另外包括通过所述目标节点将所述装置密钥用作解密密钥来对所述已加密密码密钥解密。

3.根据权利要求2所述的方法,其特征在于,另外包括通过所述目标节点通过以下步骤确认所述密码密钥的接收:将所述密码密钥用作加密密钥来对所述装置密钥加密,且将所述已加密装置密钥发送到所述源节点。

4.根据在前的任一项权利要求所述的方法,其特征在于,所述源节点是网络网关。

5.根据在前的任一项权利要求所述的方法,其特征在于,所述密码密钥是秘密主密钥。

6.根据在前的任一项权利要求所述的方法,其特征在于,所述装置识别符是所述目标节点的唯一序列号。

7.根据在前的任一项权利要求所述的方法,其特征在于,所述装置密钥与所述装置识别符相同。

8.根据在前的任一项权利要求所述的方法,其特征在于,所述装置密钥包括所述装置识别符和一个或多个填补位。

9.根据在前的任一项权利要求所述的方法,其特征在于,所述装置密钥包括所述装置识别符和所述装置识别符的至少一个副本。

10.根据在前的任一项权利要求所述的方法,其特征在于,所述装置密钥已经通过执行预定义单向函数来产生,所述单向函数将至少所述装置识别符用作输入参数。

11.根据在前的任一项权利要求所述的方法,其特征在于,另外包括将所述装置密钥存储在所述源节点的存储器单元中,使得在已经过任意量的时间之后,所述源节点可以借助于所述装置密钥来验证所述目标节点。

12.一种非暂时性的有形计算机程序产品,其特征在于,包括指令,所述指令在被处理单元执行时使得所述处理单元实行或控制根据在前的任一项权利要求所述的方法。

13.一种用于促进网络中的安全通信的系统,其特征在于,所述系统包括源节点,所述源节点被布置成:将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别所述网络中的目标节点的装置识别符;

将所述已加密密码密钥发送到所述目标节点。

14.根据权利要求13所述的系统,其特征在于,另外包括所述目标节点,其中所述目标节点被布置成将所述装置密钥用作解密密钥来对所述已加密密码密钥解密。

说明书 :

用于促进安全通信的方法和系统

技术领域

[0001] 本发明涉及一种用于促进网络中的安全通信的方法。此外,本发明涉及一种相对应的非暂时性的有形计算机程序产品,且涉及一种用于促进网络中的安全通信的相对应的系统。

背景技术

[0002] 现今,电子装置通常是可联网装置。也就是说,此类装置通常可以并入到有线网络或无线网络中,所述有线网络例如以太网,所述无线网络例如蜂窝式网络、ZigBee网络、蓝牙网络和Wi-Fi网络。装置的网络的另一实例是车载网络。可联网装置可以经由有线或无线通信信道将大量数据发送到彼此。为了保护所发送的数据,通常对数据加密。例如,可以通过执行密码算法来对数据加密,密码算法将密码密钥和所述数据用作输入,或换句话说,可以用密码密钥对数据加密。此类密码算法的实例是所谓的高级加密标准(AES)算法。在对称密钥密码算法的情况下,密码密钥是在数据传输所涉及的源节点和目标节点之间共享的秘密密钥。此秘密密钥通常被称作主密钥。当例如在目标节点调试过程中将此主密钥分配到网络节点时,可能希望保护此主密钥,该目标节点调试过程在主密钥的部署之前。

发明内容

[0003] 根据本发明的第一方面,构想一种用于促进网络中的安全通信的方法,该方法包括:通过网络中的源节点将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别网络中的目标节点的装置识别符;通过所述源节点将已加密密码密钥发送到目标节点。
[0004] 在一个或多个实施例中,该方法另外包括通过目标节点将装置密钥 用作解密密钥来对已加密密码密钥解密。
[0005] 在一个或多个实施例中,该方法另外包括通过目标节点通过以下步骤确认密码密钥的接收:将密码密钥用作加密密钥来对装置密钥加密,且将已加密装置密钥发送到源节点。
[0006] 在一个或多个实施例中,源节点是网络网关。
[0007] 在一个或多个实施例中,密码密钥是秘密主密钥。
[0008] 在一个或多个实施例中,装置识别符是目标节点的唯一序列号。
[0009] 在一个或多个实施例中,装置密钥与装置识别符相同。
[0010] 在一个或多个实施例中,装置密钥包括装置识别符和一个或多个填补位。
[0011] 在一个或多个实施例中,装置密钥包括装置识别符和装置识别符的至少一个副本。
[0012] 在一个或多个实施例中,装置密钥已经通过执行预定义单向函数来产生,该单向函数将至少装置识别符用作输入参数。
[0013] 在一个或多个实施例中,该方法另外包括将装置密钥存储在源节点的存储器单元中,使得在已经过任意量的时间之后,源节点可以借助于所述装置密钥来验证目标节点。
[0014] 根据本发明的第二方面,提供一种非暂时性的有形计算机程序产品,该计算机程序产品包括指令,这些指令在被处理单元执行时,使得所述处理单元实行或控制所阐述的种类的方法。
[0015] 根据本发明的第三方面,提供一种用于促进网络中的安全通信的系统,所述系统包括源节点,该源节点被布置成:将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别网络中的目标节点的装置识别符;将已加密密码密钥发送到目标节点。
[0016] 在一个或多个实施例中,该系统另外包括目标节点,其中所述目标节点被布置成将装置密钥用作解密密钥来对已加密密码密钥解密。

附图说明

[0017] 将参考附图更详细地描述实施例,在附图中:
[0018] 图1示出网络的实例;
[0019] 图2示出用于促进安全通信的方法的说明性实施例;
[0020] 图3示出用于促进安全通信的方法的另一说明性实施例;
[0021] 图4示出用于促进安全通信的方法的另一说明性实施例;
[0022] 图5示出用于产生装置密钥的方法的说明性实施例。

具体实施方式

[0023] 图1示出网络100的实例。确切地说,图1示出装置102、104、106、108、110、112的网络的实例。装置102、104、106、108、110、112可以经由有线通信信道(例如在以太网络中)或无线通信信道(例如在蜂窝式网络、ZigBee网络、蓝牙网络、Wi-Fi网络中)连接到彼此。该网络包括源节点102和多个目标节点104、106、108、110、112。源节点102可以经由所述有线或无线通信信道将数据传送到每个目标节点104、106、108、110、112。源节点102可以是例如网络网关。为保护在源节点102和目标节点104、106、108、110、112之间传送的数据,通常借助于加密函数对数据加密,该加密函数将所述数据和密码密钥用作输入参数。目标节点104、106、108、110、112随后应借助于解密函数对数据解密,该解密函数将所接收的已加密数据和相对应的密码密钥用作输入参数。例如,加密和解密函数可以是基于AES算法,AES算法是对称密钥算法。在此情况下,密码密钥(到加密函数的输入)与相对应的密码密钥(到解密函数的输入)相同。在可以通过目标节点对数据解密之前,应该使所述目标节点可获得密码密钥。为防止在主密钥交换期间的安全性危害,可能希望以简单而又安全的方式实现上述目标。因此,根据本发明,提供一种用于促进网络中的安全通信的方法。此方法可以用于许多种类的网络,例如以太网、ZigBee网络、蓝牙Wi-Fi以及车载网络。
[0024] 图2示出用于促进安全通信的方法200的说明性实施例。方法200包括,在202处,通过网络中的源节点将装置密钥用作加密密钥来对密码密钥加密,其中所述装置密钥是基于识别网络中的目标节点的装置识 别符。此外,该方法包括,在204处,通过所述源节点将已加密密码密钥发送到目标节点。因为装置识别符已经存在于目标节点中或是目标节点容易存取的(例如,装置识别符可以驻留在所述节点的存储器单元中),所以可容易地获得解密过程所需的要素中的一个要素。如果装置密钥与装置识别符相同,那么可以实现尤其有效的实施方案。在此情况下,目标节点可以简单地将装置识别符用作解密密钥以用于对已加密密码密钥解密。然而,即使需要执行一些计算以便从装置识别符导出装置密钥,但识别符的使用仍可实现相对较有效的过程。装置识别符可以例如是目标节点的唯一序列号,在此情况下,装置密钥也可以被视为唯一的,因此提供高安全性水平。应注意,装置识别符不需要是固定数字;装置识别符还可以是目标节点的属性,或与所述节点相关联的唯一但变化的数据,该数据可以用以识别该节点。
[0025] 图3示出用于促进安全通信的方法300的另一说明性实施例。除了图2中示出的步骤之外,方法300包括在302处的步骤,其中目标节点将装置密钥用作解密密钥来对已加密密码密钥解密。在将对称密钥算法用于对密码密钥加密的情况下,此实施例可以实现尤其有效的实施方案。
[0026] 图4示出用于促进安全通信的方法400的另一说明性实施例。除了图3中示出的步骤之外,方法400包括在402处的步骤,其中目标节点确认已加密密码密钥的接收。因此,源节点接收以下确认:目标节点将能够对已经用密码密钥加密的数据解密,且因此源节点可以开始用所述密码密钥对数据加密。相对较有效的确认过程可以通过以下操作实现:将密码密钥用作加密密钥来对目标节点可容易获得的装置密钥加密且将已加密装置密钥发送到源节点。源节点随后可以将密码密钥(源节点可容易获得所述密码密钥)用作解密密钥来对所接收的已加密装置密钥简单地解密。如果解密的结果与在步骤202中使用的装置密钥匹配,那么源节点可以安全地认为目标节点拥有正确的密码密钥。
[0027] 如上文所提及,装置密钥可以与装置识别符相同,这可以产生尤其有效的实施方案。在此情况下,将装置密钥提供到源节点也可以是相对较容易的。例如,装置密钥/识别符可以被包括在附接到目标节点的条形 码或QR码中,且源节点可以包括读取器装置,读取器装置被布置成从所述条形码或QR码读取装置密钥/识别符。替代地但非限制性地,装置密钥/识别符可以由最终用户通过源节点的用户接口输入,或装置密钥/识别符可以从包括在目标节点中或附接到目标节点的NFC标签读取。还可能的是,用户使用手机来扫描目标节点的QR码,且经由例如NFC将装置识别符传递到源节点。NFC标签的使用还可以使得能够将更加复杂的装置密钥提供到源节点。例如,目标节点可以对装置识别符执行一些计算且将所得装置密钥存储在其NFC标签中。举例来说,如果装置识别符大小小于所需的加密/解密密钥大小,那么此类计算可能是必需的。在此情况下,可以使用许多不同的技术来将较小字变换成与所需密钥大小匹配的较大字;一种此类技术是填补。可以将填补位添加到装置识别符以便增加其长度;所得装置密钥因此包含装置识别符和一个或多个填补位。替代地或另外,装置识别符可以至少重复一次以便产生装置密钥。例如,如果装置识别符具有32位的长度,且所需加密/解密密钥大小是128位,那么装置识别符可以重复三次;所得装置密钥因此包含装置识别符和装置识别符的三个副本。源节点和目标节点应该都知道用于填补的方法。在一些实施例中,装置密钥还可以包含装置识别符、装置识别符的至少一个副本以及一个或多个填补位。在其它实施例中,装置密钥可以借助于更加复杂的过程产生,这些更加复杂的过程可以实现高安全性水平。此类过程的实例在图5中示出。
[0028] 应注意,在一些实施例中,如果装置密钥不与装置识别符相同,那么计算装置密钥所需的的计算仅可以通过目标节点执行。在此情况下,目标节点应该使源节点可获得装置密钥。在其它实施例中,可以将仅装置识别符提供到源节点。在那些实施例中,如果装置密钥不与装置识别符相同,那么源节点可以执行产生装置密钥所需的计算。然而,在此情况下,目标节点应该对其装置识别符执行相同的计算。因此,计算算法的细节应该在源节点和目标节点之间共享。例如,这可以在目标节点调试过程的第一阶段中进行。在后一阶段中,装置密钥随后可以通过源节点和目标节点两者计算。
[0029] 图5示出用于产生装置密钥的方法500的说明性实施例。方法500包括执行单向函数502,例如AES-128加密函数,该单向函数将两个值用作输入参数。第一值包括在最高有效位部分中的装置识别符(例如唯一序列号),以及在最低有效位部分中的一系列填补位(在此情况下为零)。第二值包括在最高有效位部分中的一系列填补位(在此情况下为零),以及在最低有效位部分中的装置识别符。单向函数502传回数据,数据的大小可能不与所需的加密/解密密钥大小匹配。在此情况下,可以执行密钥提取功能504。密钥提取功能504从通过单向函数502产生的数据提取装置密钥。
[0030] 在一些实施例中,装置密钥可以存储在源节点的存储器单元中,使得在已经过任意量的时间之后,源节点可以借助于所述装置密钥来验证目标节点。确切地说,如果源节点(例如网络网关)确定已经形成网络的部分的目标节点以非预期的方式运行,那么源节点可以通过以下操作来验证目标节点:(i)从源节点的存储器单元检索装置密钥,以及(ii)将用所述装置密钥加密的消息发送到目标节点。如果目标节点成功对已加密消息做出回复,那么可以推断目标节点拥有正确的装置密钥,且源节点可以安全地认为目标节点是真正的。当目标节点未能回复时,目标节点可能从网络断开或可以采取其它合适的措施。已加密消息可以发送若干次(即,两次或两次以上试验),且例如仅当目标节点未能对每个已加密消息做出回复时,目标节点才可能断开。
[0031] 本文中所描述的系统和方法可以由某一计算机程序或多个计算机程序实施,这些计算机程序可以在单一计算机系统中或跨多个计算机系统活跃和非活跃地呈多种形式而存在。例如,这些计算机程序可以作为由程序指令组成的软件程序存在于源代码、目标代码、可执行码或其它格式中以用于执行一些步骤。以上格式中的任一格式可以压缩或未压缩形式在计算机可读媒体上体现,计算机可读媒体可以包括存储装置和信号。
[0032] 如本文中所使用,术语“移动装置”是指任何类型的便携式电子装置,包括蜂窝式电话、个人数字助理(PDA)、智能电话、平板计算机等。 此外,术语“计算机”是指包括处理器(例如,通用中央处理单元(CPU)、专用处理器或微控制器)的任何电子装置。计算机能够接收数据(输入),能够对数据执行一系列预定操作,并且由此能够产生呈信息或信号形式的结果(输出)。取决于上下文,术语“计算机”将意指(具体来说)处理器或(更一般地)与单个壳体或外壳内容纳的相关元件的组合相关联的处理器。
[0033] 术语“处理器”是指数据处理电路,该数据处理电路可以是微处理器、协同处理器、微控制器、微型计算机、中央处理单元、现场可编程门阵列(FPGA)、可编程逻辑电路、和/或基于存储于存储器中的可操作指令而操纵信号(模拟信号或数字信号)的任何电路。术语“存储器”是指某一存储电路或多个存储电路,例如只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、闪存存储器、高速缓冲存储器和/或存储数字信息的任何电路。
[0034] 如本文所使用,“计算机可读媒体”或“存储媒体”可以是能够容纳、存储、传送、传播或传输计算机程序以供指令执行系统、设备或装置使用或结合指令执行系统、设备或装置使用的任何构件。计算机可读媒体可以是例如但不限于电子、磁性、光学、电磁、红外线或半导体系统、设备、装置或传播媒体。计算机可读媒体的更加具体的实例(非穷尽性列表)可以包括以下各项:具有一根或多根导线的电连接、便携式计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存存储器)、光纤、便携式光盘只读存储器(CDROM)、数字多功能光盘(DVD)、蓝光光盘(BD)以及存储卡。
[0035] 应注意,已经参考不同标的物描述了以上实施例。确切地说,一些实施例可能是已参考方法类的权利要求来描述的,而其它实施例可能是已参考设备类的权利要求来描述的。然而,本领域的技术人员将从上述内容了解到,除非另外指明,否则除属于一种类型的标的物的特征的任意组合外,与不同标的物相关的特征的任意组合,特别是方法类的权利要求的特征和设备类的权利要求的特征的组合,也视为与此文档一起公 开。
[0036] 此外,应注意,图式是示意性的。在不同图式中,类似或相同的元件具有相同的附图标记。此外,应注意,为了提供说明性实施例的简洁描述,可能并未描述属于技术人员的习惯做法的实施细节。应了解,在任何此类实施方案的发展中,如在任何工程或设计项目中,必须制定大量实施方案特定的决策以便实现研发者的特定目标,例如遵守系统相关的和商业相关的约束条件,这些约束条件在不同的实施方案之间可能不同。此外,应了解,此类研发工作可能是复杂且耗时的,但不过是本领域技术人员进行设计、制造和生产的例行任务。
[0037] 最后,应注意,技术人员将能够在不脱离所附权利要求书的范围的情况下设计许多替代实施例。在权利要求书中,置于圆括号之间的任何附图标记不应解释为限制权利要求。单词“包括”不排除在权利要求中列出的那些元件或步骤之外的元件或步骤的存在。在元件之前的单词“一”不排除多个此类元件的存在。权利要求书中所叙述的措施可以借助于包括若干不同元件的硬件和/或借助于适当编程设计的处理器来实施。在列出若干构件的装置权利要求项中,可以通过硬件中的同一个物件实施若干这些构件。在彼此不同的附属权利要求项中叙述某些措施这一单纯事实并不指示不能使用这些措施的组合来获得优势。
[0038] 附图标记列表
[0039] 100 网络
[0040] 102 源节点
[0041] 104 目标节点
[0042] 106 目标节点
[0043] 108 目标节点
[0044] 110 目标节点
[0045] 112 目标节点
[0046] 200 用于促进安全通信的方法
[0047] 202 源节点将装置密钥用作加密密钥来对密码密钥加密
[0048] 204 源节点发送已加密密码密钥
[0049] 300 用于促进安全通信的方法
[0050] 302 目标节点将装置密钥用作解密密钥来对已加密密码密钥解密
[0051] 400 用于促进安全通信的方法
[0052] 402 目标节点确认已加密密码密钥的接收
[0053] 500 用于产生装置密钥的方法
[0054] 502 单向函数
[0055] 504 密钥提取功能。