掌桥专利:专业的专利平台
掌桥专利
首页

一种身份管理方法、工业控制系统和存储介质

文献发布时间:2023-06-19 11:26:00


一种身份管理方法、工业控制系统和存储介质

技术领域

本发明涉及工业控制领域,特别涉及一种身份管理方法、工业控制系统和存储介质。

背景技术

工业控制系统(Industry Control System,ICS)作为重要的基础战略资源,应用于超过80%的关键基础设施,有着诸如控制水电站开关、检测电网状态或控制燃油燃气管道压力等能力,在国家基础建设的舞台中扮演着重要的角色。

近年来发生的重大工业信息安全事件涉及能源、交通、制造、医疗和通信等重要领域的关键信息基础设施,对许多国家的工业生产和国家安全造成严重影响。例如,“震网”、“火焰”及“黑色能量”等针对工业控制系统量身定制的恶意代码成为了工控系统和测控终端的主要安全威胁之一,其扩散及破坏过程非常隐蔽,可以突破以隔离为主的安全防护体系,使得恶意设备或未知设备可以访问工业控制系统中的正常设备,从而威胁工业控制系统的安全,现有的防护措施难以有效防御。

发明内容

鉴于上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的一种身份管理方法、工业控制系统和存储介质。

第一方面,一种身份管理方法,应用于一种工业控制系统,所述工业控制系统至少包括:第一设备节点和第二设备节点,所述第一设备节点和所述第二设备节点均嵌入或者集成有板卡,所述板卡中均预设有SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数;

所述身份管理方法包括:

所述第一设备节点向所述第二设备节点发送访问请求,所述访问请求中至少携带有第一标识,所述第一标识是所述第一设备节点的标识;

所述第二设备节点判断自身的访问名单中是否存在所述第一标识,若存在,则向所述第一设备节点发送签名请求;

所述第一设备节点接收到所述签名请求后,根据所述第一标识生成第一签名公钥;

所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,其中,所述第一签名公钥与所述第一签名私钥匹配;

所述第一设备节点使用所述第一签名私钥进行签名,从而生成第一数字签名;

所述第一设备节点将所述第一数字签名和所述第一签名公钥发送给所述第二设备节点;

所述第二设备节点接收到所述第一数字签名和所述第一签名公钥后,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第一数字签名进行验证,若验证通过,则允许所述第一设备节点访问所述第二设备节点,否则,禁止所述第一设备节点访问所述第二设备节点。

结合第一方面,在某些可选的实施方式中,应用于所述工业控制系统,所述工业控制系统还包括:安全管理平台;

所述身份管理方法还包括:

在有新的设备节点请求接入所述工业系统时,所述安全管理平台执行接入认证过程;

所述接入认证过程包括:

所述安全管理平台配置所述新的设备节点的第二标识;

所述安全管理平台将所述第二标识发送给所述第一设备节点;

所述安全管理平台控制所述新的设备节点根据所述第二标识生成第二签名公钥;

所述安全管理平台控制所述新的设备节点根据所述第二签名公钥、所述主私钥、所述主公钥和所述参数,生成第二签名私钥,其中,所述第二签名公钥与所述第二签名私钥匹配;

所述安全管理平台控制所述新的设备节点使用所述第二签名私钥对第二随机数进行签名,从而生成第二数字签名,其中,所述第二随机数为所述新的设备节点生成的随机数;

所述安全管理平台控制所述新的设备节点将所述第二数字签名和所述第二签名公钥发送至所述第一设备节点,以使得所述第一设备节点,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第二数字签名进行验证,若验证通过,则所述安全管理平台将所述第二标识发送到所述工业控制系统的各个设备节点,以使得各个所述设备节点在各自的访问名单中增加所述第二标识,否则,所述安全管理平台控制所述第一设备节点删除所述第二标识。

结合第一方面,在某些可选的实施方式中,所述第一标识为所述第一设备节点的板卡的标识;

所述第一设备节点接收到所述签名请求后,根据所述第一标识生成第一签名公钥,包括:

所述第一设备节点接收到所述签名请求后,根据所述第一标识和可变参数,生成所述第一签名公钥,所述可变参数为动态日期或动态随机数。

