一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对IoT设备的硬件加密模块的配置方法及相关设备与流程

2022-02-22 03:03:02 来源:中国专利 TAG:

对iot设备的硬件加密模块的配置方法及相关设备
技术领域
1.本发明涉及iot设备的配置技术,尤其涉及对iot设备的硬件加密模块的配置方法及相关设备。


背景技术:

2.物联网(internet of things,iot)是互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。物联网三大层次包括感知层、网络层和应用层:感知层的主要功能是信息采集和数据的初步处理;网络层的主要功能是将数据上传至云端服务器;应用层的主要功能是对从云端服务器中接收到的数据进行分析处理。在以上分层结构中,参见图1,存在于感知层的iot设备的基本系统组成主要包括微控制单元(microcontroller unit,mcu,又称主控芯片)、传感器sensor和无线通信模块modem。iot设备在集成无线通信模块后被赋能网络通信能力,因此其可通过网络层将数据上传至云端服务器。
3.在通常场景中,终端设备与云端服务器交互的流程可大致分为两个步骤:
4.(1)数据传输前的身份认证,以确保对方身份的合法性。身份认证的前提是为设备创建身份信息,即为其创建数字证书;
5.(2)数据加密传输,以确保数据的保密性。数据加密传输的前提是发送方对数据加密,然后接收方对数据解密,因此需要创建用于加解密过程中的密钥对。
6.在以上过程中,数字证书与密钥对必须安全存储在iot设备中,若泄漏则会面临身份被冒充、数据被篡改或窃取的可能性。为了确保安全性,设备制造商可在生产时将密钥对和数字证书存储在加密芯片中,该加密芯片即为硬件加密模块(hardware security module,hsm),也称为加密机。
7.hsm是专为保护关键数据生命周期而设计的专用加密处理器。硬件加密模块通过在可靠且防篡改的设备中安全地管理、处理和保存加密密钥和数字证书等关键数据,能为广泛的应用程序提供保护加密密钥和配置加密、解密、身份认证和数字签名的服务。
8.本技术的发明人通过研究发现,现有的hsm数据配置流程中,尚存在一些缺点。一者,hsm的配置流程中上缺少了过程控制机制,难以确保每次配置是成功的,这增加了产品不良率。再者,hsm的配置流程缺少了结果回溯机制,每次配置失败需要重新复现问题,耗时且费力,由于hsm芯片的配置是一次性的,因此每一次尝试都会损耗一块芯片,调试成本较高。


技术实现要素:

9.本发明实施例提供了对iot设备的硬件加密模块的配置方法及相关设备,能够解决上述提及的至少一种技术缺陷。
10.第一方面,本发明实施例提供了一种对iot设备的硬件加密模块的配置方法,方法应用于上位机,包括:在检测到待测试的iot设备后,启动对所述iot设备的前置检查;在所
述前置检查通过后,执行对所述iot设备的硬件加密模块的数据配置,所述数据配置包括对密钥对的配置和对数字证书的配置。
11.其中,所述前置检查包括以下一种或多种检查操作:
12.检查所述iot设备的当前站位是否正确;
13.检查所述iot设备是否已过站;
14.检查所述iot设备和所述上位机是否匹配;
15.检查所述iot设备的硬件加密模块是否已配置数据。
16.本技术实施例通过前置检查来增加了过程控制机制,确保只有每次前置检查都是成功的情况下才会执行后续的相关配置,从而能够大大降低iot设备产品不良率。
17.在一些可能的实施例中,所述执行对所述iot设备的硬件加密模块的数据配置,包括:在将密钥对存储到所述硬件加密模块的内部指定区域后,进行密钥回读,以确认所述密钥对的存储是否成功。
18.在一些可能的实施例中,所述执行对所述iot设备的硬件加密模块的数据配置,包括:在将数字证书存储到所述硬件加密模块的内部指定区域后,进行证书回读及证书校验,以确认所述数字证书的存储是否成功。
19.在一些可能的实施例中,所述方法还包括:在所述前置检查未通过时,终止对所述iot设备的硬件加密模块的数据配置。
20.在一些可能的实施例中,所述启动对所述iot设备的前置检查之后还包括:当所述前置检查的任一项检查操作完成时,上传该项检查操作的检查结果到管理系统。
21.在一些可能的实施例中,所述执行对所述iot设备的硬件加密模块的数据配置之后还包括:当完成执行对密钥对的配置和/或对数字证书的配置时,上传对应的配置结果到管理系统。
22.在一些可能的实施例中,所述上位机包括物理机或虚拟机。
23.第二方面,本技术提供一种用于对iot设备的硬件加密模块配置的装置,所述装置包括:
24.检查单元,用于在检测到待测试的iot设备后,启动对所述iot设备的前置检查;
25.配置单元,用于在所述前置检查通过后,执行对所述iot设备的硬件加密模块的数据配置,所述数据配置包括对密钥对的配置和对数字证书的配置。
26.该装置可用于实现第一方面任意实施例描述的方法。
27.第三方面,本技术提供一种上位机,上位机包括:存储器、处理器和通信接口,上述部件通过总线连接,其中所述存储器用于存储程序指令,所述通信接口用于实现与iot设备的通信,所述处理器用于调用存储器中的程序指令以执行第一方面任意实施例描述的方法。
28.第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储了计算设备所执行配置方法的程序代码。所述程序代码包括用于执行在第一方面中任一项的方法的指令。
29.实施本技术实施例,一方面,在基础生产流程上增加了过程控制机制,确保每次配置是成功的,以降低产品不良率。另一方面,在基础生产流程上增加了结果回溯机制,使得可对不良品进行日志分析,方便对生产流程的持续改进或及时纠错,可以有效减少甚至避
免后续对其他iot设备的hsm进行配置时出现类似问题。整体上,也降低了人力物力成本。
附图说明
30.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
31.图1是本技术实施例涉及的一种iot设备结构示意图;
32.图2是本发明实施例涉及的一种配置系统架构示例图;
33.图3是现有的一种上位机实现对hsm的数据配置的流程的示意图;
34.图4是本技术实施例提供的一种对iot设备的硬件加密模块的配置方法的流程示意图;
35.图5是本发明实施例提供的又一种数据配置方法的流程示意图;
36.图6是本发明实施例提供的几种数据回溯流程的示意图;
37.图7是本发明实施例提供的又一种数据配置方法的流程示意图
38.图8是本发明实施例提供的一种装置的结构示意图;
39.图9是本发明实施例提供的一种上位机的结构示意图。
具体实施方式
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.需要说明的是,在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
42.为了更好理解本技术应用场景,首先描述下常规的加密芯片数据配置方案。
43.参见图2,如图2为一种集成了硬件加密模块(hsm)的iot设备的生产配置系统框图。
44.系统组成上,主控芯片mcu与硬件加密模块hsm电气连接(也可以是无线通信模块与hsm电气连接),交互的接口是i2c接口(也可以是uart或spi接口等)。上位机通过usb接口与主控芯片交互,使得上位机可对整个iot设备进行逻辑控制。其中,iot设备包括主控芯片mcu、传感器sensor、无线通信模块modem和硬件加密模块hsm。上位机用于实现对iot设备中的hsm进行数据配置。iot设备与上位机之间可以通过usb总线连接,上位机向主控芯片发送指令,以及接收主控芯片反馈的结果,从而实现对hsm进行数据配置。也就是说,上位机通过控制主控芯片来实现对hsm的数据配置。
45.参见图3,图3示出了现有的一种上位机实现对hsm的数据配置的流程,该流程包括
如下步骤:
46.步骤1、上位机控制(例如vm虚拟机)主控芯片发送命令a触发hsm生成密钥对。
47.步骤2、上位机控制主控芯片发送命令b触发操作把密钥对存储在hsm内部指定区域。
48.步骤3、上位机控制主控芯片发送命令c,锁定存储密钥对的区域。
49.步骤4、上位机控制主控芯片发送命令d触发hsm生成数字证书。
50.步骤5、上位机控制主控芯片发送命令b触发操作把数字证书存储在hsm内部指定区域。
51.步骤6、上位机控制主控芯片发送命令c,锁定存储证书的区域。
52.步骤7、该iot设备的hsm数据配置结束。
53.需要说明的是,上述命令a/b/c意指不同的指令,而非指指令名称。
54.本领域技术人员通过创造性劳动,发现在该现有的hsm数据配置流程存在一些缺点:
55.(1)hsm的配置流程中上缺少了过程控制机制,难以确保每次配置是成功的,这增加了产品不良率;
56.(2)hsm的配置流程中上缺少了结果回溯机制,每次配置失败需要重新复现问题,耗时且费力。因为hsm芯片的配置是一次性的,芯片需要确保存储的关键数据是不可篡改的,设计时会要求一旦数据写入存储区后则锁定该区域,使得数据不可被修改以此防篡改。所以,因此每一次失败的配置尝试都会损耗一块芯片,导致了数据配置成本的过多增加。
57.为了克服现有的技术缺陷,本技术实施例提供了一种改进的对hsm芯片的数据配置生产系统以及相关的配置方法及设备,在系统旨在于生产时预配置数字证书与密钥对到加密芯片中,使加密芯片安全可控地生成和存储设备所需的密钥对和证书等关键数据。本发明也是基于此进行的数据配置生产系统的设计。本发明所聚焦的关键点不是加密芯片的功能本身,而是对加密芯片的预配置生产过程。基本配置方法是通过指定的总线协议对加密芯片进行指令控制,从而触发密钥对生成、证书生成、数据加密、数据存储和数据读取等操作。在此基础上,一方面,在基础生产流程上增加了过程控制机制,确保每次配置是成功的,以降低产品不良率。另一方面,在基础生产流程上增加了结果回溯机制,使得可对不良品进行日志分析,方便对生产流程的持续改进或及时纠错。
58.下面通过具体实施例进行详细说明。
59.参见图4,图4是本技术实施例提供的一种对iot设备的硬件加密模块的配置方法,所述方法可应用于上位机,其中,该上位机可以是物理机或者虚拟机,该上位机可以通过控制主控芯片来实现对hsm的数据配置,配置过程包括但不限于以下步骤:
60.步骤101,在检测到待测试的iot设备后,启动对所述iot设备的前置检查。
61.其中所述前置检查包括以下一种或多种检查操作:
62.检查所述iot设备的当前站位是否正确;
63.检查所述iot设备是否已过站;
64.检查所述iot设备和所述上位机是否匹配;
65.检查所述iot设备的硬件加密模块是否已配置数据。
66.在一优选实施例中,可以执行上述提及的所有检查操作。
67.当上述检查的至少一项操作未通过时,即意味着所述前置检查未通过,此时可以终止对所述iot设备的硬件加密模块的数据配置,即不执行后续步骤102。
68.相应的,判断操作为未通过可以是如下至少一项:
69.通过检查确定所述iot设备的当前站位不正确;
70.通过检查确定所述iot设备已过站;
71.通过检查确定所述iot设备和所述上位机不匹配;
72.通过检查确定所述iot设备的硬件加密模块已配置数据。
73.步骤102,在所述前置检查通过后,执行对所述iot设备的硬件加密模块hsm的数据配置,所述数据配置包括对密钥对的配置和对数字证书的配置。
74.可以看到,本技术实施例通过执行步骤101的前置检查来增加了过程控制机制,确保只有每次前置检查都是成功的情况下才会执行后续步骤102的相关配置,从而能够大大降低iot设备产品不良率。
75.在进一步的改进中,还可以增加结果回溯机制来全面提升系统的可回溯性,进一步降低不良产品导致的人力物力成本。具体可以通过以下一种或多种方式实现:
76.在一些具体实施例中,所述启动对所述iot设备的前置检查之后还包括:当所述前置检查的任一项检查操作完成时,上传该项检查操作的检查结果到管理系统。这样,管理系统能记录不同检查阶段的日志信息。
77.在一些具体实施例中,在将密钥对存储到所述硬件加密模块的内部指定区域后,进行密钥回读,以确认所述密钥对的存储是否成功。当完成执行对密钥对的配置时,不管存储结果是否成功,均上传对应的配置结果到管理系统进行记录。
78.在一些具体实施例中,在将数字证书存储到所述硬件加密模块的内部指定区域后,进行证书回读及证书校验,以确认所述数字证书的生成和存储是否成功。当完成执行对数字证书的配置时,不管证书生成和存储结果是否成功,均上传对应的配置结果到管理系统进行记录。
79.其中,本技术涉及的管理系统可以是一台或多台服务器,可以是独立服务器或者云端服务器。
80.可以看到,本技术实施例在基础生产流程上增加了结果回溯机制,使得可对不良品进行日志分析,方便对生产流程的持续改进或及时纠错。通过日志的记录及纠错,可以有效减少甚至避免后续对其他iot设备的hsm进行配置时出现类似问题。整体上,也降低了人力物力成本。
81.为了更好理解本技术方案,下面以一种优选实施例的具体实现进行方案阐述。
82.参见图5,图5为一种系统的数据配置流程的具体示例,该系统涉及上位机、iot设备、log系统和mes系统,mes系统是一套企业生产过程执行管理系统,用于监控生产每个流程的执行结果。log系统用于记录整个数据配置生产流程的log信息。流程涉及的上位机可以运行虚拟机(vm)的ubuntu操作系统,数据配置系统涉及相关程序指令包括vm上的执行脚本及在iot设备中运行的应用程序。该过程是完全自动化的,流程由系统桌面上的一键式执行脚本触发开启,整个系统的数据配置机制的运行逻辑如流程图5所示包括以下步骤:
83.1,上位机中的vm中的数据配置流程启动后,上位机等待iot设备的连接。
84.2,开启log系统。
85.3,获取必要的生产信息,开启mes系统连接。
86.4,上位机检查当前生产站位是否正确,避免待配置的iot设备在上一/几个步骤的生产工序中漏操作。
87.5,上位机检查iot设备是否已过站,确保待配置的iot设备在mes系统中不被重复上传结果。
88.6,上位机检查vm虚拟机与iot设备的版本是否匹配,确保待配置设备与执行脚本及应用程序匹配。也就是说,该系统可适用于不同类型或功能的iot设备的生产,通过版本检查的方式能够避免错配。
89.7,配置数据前,iot设备安装配置关键数据(如密钥对,数字证书)所需的应用程序,该应用程序用于控制设备硬件接口(如i2c)与hsm交互,从而实现证书生成、密钥生成和数据存储等功能。
90.8,配置数据前,上位机检查hsm是否已配置数据,避免重复操作而降低产线效率。
91.9,执行hsm关键数据配置流程,最终得到该工序的结果。该过程可能出现如下结果:
92.若出现公钥校验失败,则进入结束情况