结合第一方面,在某些可选的实施方式中,若所述第二设备节点判断自身的访问名单中未存在所述第一标识,则禁止所述第一设备节点访问所述第二设备节点。

5、根据权利要求1所述的身份管理方法,其特征在于,所述第一设备节点使用所述第一签名私钥进行签名,从而生成第一数字签名,包括:

所述第一设备节点使用所述第一签名私钥对第一随机数进行签名,其中,所述第一随机数为所述第一设备节点生成的随机数。

结合第一方面,在某些可选的实施方式中,所述第一签名公钥为IBC体系的签名公钥;

所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,包括:

所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,基于所述SM9算法,生成IBC体系的第一签名私钥。

第二方面,一种工业控制系统,所述工业控制系统至少包括:第一设备节点和第二设备节点,所述第一设备节点和所述第二设备节点均嵌入或者集成有板卡,所述板卡中均预设有SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数;

所述第一设备节点,包括:访问请求发送单元、公钥生成单元、私钥生成单元、签名单元和签名发送单元;

所述第二设备节点,包括:标识判断单元、签名请求发送单元、签名验证单元、访问允许单元和访问禁止单元;

所述访问请求发送单元,被配置为执行向所述第二设备节点发送访问请求,所述访问请求中至少携带有第一标识,所述第一标识是所述第一设备节点的标识;

所述标识判断单元,被配置为执行判断自身的访问名单中是否存在所述第一标识,若存在,则触发所述签名请求发送单元;

所述签名请求发送单元,被配置为执行向所述第一设备节点发送签名请求;

所述公钥生成单元,被配置为执行在接收到所述签名请求后,根据所述第一标识生成第一签名公钥;

所述私钥生成单元,被配置为执行根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,其中,所述第一签名公钥与所述第一签名私钥匹配;

所述签名单元,被配置为执行使用所述第一签名私钥进行签名,从而生成第一数字签名;

所述签名发送单元,被配置为执行将所述第一数字签名和所述第一签名公钥发送给所述第二设备节点;

所述签名验证单元,被配置为执行在接收到所述第一数字签名和所述第一签名公钥后,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第一数字签名进行验证,若验证通过,则触发所述访问允许单元,否则,触发所述访问禁止单元;

所述访问允许单元,被配置为执行允许所述第一设备节点访问所述第二设备节点;

所述访问禁止单元,被配置为执行禁止所述第一设备节点访问所述第二设备节点。

结合第二方面,在某些可选的实施方式中,所述工业控制系统还包括:安全管理平台;

所述安全管理平台包括:标识配置子单元、标识发送子单元、公钥生成子单元、私钥生成子单元、签名子单元、签名验证子单元、标识分发子单元和标识删除子单元;

所述标识配置子单元,被配置为执行在有新的设备节点请求接入所述工业系统时,配置所述新的设备节点的第二标识;

所述标识发送子单元,被配置为执行将所述第二标识发送给所述第一设备节点;

所述公钥生成子单元,被配置为执行控制所述新的设备节点根据所述第二标识生成第二签名公钥;

所述私钥生成子单元,被配置为执行控制所述新的设备节点根据所述第二签名公钥、所述主私钥、所述主公钥和所述参数,生成第二签名私钥,其中,所述第二签名公钥与所述第二签名私钥匹配;

所述签名子单元,被配置为执行控制所述新的设备节点使用所述第二签名私钥对第二随机数进行签名,从而生成第二数字签名,其中,所述第二随机数为所述新的设备节点生成的随机数;

所述签名验证子单元,被配置为执行控制所述新的设备节点将所述第二数字签名和所述第二签名公钥发送至所述第一设备节点,以使得所述第一设备节点,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第二数字签名进行验证,若验证通过,则触发所述标识分发子单元,否则,触发所述标识删除子单元;

所述标识分发子单元,被配置为执行将所述第二标识发送到所述工业控制系统的各个设备节点,以使得各个所述设备节点在各自的访问名单中增加所述第二标识;

所述标识删除子单元,被配置为执行控制所述第一设备节点删除所述第二标识。

结合第二方面,在某些可选的实施方式中,所述公钥生成单元,包括:第一公钥子单元;

所述第一公钥子单元,被配置为执行在接收到所述签名请求后,根据所述第一标识和可变参数,生成所述第一签名公钥,所述可变参数为动态日期或动态随机数,所述第一标识为所述第一设备节点的板卡的标识。

第三方面,一种存储介质,其上存储有程序,所述程序被处理器执行时实现任一项所述的身份管理方法。

借由上述技术方案,本发明提供的一种身份管理方法、工业控制系统和存储介质,应用于一种工业控制系统,所述工业控制系统至少包括:安全管理平台、第一设备节点和第二设备节点,所述第一设备节点和所述第二设备节点均嵌入或者集成有板卡,所述板卡中均预设有SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数;所述身份管理方法包括:所述第一设备节点向所述第二设备节点发送访问请求,所述访问请求中至少携带有第一标识,所述第一标识是所述第一设备节点的标识;所述第二设备节点判断自身的访问名单中是否存在所述第一标识,若存在,则向所述第一设备发送签名请求;所述第一设备节点接收到所述签名请求后,根据所述第一标识生成第一签名公钥;所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,其中,所述第一签名公钥与所述第一签名私钥匹配;所述第一设备节点使用所述第一签名私钥进行签名,从而生成第一数字签名;所述第一设备节点将所述第一数字签名和所述第一签名公钥发送给所述第二设备节点;所述第二设备节点接收到所述第一数字签名和所述第一签名公钥后,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第一数字签名进行验证,若验证通过,则允许所述第一设备节点访问所述第二设备节点,否则,禁止所述第一设备节点访问所述第二设备节点。由此可以看出,本发明可以通过在工业控制系统的正常设备的板卡中预设各个正常设备的主私钥、主公钥和参数,使得正常设备可以获得各自板卡中的主私钥、主公钥和参数与其他正常设备进行签名验证,从而实现正常设备间进行安全的访问。但对于恶意设备,其板卡中并没有预设的主私钥、主公钥和参数,导致其无法与其他正常设备进行签名验证,进一步使得恶意设备无法访问正常设备,提高了工业控制系统的安全性。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明提供的第一种身份管理方法的流程图;

图2示出了本发明提供的第二种身份管理方法的流程图;

图3示出了本发明提供的工业控制系统的结构示意图;

图4示出了本发明提供的电子设备的结构示意图。

具体实施方式

工业控制系统(Industry Control System,ICS)作为重要的基础战略资源,应用于超过80%的关键基础设施,有着诸如控制水电站开关、检测电网状态或控制燃油燃气管道压力等能力,在国家基础建设的舞台中扮演着重要的角色。

近年来发生的重大工业信息安全事件涉及能源、交通、制造、医疗和通信等重要领域的关键信息基础设施,对许多国家的工业生产和国家安全造成严重影响。例如,“震网”、“火焰”及“黑色能量”等针对工业控制系统量身定制的恶意代码成为了工控系统和测控终端的主要安全威胁之一。其扩散及破坏过程非常隐蔽,可以突破以隔离为主的安全防护体系,使得恶意设备可以访问工业控制系统中的正常设备,从而威胁工业控制系统的安全,现有的防护措施难以有效防御。因此工业控制系统的信息安全研究已经十分迫切,在重要的工业控制系统如PLC、DCS、SIS中实现信息安全的需求日趋明显。

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

如图1所示,本发明提供了一种身份管理方法,应用于一种工业控制系统,所述工业控制系统至少包括:第一设备节点和第二设备节点,所述第一设备节点和所述第二设备节点均嵌入或者集成有板卡,所述板卡中均预设有SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数;

所述身份管理方法包括:

S100、所述第一设备节点向所述第二设备节点发送访问请求,所述访问请求中至少携带有第一标识,所述第一标识是所述第一设备节点的标识;

可选的,本发明所述的第一设备节点和第二设备节点可以是工业嵌入式控制器或是工控系统上位机,本发明对此不做限制。

可选的,本文所说的工业嵌入式控制器和工控系统上位机均可以嵌入或集成有板卡。例如可以嵌入或集成有可信板卡,本发明对此不做限制。

可信板卡是一种集成在可信计算平台中,用于建立和保障信任源点的基础核心模块,为可信计算提供完整性度量、安全存储、可信报告以及密码服务等功能。