报错并将结果上传mes系统。
93.若出现证书生成失败,则报错并将结果上传mes系统。
94.若出现证书校验失败,则报错并将结果上传mes系统。
95.若出现写数据失败,则报错并将结果上传mes系统。
96.此外可选的若出现其他错误,也可以报错并将结果上传mes系统。
97.若没有错误,则配置成功,上传成功结果到mes系统。
98.参见图6,在本技术的流程中,结果回缩机制涉及的结束情况至少包括三种:
99.①
是直接报错而不上传结果到mes系统;
100.②
是报错并上传结果(含具体报错信息)到mes系统;通过mes系统可以显示是否已成功上传该报错结果以及错误原因;
101.③
是上传成功结果到mes系统;通过mes系统可以显示是否已成功上传该成功结果。
102.可以看出,本技术实施例在基础生产流程上增加了过程控制机制,确保每次配置是成功的,以降低产品不良率;并且在基础生产流程上增加了结果回溯机制,使得可对不良品进行日志分析,方便对生产流程的持续改进或及时纠错,大大降低iot设备产品不良率。
103.为了更好理解上述步骤9,下面进一步展开描述。参见图7,上述步骤9体现了改进后的hsm关键数据配置流程,该流程包括如下步骤:
104.步骤1,上位机控制主控芯片发送命令a触发hsm生成密钥对。
105.步骤2,上位机控制主控芯片发送命令b触发操作把密钥对存储在hsm内部指定区域。
106.步骤3,上位机控制主控芯片发送命令c,回读密钥以确认密钥对的存储操作已成功。
107.步骤4,上位机控制主控芯片发送命令d,锁定存储密钥对的区域。
108.步骤5,上位机控制主控芯片发送命令e触发hsm生成数字证书。
109.步骤6,上位机控制主控芯片发送命令b触发操作把证书存储在hsm内部指定区域。
110.步骤7,上位机控制主控芯片发送命令f,回读证书并进行证书校验,以确认证书生成并存储成功。
111.步骤8,上位机控制主控芯片发送命令d,锁定存储证书的区域。
112.步骤9,该iot设备的hsm数据配置结束。
113.同样,上述命令a/b/c意指不同的指令,而非指指令名称。
114.可以看到,相较于图3的现有流程,本技术实施例提出的关键数据配置流程在基础生产流程上增加了结果回溯机制,使得可对不良品进行日志分析,方便对生产流程的持续改进或及时纠错。通过日志的记录及纠错,可以有效减少甚至避免后续对其他iot设备的hsm进行密钥和/或证书配置时出现类似问题。
115.上文详细阐述了本发明实施例的方法,基于相同的发明构思,下面继续提供本技术相关的装置。
116.请参阅图8,图8是本发明实施例提供的一种用于对iot设备的硬件加密模块配置的装置20的结构示意图。该装置20包括:检查单元201、配置单元202和结果回溯单元203。其中:
117.检查单元201,用于在检测到待测试的iot设备后,启动对所述iot设备的前置检查;
118.配置单元202,用于在所述前置检查通过后,执行对所述iot设备的硬件加密模块的数据配置,所述数据配置包括对密钥对的配置和对数字证书的配置。
119.结果回溯单元203主要用于实现检查结果和/或配置结果的上报。
120.可以理解的是,图4方法实施例中的步骤101可由所述检查单元201执行;图4所述方法实施例中的步骤102可由所述配置单元202执行。
121.在一些实施例中,所述前置检查包括以下一种或多种检查操作:
122.检查所述iot设备的当前站位是否正确;
123.检查所述iot设备是否已过站;
124.检查所述iot设备和所述上位机是否匹配;
125.检查所述iot设备的硬件加密模块是否已配置数据。
126.在一些实施例中,配置单元202还用于在将密钥对存储到所述硬件加密模块的内部指定区域后,进行密钥回读,以确认所述密钥对的存储是否成功。
127.在一些实施例中,配置单元202还用于在将数字证书存储到所述硬件加密模块的内部指定区域后,进行证书回读及证书校验,以确认所述数字证书的存储是否成功。
128.在一些实施例中,检查单元201还用于,在所述前置检查未通过时,终止对所述iot设备的硬件加密模块的数据配置。
129.在一些实施例中,结果回溯单元203用于当所述前置检查的任一项检查操作完成时,上传该项检查操作的检查结果到管理系统。
130.在一些实施例中,结果回溯单元203用于当完成执行对密钥对的配置和/或对数字证书的配置时,上传对应的配置结果到管理系统。
131.各个模块的功能实现具体请参阅前文相关实施例描述,此处不再展开赘述。
132.请进一步参见图9,图9为一种上位机30的结构示意图。所述上位机30包括存储器302、处理器301和通信接口303,上述部件通过总线304连接。其中:
133.所述通信接口用于实现上位机30与iot设备的通信,以及上位机30与管理系统的通信。
134.处理器301可以是通用处理器,例如中央处理器(central processing unit,cpu)。
135.存储器302可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,ram);存储介质也可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,rom)、快闪存储器(flash memory)、硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);存储器302还可以包括上述种类的存储器的组合。存储器302可用于存储一组程序代码,还可以保存数据,处理器301用于调用存储器302中存储的程序代码,执行如图4实施例或其他实施例所示的方法步骤。
136.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
137.以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献