可信板卡是可信平台中第一个上电运行的部件,在平台从引导到正常工作的整个过程中,可信板卡应并行于宿主计算机CPU独立工作并不受其影响,是可信计算平台可信计算功能支撑的基础部件,是平台的信任源点。提供平台可信启动、可信密码服务支持等功能。

可选的,本发明所提供的身份管理方法可以适用于任何数量的设备节点,而不局限于第一设备节点和第二设备节点。本文以第一设备节点和第二设备节点为例描述本发明的方案,但不限制本发明仅适用于第一设备节点和第二设备节点,还可以适用于其他设备节点,本发明对此不做限制。

可选的,在工业控制系统中,设备节点相互间经常进行访问。例如第一设备节点若需要访问第二设备节点,则第一设备节点可以向第二设备节点发送访问请求。

可选的,本发明对于访问请求的类型不做具体限制,可以根据实际的通信协议发送相应的访问请求。例如可以是报文形式的访问请求,本发明对此不做限制。

可选的,第一设备节点的访问请求中至少携带有第一设备节点的标识。例如可以携带有第一设备节点的板卡的ID,每个板卡的ID都可以是唯一的,本发明对此不做限制。当然,也可以采用组合的方式构建第一设备节点的标识,例如,可以使用板卡的ID和板卡的芯片序列号共同组合为第一设备节点的标识,本发明对此不做限制。

可选的,预设在板卡中的SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数均无法被导出,也无法被其他设备获取。如此可以确保本发明的可靠性和安全性,本发明对此不做限制。

S200、所述第二设备节点判断自身的访问名单中是否存在所述第一标识,若存在,则向所述第一设备节点发送签名请求;

可选的,在工业控制系统中,对于已经接入到工业控制系统中的正常的设备节点而言,均可以为其建立相应的访问名单。访问名单中记录工业控制系统中的哪些设备节点可以访问该设备节点,同时,也可以记录该设备节点可以访问工业控制系统中的哪些设备节点,本发明对此不做限制。

可选的,本文所说的正常的设备节点指的是允许接入该工业控制系统的合法设备,本发明对此不做限制。当有新的设备节点成功接入到工业控制系统中后,该工业控制系统中的其它设备节点的访问名单可以进行相应的更新,本发明对此不做限制。

可选的,当第二设备节点的访问名单中存在第一设备节点的第一标识时,说明第二设备节点允许第一设备节点访问;当第二设备节点的访问名单中不存在第一设备节点的第一标识时,说明第二设备节点不允许第一设备节点访问,本发明对此不做限制。

可选的,若确定第二设备节点的访问名单中不存在第一设备节点的第一标识。说明对于第二设备节点而言,第一设备节点是未知的设备节点,存在威胁第二设备节点的安全的风险,则可以禁止所述第一设备节点访问所述第二设备节点,使得第一设备节点无法访问第二设备节点,进而保护第二设备节点不受未知的设备节点所危害。如此可以提高工业控制系统的安全性,本发明对此不做限制。

例如,结合图1所示的实施方式,在某些可选的实施方式中,若所述第二设备节点判断自身的访问名单中未存在所述第一标识,则禁止所述第一设备节点访问所述第二设备节点。

可选的,虽然通过访问名单可以一定程度上防御未知的设备节点,但是防御等级还不够。为了进一步提高工业控制系统的安全性,第二设备节点在确定访问名单中存在第一设备节点的第一标识后,可以向所述第一设备发送签名请求,以便于执行后续的签名验证过程(S300至S900),进一步提高工业控制系统的安全性,本发明对此不做限制。

S300、所述第一设备节点接收到所述签名请求后,根据所述第一标识生成第一签名公钥;

可选的,本发明的第一签名公钥可以是第一标识,也可以由第一标识与其他字符或标识共同组合而成。例如,第一签名公钥可以是IBC体系的签名公钥,具体参见IBC体系对于签名公钥的定义,本发明对此不做限制。

可选的,第一签名公钥可以是唯一的,且第一签名公钥可以与后续的第一签名私钥一一对应。

可选的,对于第一设备节点而言,可以只有一个签名公钥。即第一设备节点可以以第一标识作为自身的第一签名公钥。这种方式下,第一设备节点可以保存自身的第一签名公钥,并在需要用时,直接使用第一签名公钥即可,无需重新生成,这样可以提高签名验证的效率。

结合图1所示的实施方式,在某些可选的实施方式中,所述第一标识为所述第一设备节点的板卡的标识;

所述S300,包括:

所述第一设备节点接收到所述签名请求后,根据所述第一标识和可变参数,生成所述第一签名公钥,所述可变参数为动态日期或动态随机数。

可选的,对于每一个设备节点而言,其都可以生成自身的签名公钥和签名私钥。为了提高安全性,签名公钥和签名私钥可以定期更新或者随时更新。例如,在生成签名公钥后,可以为该签名公钥设置一个有效截止日期。当有效截止日期到来之时,相应的设备节点可以根据所述第一标识和有效截止日期生成新的签名公钥,然后为新的签名公钥设置新的有效截止日期,如此反复执行。即动态日期可以指的是这里的有效截止日期,当然,也可以以“有效截止日期+N天”为动态日期,或者以“有效起始日期+N天”为动态日期,其中,N为不小于0的整数,本发明对此不做限制。

可选的,具体一个设备节点更新其签名公钥后,也可以相应更新其签名私钥,本发明对此不做限制。

S400、所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,其中,所述第一签名公钥与所述第一签名私钥匹配;

可选的,结合图1所示的实施方式,在某些可选的实施方式中,所述第一签名公钥为IBC体系的签名公钥;

所述S400,包括:

所述第一设备节点根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,基于所述SM9算法,生成IBC体系的第一签名私钥。

可选的,第一签名公钥可以和所述主私钥结合,生成中间变量;中间变量再结合所述参数,生成第一签名私钥,本发明对此不做限制。

S500、所述第一设备节点使用所述第一签名私钥进行签名,从而生成第一数字签名;

可选的,结合图1所示的实施方式,在某些可选的实施方式中,所述S500,包括:

所述第一设备节点使用所述第一签名私钥对第一随机数进行签名,其中,所述第一随机数为所述第一设备节点生成的随机数。

可选的,第一设备节点根据数字签名生成算法流程,生成第一数字签名。

例如,设定待签名的消息为比特串M,为了获得M的数字签名(h,S),可以执行下述步骤A1至A7;

A1:计算群GT中的元素g=e(P1,Ppub-s),其中,GT:阶为素数N的乘法循环群,g:GT中的元素g的一次幂,e:从G1×G2到GT的双线性对,P1:群G1的生成元,Ppub-s:主公钥,G1:阶数为N的加法循环群,G2:阶数为N的加法循环群,N为循环群G1、G2和GT的阶数;

A2:产生随机数r∈[1,N-1];

A3:计算群GT中的元素w=g×r,将w的数据类型转换为比特串;

A4:计算整数h=H2(M||w,N),其中,M为待签名的消息,H2():由密码杂凑函数派生的密码函数;

A5:计算整数l=(r-h)modN,若l=0则返回A2,其中,modN:模N的运算;

A6:计算群G1中的元素S=[l]×dsA,其中,dsA:主私钥;

A7:得到M的数字签名(h,S),(h,S)为第一设备节点发送给第二设备节点的数字签名。

S600、所述第一设备节点将所述第一数字签名和所述第一签名公钥发送给所述第二设备节点;

可选的,第一设备节点还可以将第一随机数也发送给第二设备节点,以便于第二设备节点可以根据第一随机数、第一签名公钥和主公钥,对第一数字签名进行验证,本发明对此不做限制。

S700、所述第二设备节点接收到所述第一数字签名和所述第一签名公钥后,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第一数字签名进行验证,若验证通过,则执行S800,否则,执行S900;

可选的,基于SM9算法对第一数字签名进行验证是现有的技术方案,本发明对此不做过多描述,具体参见SM9的数字签名验证过程。本发明的创新点之一在于:主公钥也预设在第二设备节点的板卡中,使得第二设备节点可以直接从自身的板卡中获得主公钥,然后根据主公钥对第一数字签名进行验证,确保了安全性。因为若是一些恶意的设备节点或者未知的设备节点,其自身的板卡中没有相应的主公钥和主私钥,也就无法生成相应的数字签名,第二设备节点也就无法对其进行验证,自然不允许其访问,提高的安全性,本发明对此不做限制。

可选的,第二设备节点接收到的第一数字签名可以为(h′,S′),与(h,S)对应,对第一数字签名的验证过程可以包括如下步骤B1至步骤B9;

B1:检验h′∈[1,N-1]是否成立,若不成立,则验证不通过;

B2:将S′的数据类型转换为椭圆曲线上的点,检验S′∈G1是否成立,若不成立则验证不通过;

B3:计算群GT中的元素g=e(P1,Ppub-s);

B4:计算群GT中的元素t=g×h′;

B5:计算整数h1=H1(IDA||hid,N),其中,IDA:第一设备节点的标识,可以唯一确定第一设备节点的主公钥,hid:用一个字节标识的签名私钥生成函数识别符,H1():由密码杂凑函数派生的密码函数;

B6:计算群G2中的元素P=[h1]×P2+Ppub-s;

B7:计算群GT中的元素u=e(S′,P);

B8:计算GT中的元素w′=u·t,将w′的数据类型转换为比特串;

B9:计算整数h2=H2(M′||w′,N),检验h2=h′是否成立,若成立则验证通过,否则验证不通过。

S800、允许所述第一设备节点访问所述第二设备节点;

可选的,若验证通过,则说明第一设备节点具备访问第二设备节点的权限,所以可以允许第一设备节点访问第二设备节点。

可选的,若验证通过,也可以在第一设备节点和第二设备节点之间建立通信,使得第一设备节点可以访问第二设备节点,本发明对此不做限制。

S900、禁止所述第一设备节点访问所述第二设备节点。

可选的,若验证不通过,则说明对于第二设备节点而言,第一设备节点不具备访问第二设备节点的权限。即第一设备节点是未知的设备节点,为了安全起见,可以禁止所述第一设备节点访问所述第二设备节点。

可选的,从本发明提供的图1实施方式,可以看出,对于任何一个正常的设备节点而言,其可以根据访问名单和签名验证过程,确定请求访问的其他设备节点是否可信。通过这种方式,不仅将这种安全控制机制下放到每个设备节点中,起到了去中心化的效果,还大大提高了系统的安全性,本发明对此不做限制。

如图2所示,结合图1所示的实施方式,在某些可选的实施方式中,应用于所述工业控制系统,所述工业控制系统还包括:安全管理平台;

所述身份管理方法还包括:

在有新的设备节点请求接入所述工业系统时,所述安全管理平台执行接入认证过程;

所述接入认证过程包括:

S1000、所述安全管理平台配置所述新的设备节点的第二标识;

可选的,配置第二标识的方式可以是工作人员通过安全管理平台,在安全管理平台的界面上配置新的设备节点的第二标识。当然,也可以是安全管理平台,根据预先建立好的标识配置规则,对新的设备节点自动配置第二标识,本发明对此不做限制。

可选的,对于第二标识的理解可以参见上述对于第一标识的说明,本发明对此不做赘述。

S2000、所述安全管理平台将所述第二标识发送给所述第一设备节点;

可选的,为新的设备节点配置相应的第二标识之后,由于后续需要对新的设备节点进行签名验证,所以可以将第二标识发送给第一设备节点,以便于第一设备节点将第二标识存储在自身的访问名单中。

可选的,也可以将第二标识发送给第二设备节点或者是工业控制系统中的其他任意一个正常的设备节点,并且由接收到第二标识的设备节点对新的设备节点执行后续的签名验证过程,本发明对此不做限制。

S3000、所述安全管理平台控制所述新的设备节点根据所述第二标识生成第二签名公钥;

可选的,在将所述第二标识发送给所述第一设备节点后,所述安全管理平台可以向所述新的设备节点发送指令,从而通知所述新的设备节点生成第二数字签名,并发送给第一设备节点。即,包括了S3000至S6000,本发明对此不做限制。

可选的,本文所说的生成第二签名公钥的原理,与前述S300中生成第一签名公钥的原理一样,具体参见前面对于S300的解释说明,这里不再赘述。

S4000、所述安全管理平台控制所述新的设备节点根据所述第二签名公钥、所述主私钥、所述主公钥和所述参数,生成第二签名私钥,其中,所述第二签名公钥与所述第二签名私钥匹配;

可选的,此处S4000的解释可以参见前述S400的解释,即S4000中生成第二签名私钥的原理与S400中生成第一签名私钥的原理一致,这里不再赘述。

可选的,S4000可以是在S3000执行完毕后,顺序直接执行;也可以是在S3000执行完毕后,在接到安全管理平台的相应指令后才执行S4000,本发明对此不做限制。

S5000、所述安全管理平台控制所述新的设备节点使用所述第二签名私钥对第二随机数进行签名,从而生成第二数字签名,其中,所述第二随机数为所述新的设备节点生成的随机数;

可选的,此处S5000的解释可以参见前述S500的解释,即S5000中生成第二数字签名的原理与S500中生成第一数字签名的原理一致,这里不再赘述。

可选的,S5000可以是在S4000执行完毕后,顺序直接执行;也可以是在S4000执行完毕后,在接到安全管理平台的相应指令后才执行S5000,本发明对此不做限制。

S6000、所述安全管理平台控制所述新的设备节点将所述第二数字签名和所述第二签名公钥发送至所述第一设备节点,以使得所述第一设备节点,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第二数字签名进行验证,若验证通过,则执行S7000,否则,执行S8000;

可选的,此处S6000的解释可以参见前述S600和S700的解释,即S6000中发送第二数字签名的原理与S600中发送第一数字签名的原理一样;S6000中发送第二签名公钥的原理与S600中发送第一签名公钥的原理一样;S6000中对第二数字签名进行验证的原理与S700中对第一数字签名进行验证的原理一样,这里不再赘述。

可选的,S6000可以是在S5000执行完毕后,顺序直接执行;也可以是在S5000执行完毕后,在接到安全管理平台的相应指令后才执行S6000,本发明对此不做限制。

S7000、所述安全管理平台将所述第二标识发送到所述工业控制系统的各个设备节点,以使得各个所述设备节点在各自的访问名单中增加所述第二标识;

可选的,若验证通过,则说明新的设备节点可以作为所述工业控制系统的其中一个设备节点。为了该设备节点可以访问工业控制系统的其它设备节点,所以可以将该设备节点的第二标识发送给各个设备节点,以便于在该设备节点需要访问其它设备节点时,执行本发明提供的图1实施方式,本发明对此不做限制。

S8000、所述安全管理平台控制所述第一设备节点删除所述第二标识。

可选的,若验证不通过,则说明新的设备节点存在一定的风险,不可以作为所述工业控制系统的其中一个设备节点。即不允许该设备节点接入到所述工业控制系统,那么所述第一设备节点可以删除所述第二标识,且所述安全管理平台可以发出接入失败报警,本发明对此不做限制。

可选的,由于板卡的ID可以作为设备节点的标识,所以各个设备节点的标识可以是固定不变的。这种方式下,若验证不通过,所述安全管理平台还可以将第二标识发送给所述工业控制系统中的各个设备节点,并通知各个设备节点将第二标识纳入到各自的黑名单中,以便于后续根据黑名单,直接禁止第二标识的设备节点接入到工业控制系统中。这样可以提高对新的设备节点进行接入认证的效率,本发明对此不做限制。

如图3所示,本发明提供了一种工业控制系统,所述工业控制系统至少包括:第一设备节点100和第二设备节点200,所述第一设备节点100和所述第二设备节点200均嵌入或者集成有板卡,所述板卡中均预设有SM9算法的主公钥、所述SM9算法的主私钥和所述SM9算法的参数;

所述第一设备节点100,包括:访问请求发送单元101、公钥生成单元102、私钥生成单元103、签名单元104和签名发送单元105;

所述第二设备节点200,包括:标识判断单元201、签名请求发送单元202、签名验证单元203、访问允许单元204和访问禁止单元205;

所述访问请求发送单元101,被配置为执行向所述第二设备节点200发送访问请求,所述访问请求中至少携带有第一标识,所述第一标识是所述第一设备节点100的标识;

所述标识判断单元201,被配置为执行判断自身的访问名单中是否存在所述第一标识,若存在,则触发所述签名请求发送单元202;

所述签名请求发送单元202,被配置为执行向所述第一设备节点100发送签名请求;

所述公钥生成单元102,被配置为执行在接收到所述签名请求后,根据所述第一标识生成第一签名公钥;

所述私钥生成单元103,被配置为执行根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,生成第一签名私钥,其中,所述第一签名公钥与所述第一签名私钥匹配;

所述签名单元104,被配置为执行使用所述第一签名私钥进行签名,从而生成第一数字签名;

所述签名发送单元105,被配置为执行将所述第一数字签名和所述第一签名公钥发送给所述第二设备节点200;

所述签名验证单元203,被配置为执行在接收到所述第一数字签名和所述第一签名公钥后,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第一数字签名进行验证,若验证通过,则触发所述访问允许单元204,否则,触发所述访问禁止单元205;

所述访问允许单元204,被配置为执行允许所述第一设备节点100访问所述第二设备节点200;

所述访问禁止单元205,被配置为执行禁止所述第一设备节点100访问所述第二设备节点200。

结合图3所示的实施方式,在某些可选的实施方式中,所述工业控制系统还包括:安全管理平台;

所述安全管理平台包括:标识配置子单元、标识发送子单元、公钥生成子单元、私钥生成子单元、签名子单元、签名验证子单元、标识分发子单元和标识删除子单元;

所述标识配置子单元,被配置为执行在有新的设备节点请求接入所述工业系统时,配置所述新的设备节点的第二标识;

所述标识发送子单元,被配置为执行将所述第二标识发送给所述第一设备节点100;

所述公钥生成子单元,被配置为执行控制所述新的设备节点根据所述第二标识生成第二签名公钥;

所述私钥生成子单元,被配置为执行控制所述新的设备节点根据所述第二签名公钥、所述主私钥、所述主公钥和所述参数,生成第二签名私钥,其中,所述第二签名公钥与所述第二签名私钥匹配;

所述签名子单元,被配置为执行控制所述新的设备节点使用所述第二签名私钥对第二随机数进行签名,从而生成第二数字签名,其中,所述第二随机数为所述新的设备节点生成的随机数;

所述签名验证子单元,被配置为执行控制所述新的设备节点将所述第二数字签名和所述第二签名公钥发送至所述第一设备节点100,以使得所述第一设备节点100,基于所述SM9算法,使用所述第一签名公钥和所述主公钥对所述第二数字签名进行验证,若验证通过,则触发所述标识分发子单元,否则,触发所述标识删除子单元;

所述标识分发子单元,被配置为执行将所述第二标识发送到所述工业控制系统的各个设备节点,以使得各个所述设备节点在各自的访问名单中增加所述第二标识;

所述标识删除子单元,被配置为执行控制所述第一设备节点100删除所述第二标识。

结合图3所示的实施方式,在某些可选的实施方式中,所述公钥生成单元102,包括:第一公钥子单元;

所述第一公钥子单元,被配置为执行在接收到所述签名请求后,根据所述第一标识和可变参数,生成所述第一签名公钥,所述可变参数为动态日期或动态随机数,所述第一标识为所述第一设备节点100的板卡的标识。

结合图3所示的实施方式,在某些可选的实施方式中,若所述标识判断单元201判断自身的访问名单中未存在所述第一标识,则触发所述访问禁止单元205;

结合图3所示的实施方式,在某些可选的实施方式中,所述签名单元104,包括:第一签名子单元;

所述第一签名子单元,被配置为执行使用所述第一签名私钥对第一随机数进行签名,其中,所述第一随机数为所述第一设备节点100生成的随机数。

结合图3所示的实施方式,在某些可选的实施方式中,所述私钥生成单元103,包括:第一私钥生成子单元;

所述第一私钥生成子单元,被配置为执行根据所述第一签名公钥、所述主私钥、所述主公钥和所述参数,基于所述SM9算法,生成IBC体系的第一签名私钥,所述第一签名公钥为IBC体系的签名公钥。

本发明提供了一种存储介质,其上存储有程序,所述程序被处理器执行时实现任一项所述的身份管理方法。

如图4所示,本发明提供了一种电子设备70,所述电子设备70包括至少一个处理器701、以及与所述701处理器连接的至少一个存储器702、总线703;其中,所述处理器701、所述存储器702通过所述总线703完成相互间的通信;所述处理器701用于调用所述存储器702中的程序指令,以执行上述任一项所述的身份管理方法。

在本申请中,诸如第一和第一等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种身份管理方法、工业控制系统和存储介质
  • 一种身份管理方法、装置、设备及存储介质
技术分类

06120112922949