CN114024706A - 基于零信任组合访问控制策略的工业控制系统安全框架 - Google Patents

基于零信任组合访问控制策略的工业控制系统安全框架 Download PDF

Info

Publication number
CN114024706A
CN114024706A CN202111107412.1A CN202111107412A CN114024706A CN 114024706 A CN114024706 A CN 114024706A CN 202111107412 A CN202111107412 A CN 202111107412A CN 114024706 A CN114024706 A CN 114024706A
Authority
CN
China
Prior art keywords
gateway
user
calculating
key
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111107412.1A
Other languages
English (en)
Inventor
刘忻
杨浩睿
郭振斌
张瑞生
狄农雨
李韵宜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lanzhou University
Original Assignee
Lanzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lanzhou University filed Critical Lanzhou University
Priority to CN202111107412.1A priority Critical patent/CN114024706A/zh
Publication of CN114024706A publication Critical patent/CN114024706A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于零信任组合访问控制策略的工业控制系统安全框架,采用边界网络安全模型和零信任安全模型组合策略构建安全体系;边界网络安全模型用于抵御工业物联网控制系统外部威胁;零信任安全模型用于防护工业物联网控制系统的内部威胁;零信任安全模型具体包括:零信任身份认证协议和策略引擎;零信任身份认证协议具体包括:系统初始化阶段、节点注册阶段、用户初始化阶段、用户注册阶段、登录和密钥协商阶段;本发明的有益效果是:采用组合策略实现对工业物联网控制系统的安全保障,解决了传统协议容易遭受追踪攻击和节点捕获攻击的问题,在注册阶段实现了权限分离,最小化了用户感染恶意程序、遭受社交工程攻击等手段带来的内部威胁。

Description

基于零信任组合访问控制策略的工业控制系统安全框架
技术领域
本发明涉及机密计算领域,尤其涉及一种基于零信任组合访问控制策略的 工业控制系统安全框架。
背景技术
工业控制系统(ICS)是由计算机和工业过程控制部件组成的自动控制系统, 是我国物联网技术(IoT)的重要发展方向。工业控制系统可以替代人工对工业 生产过程中的海量工业数据进行采集、分析和反馈,实现实时监控生产状态、 控制生产进程的目的,在工业的信息化智能化生产中发挥重要的作用,并且被 广泛应用于电能、核能、铁路、航空航天等关系国计民生的重要行业当中。工 业控制系统一旦遭受攻击,将会造成严重的后果。因此业界存在对具有高可用 性的符合安全要求的新型安全框架的需求。
随着物联网的发展,工业系统所处的环境,正在从“孤岛”走向“互联”, 工业物联网的出现既是工业发展的新机遇,又对工业系统安全有序的生产进程 提出了新的挑战。
然而,一方面,在协议层面,现行的、已经成为事实上业界标准的协议如 Modbus协议,设计之初主要致力于在于工业控制系统的可用性,可靠性方面的 设计,对安全性方面的关注较少,缺乏认证、权限、加密等安全方面的设计, 已经难以应对越来越严峻的安全威胁。另一方面,在硬件层次,工业物联网系 统中,存在设备老旧,兼容性差,能耗敏感、能源难以补充等硬件问题,然而 现行协议的严格离线注册规定和高能耗开销在实际工业生产中可用性不佳,因 此,业界存在对具有高可用性的符合安全要求的协议的需求。
传统的基于边界的网络安全模型难以应对来自内部的攻击。木马、钓鱼网站、 社交工程等攻击手段可以绕过防火墙的内外隔绝屏障,通过控制合法用户设备 实现身份仿冒,发起来自系统内部的攻击,造成数据泄露,数据丢失的严重后 果。
现行的基于零信任的网络架构过度依赖策略引擎。策略引擎是基于深度学习 建立的用于身份认证和访问控制的模型,如果用户的身份认证与系统访问权限 使用必须调用策略引擎进行判断与计算,将使得操作延迟上升,导致难以应对 突发工业事故需要人工介入的紧急处理。再者,策略引擎一旦失效、误判或被 恶意程序控制,会导致严重的安全事故。
现行身份认证协议存在不合理的安全假设与可用性缺陷。工业物联网需要面 对工业场景下高温、高压、强辐射、电磁干扰、剧毒等恶劣的生产环境,网关 与节点一经部署于工作区域,就难以取回。遗憾的是,一方面,现行身份认证 协议常假设网关处于可信的环境,网关中以静态密文,甚至明文存储信息,事 实上,针对无人监管区域的网关节点的捕获攻击可以使得攻击者获取网关存储 的信息,真正安全的环境与信道并不存在。另一方面,现行的身份认证协议大 多采用离线注册,假设用户和网关之间存在严格的离线安全通信环境,这使得 新用户注册时,需要将网关取回,在离线环境下执行,这实质上大大损害的系统的可用性。
发明内容
针对上述技术问题,本发明提出的一种基于零信任组合访问控制策略的工业 控制系统安全框架,使用组合策略实现对工控系统的安全保障,针对来自系统 内部的威胁,选择在协议层面实现基于零信任的身份认证和密钥协商协议,同 时在通信实体处做好埋点收集行为信息上交至策略引擎,当策略引擎认为存在 异常数据、指令时候介入截断拦截。
本发明提供的一种基于零信任组合访问控制策略的工业控制系统安全框架, 采用边界网络安全模型和零信任安全模型组合策略构建安全体系;
其中,边界网络安全模型用于抵御工业物联网控制系统外部威胁;零信任安 全模型用于防护工业物联网控制系统的内部威胁;
所述零信任安全模型具体包括:零信任身份认证协议和策略引擎;
所述零信任身份认证协议具体包括:系统初始化阶段、节点注册阶段、用户 初始化阶段、用户注册阶段、登录和密钥协商阶段;
所述系统初始化阶段,指超级管理员SA在离线安全环境下为网关和节点预 埋信息和函数,保障后续阶段的安全性和可行性,具体为:
超级管理员SA为网关GW配置机密计算芯片搭建机密计算环境,为每一网 关生成其独有的主密钥KGW并在机密计算安全区中保存;
超级管理员SA为网关GW和工业终端节点SN配置基本的运算函数,包括: 连接运算||、哈希运算函数h()和哈希运算消息认证码函数HMAC()和异或运算函 数⊕;
超级管理员SA分配硬件id号,并为每一个网关GW生成一对公私钥,分别 为公钥kp和私钥kv,超级管理员SA保存公钥kp和对应的网关信息,网关保存 私钥kv
初始化阶段后网关GW即部署于工作区域,后续阶段无需取回;
所述节点注册阶段,指工业终端节点SN在超级管理员SA的协助下进行在 线注册,具体为:
超级管理员SA通过初始化阶段预存的公钥密码算法加密通信信息,保护通 信安全,实现在不可信信道中向网关GW进行在线注册,经此过程后工业终端 节点SN归属于唯一的网关GW,同时节点SN和网关GW相互存留信息以供后 续的登录和密钥协商阶段中进行相互的身份认证、信息交换从而达到通信密钥 协商的目的;
所述用户初始化阶段,指用户U在超级管理员SA处进行初始化,分配信息, 赋予用户合法的身份和一次性权限申请的凭证OTV,使用户后续通过SA的身 份校验,并在SA协助下向网关GW发起在线注册和节点访问权限申请;
所述用户注册阶段,指用户U在超级管理员SA协助下向网关GW发起在线 注册和权限申请;用户U先通过提供用户初始化时信息以通过权限申请凭证 OTV验证,后续在线注册和权限申请在超级管理员SA的监管下进行;
所述登录和密钥协商阶段,指用户U、网关GW、工业终端节点SN三者之 间的相互认证身份协商密钥,并在协商结束后动态更新通信凭证的过程。
进一步地,所述节点注册阶段的具体流程如下:
S11:工业终端节点SN获取自身唯一ID标识IDj、网关GW唯一标识IDGW, 并生成随机数
Figure BDA0003272863320000041
SA根据IDGW提供对应的公钥网关公钥kp并计算:
Figure BDA0003272863320000042
Figure BDA0003272863320000043
Figure BDA0003272863320000044
其中,
Figure BDA0003272863320000045
是通信凭证、
Figure BDA0003272863320000046
是通信凭证假名、
Figure BDA0003272863320000047
是动态随机数
Figure BDA0003272863320000048
的假名;
S12:工业终端节点SN生成当前新鲜时间戳TS1,并计算:
Figure BDA0003272863320000049
S13:工业终端节点SN将消息m1={MSGj,TS1}传输至网关GW;
S14:网关GW检验时间戳TS1的新鲜性,若不新鲜,则丢弃并请求重发;若 新鲜,则计算:
Figure BDA0003272863320000051
其中
Figure BDA0003272863320000052
表示通过kv解密密文MSGj还原的信息;新鲜性判断用于防止 延迟的无效注册消息和攻击者的重放攻击;
S15:网关GW判断
Figure BDA0003272863320000053
与TS1是否相等,不等则丢弃并请求重发,相等则将IDj传输至机密计算芯片中,并在机密计算环境中计算:
PPIDj=h(IDj||KGW)
计算完毕后从安全区输出PPIDj,保存键值对
Figure BDA0003272863320000054
于网关内存;
其中TS1相等判断是为了防止消息内容遭到篡改,KGW是系统初始化阶段预存 并在机密计算环境中严格保护的主密钥。
进一步地,所述用户初始化阶段,具体流程为:
S21:用户端插入智能卡SC,获取智能卡身份标识IDSC,用户端采集用户生 物特征信息BIOi,计算:
ii)=Gen(BIOi)
UIDi=h(IDSC||σi)
其中Gen(BIOi)是生物特征提取函数,σii是提取的生物特征值;UIDi是由智能卡和用户生物特征组合计算的变量,是用户的全局唯一识别码,用户的访问和 控制行为可以通过UIDi监测记录,交付旁挂策略引擎进行行为分析和控制;
S22:用户端生成新鲜时间戳TS1,并将消息m1={IDSC,UIDi,TS1}发送至超 级管理员SA;
S24:超级管理员SA检查TS1的新鲜度,若不新鲜则拒绝;若新鲜,则判断 自身存储的智能卡列表SClist中是否包含IDSC,用户已存在则拒绝初始化请求; 若未包含,则生成随机数RNSA,计算OTV=h(UIDi||RNSA);
其中,OTV表示一次性的权限申请凭证,可凭此值在用户注册阶段进行身份 认证和权限申请,过后作废;
S25:超级管理员SA生成当前最新时间戳TS2,并保存键值对{UIDi-RNSA}, 同时将消息m2={OTV,TS2}发送至用户端;
S26:用户端检查TS2的新鲜度,若新鲜,则保存{OTV,τi}至SC卡;若不新 鲜,则请求重发。
进一步地,所述用户注册阶段,具体流程如下:
S31:用户端插入SC卡,获得本地存储信息IDSC,OTV和τi
S32:用户端输入要注册的自身ID号IDSC,生物信息BIOi和密码PWi
计算:
σi=Rep(BIOii)
UiDi=h(IDSC||σi)
其中Rep(BIOii)是生物特征匹配函数,是Gen(BIOi)函数的逆过程;
S33:用户端向超级管理员SA请求UIDi对应的RNSA,并计算:
OTV*=h(UIDi||RNSA)
判断OTV是否与OTV*是否相等,若是则计算
RPW=h(IDSC||σi||PWW)
V=h(UIDi||RPW)
其中,RPW是由密码PWi生成的密码校验变量,V是身份校验变量,这些变 量用于登陆与密钥协商阶段的用户身份校验;
S34:用户输入欲申请访问和控制权限的目标节点识别码IDj;SA判断是否允 许该权限申请,若是,则超级管理员提供IDj所属网关的识别码IDGW
S35:用户端生成当前的时间戳TS1,生成动态的随机数
Figure BDA0003272863320000071
并计算:
Figure BDA0003272863320000072
用户端将消息m1={MSGi,TS1}发送至网关GW;
S36:网关GW检查TS1的新鲜性,若不新鲜则拒绝注册;若新鲜,则计算:
Figure BDA0003272863320000073
S37:网关判断
Figure BDA0003272863320000074
是否与TS1相等,若不等,则拒绝注册;若相等,则获取IDGW, 并计算:
Figure BDA0003272863320000075
Figure BDA0003272863320000076
Figure BDA0003272863320000077
其中,
Figure BDA0003272863320000078
表示被通信凭证
Figure BDA0003272863320000079
和动态随机数
Figure BDA00032728633200000710
保护的UIDi
S38:网关传输
Figure BDA00032728633200000711
Figure BDA00032728633200000712
至机密计算芯片,并在安全区中计算:
Figure BDA00032728633200000713
计算完毕后从安全区输出
Figure BDA00032728633200000714
保存键值对
Figure BDA00032728633200000715
和键值对
Figure BDA00032728633200000716
于网关内存;其中KGW是系统初始化阶段网关主密钥;
S39:网关生成新鲜的时间戳TS2,并计算:
ACKGW=h(IDGW||TS2)
Figure BDA00032728633200000717
发送消息m2={MSGGW,TS2}至用户端;
S310:用户端检查TS2的新鲜性,若新鲜则计算:
Figure BDA00032728633200000718
ACKGW=h(IDGW||TS2)
并进入步骤S311,若不符合要求则拒绝注册;
S311:用户端判断
Figure BDA0003272863320000081
与ACKGW是否相等,若是则计算:
Figure BDA0003272863320000082
Figure BDA0003272863320000083
并进入步骤S312,否则拒绝注册;
S312:用户端计算:
Figure BDA0003272863320000084
Figure BDA0003272863320000085
保存键值对{DIDj-DIDGW}至SC卡的用户的访问控制列表AClist中;
保存密钥对
Figure BDA0003272863320000086
于SC卡中;
设置允许访问时间范围Ptime;获取允许访问区域Ploc;
保存{V,Ptime,Ploc}至SC卡。
所述登录和密钥协商阶段,具体流程如下:
S41:用户端插入SC卡;获取当前时间T和位置L;
S42:判断当前时间T是否处于允许访问时间范围Ptime,位置L是否处于允 许访问区域Ploc;若是,则获取IDSC,V,τi,进入步骤S43;否则,则拒绝登录;
S43:用户端输入密码PWi、生物信息BIOi和访问控制的目标节点识别码IDj, 并计算:
σi=Rep(BIOii)
UIDi=h(IDSC||σi)
RPW=h(IDSC||σi||PWi)
V*=h(UIDi||RPW)
判断V*是否与V相等,若相等,则计算
Figure BDA0003272863320000087
进入步骤S44; 否则身份认证失败,拒绝登录;
S44:用户端判断用户具有的权限列表AClist中是否包含DIDj,若是,则通 过DIDj获取DIDGW,进一步通过DIDGW获取
Figure BDA0003272863320000091
计算:
Figure BDA0003272863320000092
Figure BDA0003272863320000093
生成随机数Ri和新鲜的时间戳TS1,计算:
Figure BDA0003272863320000094
Figure BDA0003272863320000095
Figure BDA0003272863320000096
其中,Ri是组成本阶段最终协商的会话密钥KEYij的组成部分,需要被安全的 传递至SN;PKS1为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变 量;PIDj为欲访问节点IDj的匿名;q1用于验证,校验消息的来源,保证消息未被 篡改;
S45:用户端发送消息
Figure BDA0003272863320000097
至网关GW;
S46:网关GW检查TS1的新鲜性,若新鲜,则通过
Figure BDA0003272863320000098
获取
Figure BDA0003272863320000099
并 将
Figure BDA00032728633200000910
Figure BDA00032728633200000911
传输至机密计算芯片,在机密计算芯片安全区中计算:
Figure BDA00032728633200000912
从安全区输出
Figure BDA00032728633200000913
S47:网关GW通过
Figure BDA00032728633200000914
获取
Figure BDA00032728633200000915
并计算:
Figure BDA00032728633200000916
Figure BDA00032728633200000917
Figure BDA00032728633200000918
判断
Figure BDA00032728633200000919
Figure BDA00032728633200000920
是否相等,若是,则进入步骤S48;否则表示协商失败;
S48:计算;
Figure BDA0003272863320000101
Figure BDA0003272863320000102
判断
Figure BDA0003272863320000103
是否成立,若是则将IDj 传输至机密计算芯片,进入步骤S49;否则表示消息被篡改,协商失败;
S49:在机密计算环境安全区中计算PPIDj=h(IDj||KGW),并从安全区中输 出PPIDj,通过PPIDj获取
Figure BDA0003272863320000104
计算:
Figure BDA0003272863320000105
Figure BDA0003272863320000106
Figure BDA0003272863320000107
生成新鲜的时间戳TS2,并计算:
Figure BDA0003272863320000108
Figure BDA0003272863320000109
将消息
Figure BDA00032728633200001010
发送至工业终端节点SN;
其中PKS2为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变量, q2用于验证,校验消息的来源,保证消息未被篡改;
S410:工业终端节点SN检查TS2的新鲜性,若新鲜,则获取IDj、IDGW
Figure BDA00032728633200001011
进入步骤S411,否则表示协商失败;
S411:工业终端节点计算:
Figure BDA00032728633200001012
Figure BDA00032728633200001013
判断
Figure BDA00032728633200001014
是否成立,若是,则生成随 机数Rj和新鲜的时间戳TS3,进入步骤S412,否则表示消息被篡改协商失败; 至此,Ri被保密地传输至SN处;
S412:工业终端节点SN计算:
Figure BDA0003272863320000111
Figure BDA0003272863320000112
KEYij=h(Ri||Rj)
并将消息m2={PKS3,q3,TS3}发送至网关GW;至此,登录和密钥协商阶段的会 话密钥KEYij在节点端计算成功;
S413:网关GW检查TS3的新鲜性,若新鲜,则计算:
Figure BDA0003272863320000113
进入步骤S414,否则表示协商失败;
S414:网关判断
Figure BDA0003272863320000114
是否成立,若是,则生成最新的时 间戳TS4,进入步骤S415,否则表示协商失败;
S415:网关GW计算:
Figure BDA0003272863320000115
Figure BDA0003272863320000116
并将消息m4={PKS4,q4,TS4}发送至用户端,用户端进入步骤S417;
网关生成新鲜的时间戳,同时计算:
Figure BDA0003272863320000117
并将消息m5={q5,TS5}发送至SN端,节点进入步骤S422;
此后过程后,网关进入步骤S416;
S416:网关计算:
Figure BDA0003272863320000118
Figure BDA0003272863320000119
更新
Figure BDA00032728633200001110
覆盖
Figure BDA00032728633200001111
至此网关完成了对其管辖的节点对应的动态随机数伪 装
Figure BDA0003272863320000121
的更新;
S417:用户端检查TS4的新鲜性,若新鲜,则计算
Figure BDA0003272863320000122
进入步骤S418,否则表示协商失败;至此,Rj被保密地传输至U处;
S418:用户端判断:
Figure BDA0003272863320000123
是否成立,若是,则计算:
KEYij=h(Ri||Rj)
进入步骤S419,否则表示协商失败;至此,登录和密钥协商阶段的会话密钥KEYij在用户端计算成功;
S419:用户端生成最新时间戳TS6,并计算:
Figure BDA0003272863320000124
Figure BDA0003272863320000125
Figure BDA0003272863320000126
Figure BDA0003272863320000127
用户端更新
Figure BDA0003272863320000128
并将消息m6={q6,TS6}传输至网关GW,网关进入步骤S420;至此,用户端完成对动态随机数
Figure BDA0003272863320000129
通信凭证
Figure BDA00032728633200001210
通信凭证假名
Figure BDA00032728633200001211
的更新;
S420:网关GW检查TS6的新鲜性,若新鲜,则进入步骤S421,否则表示协 商失败;
S421:网关GW判断:
Figure BDA00032728633200001212
是否成立,若是,则计算:
Figure BDA0003272863320000131
Figure BDA0003272863320000132
Figure BDA0003272863320000133
Figure BDA0003272863320000134
进入步骤S422,否则表示协商失败;
S421:将
Figure BDA0003272863320000135
传输至机密计算芯片,并在安全区中计算:
Figure BDA0003272863320000136
随后从安全区中输出
Figure BDA0003272863320000137
更新
Figure BDA0003272863320000138
Figure BDA0003272863320000139
至此,网关完成对动态随机数假名
Figure BDA00032728633200001310
通信凭证假名
Figure BDA00032728633200001311
用户识别码 假名
Figure BDA00032728633200001312
的更新;
S422:工业终端节点SN检查TS5的新鲜性,若新鲜,则进入步骤S423,否 则表示协商失败;
S423:工业终端节点SN判断:
Figure BDA00032728633200001313
是否成立,若是,则计算:
Figure BDA00032728633200001314
Figure BDA00032728633200001315
Figure BDA00032728633200001316
进入S424,否则表示协商失败;
S423:工业终端节点SN更新
Figure BDA00032728633200001317
至此,节点完成了通信凭证
Figure BDA00032728633200001318
的 更新。
本发明提供的有益效果是:从安全模型层面,本发明解决了单一安全策略难 以同时应对严峻内外威胁的难题,采用组合策略实现对工业物联网控制系统的 安全保障,扬弃了单一策略存在的不足,结合各种安全手段的优点,共同实现 安全保护。
从认证协议层面,本发明在初始化阶段预埋公钥解决了传统协议要求严格离 线注册带来的可用性缺陷,在登录和密钥协商时使用机密计算技术和动态轮转 技术,解决了传统协议容易遭受追踪攻击和节点捕获攻击的问题,在注册阶段 实现了权限分离,最小化了用户感染恶意程序、遭受社交工程攻击等手段带来 的内部威胁。
附图说明
图1是边界网络安全模型示意图;
图2是零信任身份认证协议示意图;
图3是现行零信任产品示意图;
图4是本申请组合策略示意图;
图5是节点注册阶段流程示意图;
图6是用户初始化阶段流程示意图;
图7是用户注册阶段流程示意图;
图8是登录和密钥协商阶段流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实 施方式作进一步地描述。
为了更好的解释说明,先对相关概念阐述如下。
请参考图1,图1是边界网络安全模型示意图。
边界网络安全模型是图1中竖虚线由边界防护设备构建的安全体系,将整个 系统分为“内网”和“外网”,边界防护设备放行合法请求,拒绝外部异常请求。流 量一旦进入防火墙内侧,便不再校验,一旦用户被伪装,甚至自己就是被收买 的恶意用户,网络内部将会对他不设防,恶意用户/被病毒控制的用户的请求将 在内部畅通无阻。这是传统的基于边界网络模型的缺点,预设了对“内网”所有流 量和请求的信任,仅能针对外部异常威胁,对于伪装成合法的流量、或者本身 就是合法的流量带来的内部威胁无法防御。
边界网络模型就像某公司的大楼门口处设立了门禁卡,合法用户通行,非法 用户禁止。但是如果攻击者捡到、破获了门禁卡内容,甚至攻击者就是合法用 户,直接就突破了边界的防护,边界网络模型不关心“合法用户”在内部做的任何 事情,预设了对内部的信任,无法应对内部的攻击,因此需要组合零信任模型 补充应对内部威胁。
但是也并不能说零信任模型可以单独运作了,仍然需要边界防火墙针对外部 威胁。
基于此,本发明提出的一种基于零信任组合访问控制策略的工业控制系统安 全框架,采用边界网络安全模型和零信任安全模型组合策略构建安全体系;
其中,边界网络安全模型用于抵御工业物联网控制系统外部威胁;零信任安 全模型用于防护工业物联网控制系统的内部威胁;
所述零信任安全模型具体包括:零信任身份认证协议和策略引擎;
请参考图2,图2是零信任身份认证协议示意图;零信任身份认证协议实现 了用户U和工业终端节点SN之间建立通信密钥,进行加密通信,并在阶段设 计时践行的安全目标。
所述零信任身份认证协议具体包括:系统初始化阶段、节点注册阶段、用户 初始化阶段、用户注册阶段、登录和密钥协商阶段;
策略引擎是为了实现实时计算用户的访问控制权限,在出现异常流量和时终 止会话断开连接。
请参考图3,图3是现行零信任产品示意图;现行零信任产品过度依赖策略 引擎,访问控制和数据流通都要经过策略引擎判断,这具有较高的延迟,难以 应对需要人工紧急处理的突发事件,而且由于机器学习模型无法做到100%的准 确度,识别错误可能会导致指令传递不及时、恶意指令放行等安全事故,恶意 用户也可以伪装自己的行为达到绕过策略引擎的目的。因此必须在协议层面实 现零信任,策略引擎可以从旁辅助进行动态访问控制,如:在协商密钥后长时 间不通信时回收会话密钥、拦截恶意用户发出的DOS攻击等任务,所以本申请 采用,边界网络安全模型抵御外部威胁,零信任身份认证协议和策略引擎旁挂 抵御内部威胁,组成图4的组合策略。
请参考图4,图4是本申请组合策略示意图;
策略引擎收集UIDi、IDGW、IDSN等全局唯一识别码,和他们的访问及被 访问信息,进行动态判断,与零信任身份认证协议是一个同步的过程。
所述系统初始化阶段,指超级管理员SA在离线安全环境下为网关和节点预 埋信息和函数,保障后续阶段的安全性和可行性,具体为:
超级管理员SA为网关GW配置机密计算芯片搭建机密计算环境,为每一网 关生成其独有的主密钥KGW并在机密计算安全区中保存;
超级管理员SA为网关GW和工业终端节点SN配置基本的运算函数,包括: 连接运算||、哈希运算函数h()和哈希运算消息认证码函数HMAC()和异或运算函 数⊕;
超级管理员SA分配硬件id号,并为每一个网关GW生成一对公私钥,分别 为公钥kp和私钥kv,超级管理员SA保存公钥kp和对应的网关信息,网关保存 私钥kv
初始化阶段后网关GW即部署于工作区域,后续阶段无需取回;
所述节点注册阶段,指工业终端节点SN在超级管理员SA的协助下进行在 线注册,具体为:
超级管理员SA通过初始化阶段预存的公钥密码算法加密通信信息,保护通 信安全,实现在不可信信道中向网关GW进行在线注册,经此过程后工业终端 节点SN归属于唯一的网关GW,同时节点SN和网关GW相互存留信息以供后 续的登录和密钥协商阶段中进行相互的身份认证、信息交换从而达到通信密钥 协商的目的;
所述用户初始化阶段,指用户U在超级管理员SA处进行初始化,分配信息, 赋予用户合法的身份和一次性权限申请的凭证OTV,使用户后续通过SA的身 份校验,并在SA协助下向网关GW发起在线注册和节点访问权限申请;
所述用户注册阶段,指用户U在超级管理员SA协助下向网关GW发起在线 注册和权限申请;用户U先通过提供用户初始化时信息以通过权限申请凭证 OTV验证,后续在线注册和权限申请在超级管理员SA的监管下进行;
所述登录和密钥协商阶段,指用户U、网关GW、工业终端节点SN三者之 间的相互认证身份协商密钥,并在协商结束后动态更新通信凭证的过程。
为方便解释说明,本申请首先对相关参数上、下标及参数本身统一解释:
以下标量与变量阐述均采用下角标i、j、GW、SC表示其来源,i表示来自 用户U的变量常量,j表示来自工业终端节点SN的变量常量,GW表示来自网 关GW的变量常量,SC表示来自智能卡的变量常量;拥有上角标old和new表 示其是变量,old和new是更新过程中新旧值的区分;拥有*上角标表示该值来 源于本地计算,与不含*上角标的同名值来自于本地存储,其对比运算是一种验 证的过程。
Figure BDA0003272863320000171
表示异或运算;h(·)表示单向哈希函数;||表示连接符;
Figure BDA0003272863320000172
是 加密(encode)函数,是以kp为密钥的加密函数。
Figure BDA0003272863320000181
是解密(decode)函数, 是kv为密钥的解密函数。
关键参数本身解释如表1所示:
表1参数符号释义
Figure BDA0003272863320000182
请参考图5,图5是节点注册阶段流程示意图;
所述节点注册阶段的具体流程如下:
S11:工业终端节点SN获取自身唯一ID标识IDj、网关GW唯一标识IDGW, 并生成随机数
Figure BDA0003272863320000183
SA根据IDGW提供对应的公钥网关公钥kp并计算:
Figure BDA0003272863320000184
Figure BDA0003272863320000185
Figure BDA0003272863320000186
其中,
Figure BDA0003272863320000187
是通信凭证、
Figure BDA0003272863320000188
是通信凭证假名、
Figure BDA0003272863320000189
是动态随机数
Figure BDA00032728633200001810
的假名;
S12:工业终端节点SN生成当前新鲜时间戳TS1,并计算:
Figure BDA00032728633200001811
S13:工业终端节点SN将消息m1={MSGj,TS1}传输至网关GW;
S14:网关GW检验时间戳TS1的新鲜性,若不新鲜,则丢弃并请求重发;若 新鲜,则计算:
Figure BDA0003272863320000191
其中
Figure BDA0003272863320000192
表示通过kv解密密文MSGj还原的信息;新鲜性判断是为了防 止延迟的无效注册消息和攻击者的重放攻击;
S15:网关GW判断
Figure BDA0003272863320000193
与TS1是否相等,不等则丢弃并请求重发,相等则将IDj传输至机密计算芯片中,并在机密计算环境中计算:
PPIDj=h(IDj||KGW)
计算完毕后从安全区输出PPIDj,保存键值对
Figure BDA0003272863320000194
于网关内存;
其中TS1相等判断是为了防止消息内容遭到篡改,KGW是系统初始化阶段预存 并在机密计算环境中严格保护的主密钥。
请参考图6,图6是用户初始化阶段流程示意图;
所述用户初始化阶段,具体流程为:
S21:用户端插入智能卡SC,获取智能卡身份标识IDSC,用户端采集用户生 物特征信息BIOi,计算:
i,τi)=Gen(BIOi)
UIDi=h(IDSC||σi)
其中Gen(BIOi)是生物特征提取函数,σii是提取的生物特征值;UIDi是由智能卡和用户生物特征组合计算的变量,是用户的全局唯一识别码,用户的访问和 控制行为可以通过UIDi监测记录,交付旁挂策略引擎进行行为分析和控制;
S22:用户端生成新鲜时间戳TS1,并将消息m1={IDSC,UIDi,TS1}发送至超 级管理员SA;
S24:超级管理员SA检查TS1的新鲜度,若不新鲜则拒绝;若新鲜,则判断 自身存储的智能卡列表SClist中是否包含IDSC,用户已存在则拒绝初始化请求; 若未包含,则生成随机数RNSA,计算OTV=h(UIDi||RNSA);
其中,OTV表示一次性的权限申请凭证,可凭此值在用户注册阶段进行身份 认证和权限申请,过后作废;
S25:超级管理员SA生成当前最新时间戳TS2,并保存键值对{UIDi-RNSA}, 同时将消息m2={OTV,TS2}发送至用户端;
S26:用户端检查TS2的新鲜度,若新鲜,则保存{OTV,τi}至SC卡;若不新 鲜,则请求重发。
请参考图7,图7是用户注册阶段流程示意图;
所述用户注册阶段,具体流程如下:
S31:用户端插入SC卡,获得本地存储信息IDSC,OTV和τi
S32:用户端输入要注册的自身ID号IDSC,生物信息BIOi和密码PWi
计算:
σi=Rep(BIOii)
UiDi=h(IDSC||σi)
其中Rep(BIOii)是生物特征匹配函数,是Gen(BIOi)函数的逆过程;
S33:用户端向超级管理员SA请求UIDi对应的RNSA,并计算:
OTV*=h(UIDi||RNSA)
判断OTV是否与OTV*是否相等,若是则计算
RPW=h(IDSC||σi||PWi)
V=h(UIDi||RPW)
其中,RPW是由密码PWi生成的密码校验变量,V是身份校验变量,这些变 量用于登陆与密钥协商阶段的用户身份校验;
S34:用户输入欲申请访问和控制权限的目标节点识别码IDj;SA判断是否允 许该权限申请,若是,则超级管理员提供IDj所属网关的识别码IDGW
S35:用户端生成当前的时间戳TS1,生成动态的随机数
Figure BDA0003272863320000211
并计算:
Figure BDA0003272863320000212
用户端将消息m1={MSGi,TS1}发送至网关GW;
S36:网关GW检查TS1的新鲜性,若不新鲜则拒绝注册;若新鲜,则计算:
Figure BDA0003272863320000213
S37:网关判断
Figure BDA0003272863320000214
是否与TS1相等,若不等,则拒绝注册;若相等,则获取IDGW, 并计算:
Figure BDA0003272863320000215
Figure BDA0003272863320000216
Figure BDA0003272863320000217
其中,
Figure BDA0003272863320000218
表示被通信凭证
Figure BDA0003272863320000219
和动态随机数
Figure BDA00032728633200002110
保护的UIDi
S38:网关传输
Figure BDA00032728633200002111
Figure BDA00032728633200002112
至机密计算芯片,并在安全区中计算:
Figure BDA00032728633200002113
计算完毕后从安全区输出
Figure BDA00032728633200002114
保存键值对
Figure BDA00032728633200002115
和键值对
Figure BDA00032728633200002116
于网关内存;其中KGW是系统初始化阶段网关主密钥;
S39:网关生成新鲜的时间戳TS2,并计算:
ACKGW=h(IDGW||TS2)
Figure BDA00032728633200002117
发送消息m2={MSGGW,TS2}至用户端;
S310:用户端检查TS2的新鲜性,若新鲜则计算:
Figure BDA00032728633200002118
ACKGW=h(IDGW||TS2)
并进入步骤S311,若不符合要求则拒绝注册;
S311:用户端判断
Figure BDA0003272863320000221
与ACKGW是否相等,若是则计算:
Figure BDA0003272863320000222
Figure BDA0003272863320000223
并进入步骤S312,否则拒绝注册;
S312:用户端计算:
Figure BDA0003272863320000224
Figure BDA0003272863320000225
保存键值对{DIDj-DIDGW}至SC卡的用户的访问控制列表AClist中;
保存密钥对
Figure BDA0003272863320000226
于SC卡中;
设置允许访问时间范围Ptime;获取允许访问区域Ploc;
保存{V,Ptime,Ploc}至SC卡。
请参考图8,图8是登录和密钥协商阶段流程示意图;所述登录和密钥协商 阶段,具体流程如下:
S41:用户端插入SC卡;获取当前时间T和位置L;
S42:判断当前时间T是否处于允许访问时间范围Ptime,位置L是否处于允 许访问区域Ploc;若是,则获取IDSC,V,τi,进入步骤S43;否则,则拒绝登录;
S43:用户端输入密码PWi、生物信息BIOi和访问控制的目标节点识别码IDj, 并计算:
σi=Rep(BIOii)
UIDi=h(IDSC||σi)
RPW=h(IDSC||σi||PWi)
V*=h(UIDi||RPW)
判断V*是否与V相等,若相等,则计算
Figure BDA0003272863320000227
进入步骤S44; 否则身份认证失败,拒绝登录;
S44:用户端判断用户具有的权限列表AClist中是否包含DIDj,若是,则通 过DIDj获取DIDGW,进一步通过DIDGW获取
Figure BDA0003272863320000231
计算:
Figure BDA0003272863320000232
Figure BDA0003272863320000233
生成随机数Ri和新鲜的时间戳TS1,计算:
Figure BDA0003272863320000234
Figure BDA0003272863320000235
Figure BDA0003272863320000236
其中,Ri是组成本阶段最终协商的会话密钥kEYij的组成部分,需要被安全的 传递至SN;PKS1为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变 量;PIDj为欲访问节点IDj的匿名;q1用于验证,校验消息的来源,保证消息未被 篡改;
S45:用户端发送消息
Figure BDA0003272863320000237
至网关GW;
S46:网关GW检查TS1的新鲜性,若新鲜,则通过
Figure BDA0003272863320000238
获取
Figure BDA0003272863320000239
并 将
Figure BDA00032728633200002310
Figure BDA00032728633200002311
传输至机密计算芯片,在机密计算芯片安全区中计算:
Figure BDA00032728633200002312
从安全区输出
Figure BDA00032728633200002313
S47:网关GW通过
Figure BDA00032728633200002314
获取
Figure BDA00032728633200002315
并计算:
Figure BDA00032728633200002316
Figure BDA00032728633200002317
Figure BDA00032728633200002318
判断
Figure BDA00032728633200002319
Figure BDA00032728633200002320
是否相等,若是,则进入步骤S48;否则表示协商失败;
S48:计算;
Figure BDA0003272863320000241
Figure BDA0003272863320000242
判断
Figure BDA0003272863320000243
是否成立,若是则将IDj 传输至机密计算芯片,进入步骤S49;否则表示消息被篡改,协商失败;
S49:在机密计算环境安全区中计算PPIDj=h(IDj||KGW),并从安全区中输 出PPIDj,通过PPIDj获取
Figure BDA0003272863320000244
计算:
Figure BDA0003272863320000245
Figure BDA0003272863320000246
Figure BDA0003272863320000247
生成新鲜的时间戳TS2,并计算:
Figure BDA0003272863320000248
Figure BDA0003272863320000249
将消息
Figure BDA00032728633200002410
发送至工业终端节点SN;
其中PKS2为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变量, q2用于验证,校验消息的来源,保证消息未被篡改;
S410:工业终端节点SN检查TS2的新鲜性,若新鲜,则获取IDj、IDGW
Figure BDA00032728633200002411
进入步骤S411,否则表示协商失败;
S411:工业终端节点计算:
Figure BDA00032728633200002412
Figure BDA00032728633200002413
判断
Figure BDA00032728633200002414
是否成立,若是,则生成随 机数Rj和新鲜的时间戳TS3,进入步骤S412,否则表示消息被篡改协商失败; 至此,Ri被保密地传输至SN处;
S412:工业终端节点SN计算:
Figure BDA0003272863320000251
Figure BDA0003272863320000252
KEYij=h(Ri||Rj)
并将消息m2={PKS3,q3,TS3}发送至网关GW;至此,登录和密钥协商阶段的会 话密钥KEYij在节点端计算成功;
S413:网关GW检查TS3的新鲜性,若新鲜,则计算:
Figure BDA0003272863320000253
进入步骤S414,否则表示协商失败;
S414:网关判断
Figure BDA0003272863320000254
是否成立,若是,则生成最新的时 间戳TS4,进入步骤S415,否则表示协商失败;
S415:网关GW计算:
Figure BDA0003272863320000255
Figure BDA0003272863320000256
并将消息m4={PKS4,q4,TS4}发送至用户端,用户端进入步骤S417;
网关生成新鲜的时间戳,同时计算:
Figure BDA0003272863320000257
并将消息m5={q5,TS5}发送至SN端,节点进入步骤S422;
此后过程后,网关进入步骤S416;
S416:网关计算:
Figure BDA0003272863320000258
Figure BDA0003272863320000259
更新
Figure BDA0003272863320000261
覆盖
Figure BDA0003272863320000262
至此网关完成了对其管辖的节点对应的动态随机数伪 装
Figure BDA0003272863320000263
的更新;
S417:用户端检查TS4的新鲜性,若新鲜,则计算
Figure BDA0003272863320000264
进入步骤S418,否则表示协商失败;至此,Rj被保密地传输至U处;
S418:用户端判断:
Figure BDA0003272863320000265
是否成立,若是,则计算:
KEYij=h(Ri||Rj)
进入步骤S419,否则表示协商失败;至此,登录和密钥协商阶段的会话密钥KEYij在用户端计算成功;
S419:用户端生成最新时间戳TS6,并计算:
Figure BDA0003272863320000266
Figure BDA0003272863320000267
Figure BDA0003272863320000268
Figure BDA0003272863320000269
用户端更新
Figure BDA00032728633200002610
并将消息m6={q6,TS6}传输至网关GW,网关进入步骤S420;至此,用户端完成对动态随机数
Figure BDA00032728633200002611
通信凭证
Figure BDA00032728633200002612
通信凭证假名
Figure BDA00032728633200002613
的更新;
S420:网关GW检查TS6的新鲜性,若新鲜,则进入步骤S421,否则表示协 商失败;
S421:网关GW判断:
Figure BDA00032728633200002614
是否成立,若是,则计算:
Figure BDA0003272863320000271
Figure BDA0003272863320000272
Figure BDA0003272863320000273
Figure BDA0003272863320000274
进入步骤S422,否则表示协商失败;
S421:将
Figure BDA0003272863320000275
传输至机密计算芯片,并在安全区中计算:
Figure BDA0003272863320000276
随后从安全区中输出
Figure BDA0003272863320000277
更新
Figure BDA0003272863320000278
Figure BDA0003272863320000279
至此,网关完成对动态随机数假名
Figure BDA00032728633200002710
通信凭证假名
Figure BDA00032728633200002711
用户识别码 假名
Figure BDA00032728633200002712
的更新;
S422:工业终端节点SN检查TS5的新鲜性,若新鲜,则进入步骤S423,否 则表示协商失败;
S423:工业终端节点SN判断:
Figure BDA00032728633200002713
是否成立,若是,则计算:
Figure BDA00032728633200002714
Figure BDA00032728633200002715
Figure BDA00032728633200002716
进入S424,否则表示协商失败;
S423:工业终端节点SN更新
Figure BDA00032728633200002717
至此,节点完成了通信凭证
Figure BDA00032728633200002718
的 更新。
本发明的有益效果是:从安全模型层面,本发明解决了单一安全策略难以同 时应对严峻内外威胁的难题,采用组合策略实现对工业物联网控制系统的安全 保障,扬弃了单一策略存在的不足,结合各种安全手段的优点,共同实现安全 保护;
从认证协议层面,本发明在初始化阶段预埋公钥解决了传统协议要求严格离 线注册带来的可用性缺陷,在登录和密钥协商时使用机密计算技术和动态轮转 技术,解决了传统协议容易遭受追踪攻击和节点捕获攻击的问题,在注册阶段 实现了权限分离,最小化了用户感染恶意程序、遭受社交工程攻击等手段带来 的内部威胁。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精 神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保 护范围之内。

Claims (5)

1.一种基于零信任组合访问控制策略的工业控制系统安全框架,其特征在于:
采用边界网络安全模型和零信任安全模型组合策略构建安全体系;
其中,边界网络安全模型用于抵御工业物联网控制系统外部威胁;零信任安全模型用于防护工业物联网控制系统的内部威胁;
所述零信任安全模型具体包括:零信任身份认证协议和策略引擎;
所述零信任身份认证协议具体包括:系统初始化阶段、节点注册阶段、用户初始化阶段、用户注册阶段、登录和密钥协商阶段;所述系统初始化阶段,指超级管理员SA在离线安全环境下为网关和节点预埋信息和函数,保障后续阶段的安全性和可行性,具体为:
超级管理员SA为网关GW配置机密计算芯片搭建机密计算环境,为每一网关生成其独有的主密钥KGW并在机密计算安全区中保存;
超级管理员SA为网关GW和工业终端节点SN配置基本的参数与运算函数,包括:硬件id号连接运算||、哈希运算函数h()和哈希运算消息认证码函数HMAC()和异或运算函数⊕;
超级管理员SA为每一个网关GW生成一对公私钥,分别为公钥kp和私钥kv,超级管理员SA保存公钥kp和对应的网关信息,网关保存私钥kv;初始化阶段后网关GW即部署于工作区域,后续阶段无需取回;
所述节点注册阶段,指工业终端节点SN在超级管理员SA的协助下进行在线注册,具体为:
超级管理员SA通过初始化阶段预存的公钥密码算法加密通信信息,保护通信安全,实现在不可信信道中向网关GW进行在线注册,经此过程后工业终端节点SN归属于唯一的网关GW,同时节点SN和网关GW相互存留信息以供后续的登录和密钥协商阶段中进行相互的身份认证、信息交换从而达到通信密钥协商的目的;
所述用户初始化阶段,指用户U在超级管理员SA处进行初始化,分配信息,赋予用户合法的身份和一次性权限申请的凭证OTV,使用户后续通过SA的身份校验,并在SA协助下向网关GW发起在线注册和节点访问权限申请;
所述用户注册阶段,指用户U在超级管理员SA协助下向网关GW发起在线注册和权限申请;用户U先通过提供用户初始化时信息以通过权限申请凭证OTV验证,后续在线注册和权限申请在超级管理员SA的监管下进行;
所述登录和密钥协商阶段,指用户U、网关GW、工业终端节点SN三者之间的相互认证身份协商密钥,并在协商结束后动态更新通信凭证的过程。
2.如权利要求1所述的一种基于零信任组合访问控制策略的工业控制系统安全框架,其特征在于:所述节点注册阶段的具体流程如下:
S11:工业终端节点SN获取自身唯一ID标识IDj、网关GW唯一标识IDGW,并生成随机数
Figure FDA0003272863310000021
SA根据IDGW提供对应的公钥网关公钥kp并计算:
Figure FDA0003272863310000022
Figure FDA0003272863310000023
Figure FDA0003272863310000024
其中,
Figure FDA0003272863310000025
是通信凭证、
Figure FDA0003272863310000026
是通信凭证假名、
Figure FDA0003272863310000027
是动态随机数
Figure FDA0003272863310000028
的假名;
S12:工业终端节点SN生成当前新鲜时间戳TS1,并计算:
Figure FDA0003272863310000029
S13:工业终端节点SN将消息m1={MSGj,TS1}传输至网关GW;
S14:网关GW检验时间戳TS1的新鲜性,若不新鲜,则丢弃并请求重发;若新鲜,则计算:
Figure FDA0003272863310000031
其中
Figure FDA0003272863310000037
表示通过kv解密密文MSGj还原的信息;新鲜性判断用于防止延迟的无效注册消息和攻击者的重放攻击;
S15:网关GW判断
Figure FDA0003272863310000038
与TS1是否相等,不等则丢弃并请求重发,相等则将IDj传输至机密计算芯片中,并在机密计算环境中计算:
PPIDj=h(IDj||KGW)
计算完毕后从安全区输出PPIDj,保存键值对
Figure FDA0003272863310000032
于网关内存;
其中TS1相等判断是为了防止消息内容遭到篡改,KGW是系统初始化阶段预存并在机密计算环境中严格保护的主密钥;
S16:网关GW生成新鲜的时间戳,TS2,并计算:
ACKGW=h(IDGW||TS2)
Figure FDA0003272863310000033
网关GW将消息m2={MSGGW,TS2}发送至工业终端节点SN;其中ACKGW是确认消息,MSGGW是以网关私钥kv加密的确认消息;
S17:工业终端节点SN接受消息,检查时间戳TS2的新鲜度;若不新鲜,则丢弃并请求重发,若新鲜,则计算:
Figure FDA0003272863310000034
ACKGW=h(IDGW||TS2)
判断
Figure FDA0003272863310000035
和ACKGW是否相等,若不等,丢弃并请求重发;若相等,则保存键值对
Figure FDA0003272863310000036
3.如权利要求1所述的一种基于零信任组合访问控制策略的工业控制系统安全框架,其特征在于:所述用户初始化阶段,具体流程为:
S21:用户端插入智能卡SC,获取智能卡身份标识IDSC,用户端采集用户生物特征信息BIOi,计算:
i,τi)=Gen(BIOi)
UIDi=h(IDSC||σi)
其中Gen(BIOi)是生物特征提取函数,σi,τi是提取的生物特征值;UIDi是由智能卡和用户生物特征组合计算的变量,是用户的全局唯一识别码,用户的访问和控制行为可以通过UIDi监测记录,交付旁挂策略引擎进行行为分析和控制;
S22:用户端生成新鲜时间戳TS1,并将消息m1={IDSC,UIDi,TS1}发送至超级管理员SA;
S24:超级管理员SA检查TS1的新鲜度,若不新鲜则拒绝;若新鲜,则判断自身存储的智能卡列表SClist中是否包含IDSC,用户已存在则拒绝初始化请求;若未包含,则生成随机数RNSA,计算OTV=h(UIDi||RNSA);
其中,OTV表示一次性的权限申请凭证,可凭此值在用户注册阶段进行身份认证和权限申请,过后作废;
S25:超级管理员SA生成当前最新时间戳TS2,并保存键值对{UIDi-RNSA},同时将消息m2={OTV,TS2}发送至用户端;
S26:用户端检查TS2的新鲜度,若新鲜,则保存{OTV,τi}至SC卡;若不新鲜,则请求重发。
4.如权利要求1所述的一种基于零信任组合访问控制策略的工业控制系统安全框架,其特征在于:所述用户注册阶段,具体流程如下:
S31:用户端插入SC卡,获得本地存储信息IDSC,OTV和τi
S32:用户端输入要注册的自身ID号IDSC,生物信息BIOi和密码PWi
计算:
σi=Rep(BIOi,τi)
UIDi=h(IDSC||σi)
其中Rep(BIOi,τi)是生物特征匹配函数,是Gen(BIOi)函数的逆过程;
S33:用户端向超级管理员SA请求UIDi对应的RNSA,并计算:
OTV*=h(UIDi||RNSA)
判断OTV是否与OTV*是否相等,若是则计算
RPW=h(IDSC||σi||PWi)
V=h(UIDi||RPW)
其中,RPW是由密码PWi生成的密码校验变量,V是身份校验变量,这些变量用于登陆与密钥协商阶段的用户身份校验;
S34:用户输入欲申请访问和控制权限的目标节点识别码IDj;SA判断是否允许该权限申请,若是,则超级管理员提供IDj所属网关的识别码IDGW
S35:用户端生成当前的时间戳TS1,生成动态的随机数
Figure FDA0003272863310000051
并计算:
Figure FDA0003272863310000052
用户端将消息m1={MSGi,TS1}发送至网关GW;
S36:网关GW检查TS1的新鲜性,若不新鲜则拒绝注册;若新鲜,则计算:
Figure FDA0003272863310000053
S37:网关判断
Figure FDA0003272863310000054
是否与TS1相等,若不等,则拒绝注册;若相等,则获取IDGW,并计算:
Figure FDA0003272863310000055
Figure FDA0003272863310000056
Figure FDA0003272863310000057
其中,
Figure FDA0003272863310000058
表示被通信凭证
Figure FDA0003272863310000059
和动态随机数
Figure FDA00032728633100000510
保护的UIDi;
S38:网关传输
Figure FDA00032728633100000511
Figure FDA00032728633100000512
至机密计算芯片,并在安全区中计算:
Figure FDA00032728633100000513
计算完毕后从安全区输出
Figure FDA0003272863310000061
保存键值对
Figure FDA0003272863310000062
和键值对
Figure FDA0003272863310000063
于网关内存;其中KGW是系统初始化阶段网关主密钥;
S39:网关生成新鲜的时间戳TS2,并计算:
ACKGW=h(IDGW||TS2)
Figure FDA0003272863310000064
发送消息m2={MSGGW,TS2}至用户端;
S310:用户端检查TS2的新鲜性,若新鲜则计算:
Figure FDA0003272863310000065
ACKGW=h(IDGW||TS2)
并进入步骤S311,若不符合要求则拒绝注册;
S311:用户端判断
Figure FDA00032728633100000611
与ACKGW是否相等,若是则计算:
Figure FDA0003272863310000066
Figure FDA0003272863310000067
并进入步骤S312,否则拒绝注册;
S312:用户端计算:
Figure FDA0003272863310000068
Figure FDA0003272863310000069
保存键值对{DIDj-DIDGW}至SC卡的用户的访问控制列表AClist中;
保存密钥对
Figure FDA00032728633100000610
于SC卡中;
设置允许访问时间范围Ptime;获取允许访问区域Ploc;
保存{V,Ptime,Ploc}至SC卡。
5.如权利要求1所述的一种基于零信任组合访问控制策略的工业控制系统安全框架,其特征在于:所述登录和密钥协商阶段,具体流程如下:
S41:用户端插入SC卡;获取当前时间T和位置L;
S42:判断当前时间T是否处于允许访问时间范围Ptime,位置L是否处于允许访问区域Ploc;若是,则获取IDSC,V,τi,进入步骤S43;否则,则拒绝登录;
S43:用户端输入密码PWi、生物信息BIOi和访问控制的目标节点识别码IDj,并计算:
σi=Rep(BIOi,τi)
UIDi=h(IDSC||σi)
RPW=h(IDSC||σi||PWi)
V*=h(UIDi||RPW)
判断V*是否与V相等,若相等,则计算
Figure FDA0003272863310000071
进入步骤S44;否则身份认证失败,拒绝登录;
S44:用户端判断用户具有的权限列表AClist中是否包含DIDj,若是,则通过DIDj获取DIDGW,进一步通过DIDGW获取
Figure FDA0003272863310000072
计算:
Figure FDA0003272863310000073
Figure FDA0003272863310000074
生成随机数Ri和新鲜的时间戳TS1,计算:
Figure FDA0003272863310000075
Figure FDA0003272863310000076
Figure FDA0003272863310000077
其中,Ri是组成本阶段最终协商的会话密钥KEYij的组成部分,需要被安全的传递至SN;PKS1为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变量;PIDj为欲访问节点IDj的匿名;q1用于验证,校验消息的来源,保证消息未被篡改;
S45:用户端发送消息
Figure FDA0003272863310000081
至网关GW;
S46:网关GW检查TS1的新鲜性,若新鲜,则通过
Figure FDA0003272863310000082
获取
Figure FDA0003272863310000083
并将
Figure FDA0003272863310000084
Figure FDA0003272863310000085
传输至机密计算芯片,在机密计算芯片安全区中计算:
Figure FDA0003272863310000086
从安全区输出
Figure FDA0003272863310000087
S47:网关GW通过
Figure FDA0003272863310000088
获取
Figure FDA0003272863310000089
并计算:
Figure FDA00032728633100000810
Figure FDA00032728633100000811
Figure FDA00032728633100000812
判断
Figure FDA00032728633100000813
Figure FDA00032728633100000814
是否相等,若是,则进入步骤S48;否则表示协商失败;
S48:计算;
Figure FDA00032728633100000815
Figure FDA00032728633100000816
判断
Figure FDA00032728633100000817
是否成立,若是则将IDj传输至机密计算芯片,进入步骤S49;否则表示消息被篡改,协商失败;
S49:在机密计算环境安全区中计算PPIDj=h(IDj||KGW),并从安全区中输出PPIDj,通过PPIDj获取
Figure FDA00032728633100000818
计算:
Figure FDA00032728633100000819
Figure FDA00032728633100000820
Figure FDA00032728633100000821
生成新鲜的时间戳TS2,并计算:
Figure FDA00032728633100000822
Figure FDA0003272863310000091
将消息
Figure FDA0003272863310000092
发送至工业终端节点SN;
其中PKS2为使用共享的通信凭证和其他共享变量加密并保护Ri传递的变量,q2用于验证,校验消息的来源,保证消息未被篡改;
S410:工业终端节点SN检查TS2的新鲜性,若新鲜,则获取IDj、IDGW
Figure FDA0003272863310000093
进入步骤S411,否则表示协商失败;
S411:工业终端节点计算:
Figure FDA00032728633100000910
Figure FDA0003272863310000094
判断
Figure FDA0003272863310000095
是否成立,若是,则生成随机数Rj和新鲜的时间戳TS3,进入步骤S412,否则表示消息被篡改协商失败;至此,Ri被保密地传输至SN处;
S412:工业终端节点SN计算:
Figure FDA0003272863310000096
Figure FDA0003272863310000097
KEYij=h(Ri||Rj)
并将消息m2={PKS3,q3,TS3}发送至网关GW;至此,登录和密钥协商阶段的会话密钥KEYij在节点端计算成功;
S413:网关GW检查TS3的新鲜性,若新鲜,则计算:
Figure FDA0003272863310000098
进入步骤S414,否则表示协商失败;
S414:网关判断
Figure FDA0003272863310000099
是否成立,若是,则生成最新的时间戳TS4,进入步骤S415,否则表示协商失败;
S415:网关GW计算:
Figure FDA0003272863310000101
Figure FDA0003272863310000102
并将消息m4={PKS4,q4,TS4}发送至用户端,用户端进入步骤S417;
网关生成新鲜的时间戳,同时计算:
Figure FDA0003272863310000103
并将消息m5={q5,TS5}发送至SN端,节点进入步骤S422;
此后过程后,网关进入步骤S416;
S416:网关计算:
Figure FDA0003272863310000104
Figure FDA0003272863310000105
更新
Figure FDA0003272863310000106
覆盖
Figure FDA0003272863310000107
至此网关完成了对其管辖的节点对应的动态随机数伪装
Figure FDA0003272863310000108
的更新;
S417:用户端检查TS4的新鲜性,若新鲜,则计算
Figure FDA0003272863310000109
进入步骤S418,否则表示协商失败;至此,Rj被保密地传输至U处;
S418:用户端判断:
Figure FDA00032728633100001010
是否成立,若是,则计算:
KEYij=h(Ri||Rj)
进入步骤S419,否则表示协商失败;至此,登录和密钥协商阶段的会话密钥KEYij在用户端计算成功;
S419:用户端生成最新时间戳TS6,并计算:
Figure FDA00032728633100001120
Figure FDA00032728633100001121
Figure FDA0003272863310000111
Figure FDA0003272863310000112
用户端更新
Figure FDA0003272863310000113
并将消息m6={q6,TS6}传输至网关GW,网关进入步骤S420;至此,用户端完成对动态随机数
Figure FDA0003272863310000114
通信凭证
Figure FDA0003272863310000115
通信凭证假名
Figure FDA0003272863310000116
的更新;
S420:网关GW检查TS6的新鲜性,若新鲜,则进入步骤S421,否则表示协商失败;
S421:网关GW判断:
Figure FDA0003272863310000117
是否成立,若是,则计算:
Figure FDA0003272863310000118
Figure FDA0003272863310000119
Figure FDA00032728633100001110
Figure FDA00032728633100001111
进入步骤S422,否则表示协商失败;
S421:将
Figure FDA00032728633100001112
传输至机密计算芯片,并在安全区中计算:
Figure FDA00032728633100001113
随后从安全区中输出
Figure FDA00032728633100001114
更新
Figure FDA00032728633100001115
Figure FDA00032728633100001116
至此,网关完成对动态随机数假名
Figure FDA00032728633100001117
通信凭证假名
Figure FDA00032728633100001118
用户识别码假名
Figure FDA00032728633100001119
的更新;
S422:工业终端节点SN检查TS5的新鲜性,若新鲜,则进入步骤S423,否则表示协商失败;
S423:工业终端节点SN判断:
Figure FDA0003272863310000121
是否成立,若是,则计算:
Figure FDA0003272863310000122
Figure FDA0003272863310000123
Figure FDA0003272863310000124
进入S424,否则表示协商失败;
S423:工业终端节点SN更新
Figure FDA0003272863310000125
至此,节点完成了通信凭证
Figure FDA0003272863310000126
的更新。
CN202111107412.1A 2021-09-22 2021-09-22 基于零信任组合访问控制策略的工业控制系统安全框架 Pending CN114024706A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111107412.1A CN114024706A (zh) 2021-09-22 2021-09-22 基于零信任组合访问控制策略的工业控制系统安全框架

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111107412.1A CN114024706A (zh) 2021-09-22 2021-09-22 基于零信任组合访问控制策略的工业控制系统安全框架

Publications (1)

Publication Number Publication Date
CN114024706A true CN114024706A (zh) 2022-02-08

Family

ID=80054522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111107412.1A Pending CN114024706A (zh) 2021-09-22 2021-09-22 基于零信任组合访问控制策略的工业控制系统安全框架

Country Status (1)

Country Link
CN (1) CN114024706A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116233352A (zh) * 2023-05-06 2023-06-06 北京电信易通信息技术股份有限公司 一种视频会议场景下终端数据传输方法及系统
CN116800432A (zh) * 2023-07-04 2023-09-22 兰州大学 一种基于可信执行环境和计算态凭证的IIoT认证方案
EP4283925A1 (de) * 2022-05-25 2023-11-29 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems und kommunikationssystem
EP4300882A1 (de) * 2022-06-29 2024-01-03 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems, kommunikationssystem und adapter für endgerät

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657124A (zh) * 2017-01-03 2017-05-10 宜春学院 用于物联网的基于假名的匿名认证与密钥协商优化认证方法以及优化认证分析方法
CN108965338A (zh) * 2018-09-21 2018-12-07 杭州师范大学 多服务器环境下的三因素身份认证及密钥协商的方法
WO2019157333A1 (en) * 2018-02-08 2019-08-15 Nussbaum Jared Peeirs:passive evaluation of endpoint identity and risk as a surrogate authentication factor
CN110798494A (zh) * 2018-08-02 2020-02-14 南昌航空大学 一种基于生物特征信息的无线医疗传感器网络用户身份认证协议

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657124A (zh) * 2017-01-03 2017-05-10 宜春学院 用于物联网的基于假名的匿名认证与密钥协商优化认证方法以及优化认证分析方法
WO2019157333A1 (en) * 2018-02-08 2019-08-15 Nussbaum Jared Peeirs:passive evaluation of endpoint identity and risk as a surrogate authentication factor
CN110798494A (zh) * 2018-08-02 2020-02-14 南昌航空大学 一种基于生物特征信息的无线医疗传感器网络用户身份认证协议
CN108965338A (zh) * 2018-09-21 2018-12-07 杭州师范大学 多服务器环境下的三因素身份认证及密钥协商的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘忻等: "《一种基于SGX的工业物联网身份认证协议》", 《信息网络安全》 *
刘忻等: "《一种实现在线注册与权限分离的工业物联网身份认证协议》", 《信息网络安全》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4283925A1 (de) * 2022-05-25 2023-11-29 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems und kommunikationssystem
WO2023227312A1 (de) * 2022-05-25 2023-11-30 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems und kommunikationssystem
EP4300882A1 (de) * 2022-06-29 2024-01-03 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems, kommunikationssystem und adapter für endgerät
WO2024002597A1 (de) * 2022-06-29 2024-01-04 Siemens Aktiengesellschaft Verfahren zur gesicherten übermittlung zeitkritischer daten innerhalb eines kommunikationssystems, kommunikationssystem und adapter für endgerät
CN116233352A (zh) * 2023-05-06 2023-06-06 北京电信易通信息技术股份有限公司 一种视频会议场景下终端数据传输方法及系统
CN116233352B (zh) * 2023-05-06 2023-07-07 北京电信易通信息技术股份有限公司 一种视频会议场景下终端数据传输方法及系统
CN116800432A (zh) * 2023-07-04 2023-09-22 兰州大学 一种基于可信执行环境和计算态凭证的IIoT认证方案

Similar Documents

Publication Publication Date Title
Alshahrani et al. Secure mutual authentication and automated access control for IoT smart home using cumulative keyed-hash chain
CN114024706A (zh) 基于零信任组合访问控制策略的工业控制系统安全框架
US10454902B2 (en) Techniques for secure data extraction in a virtual or cloud environment
US8074264B2 (en) Secure key distribution to internet clients
US11233790B2 (en) Network-based NT LAN manager (NTLM) relay attack detection and prevention
KR102177794B1 (ko) 사물인터넷 블록체인 환경에서의 디바이스 분산 인증 방법 및 이를 이용한 디바이스 분산 인증 시스템
JP2002197064A (ja) 認証サーバに対してネットワーク・アクセス・サーバを認証する方法
US10999318B2 (en) Algorithmic packet-based defense against distributed denial of service
RU2645597C2 (ru) Способ аутентификации в канале скрытой передачи данных
JP4299621B2 (ja) サービス提供方法、サービス提供プログラム、ホスト装置、および、サービス提供装置
WO2023174143A1 (zh) 数据传输方法、设备、介质及产品
JP2007318806A (ja) 移動ネットワーク環境におけるデータトラフィックの保護方法
CN101873216A (zh) 主机认证方法、数据包发送方法和接收方法
CN101764788B (zh) 基于扩展802.1x认证系统的安全接入方法
Yoon et al. Multiple PUF-based lightweight authentication method in the IoT
US10154045B2 (en) Method of communicating between secured computer systems as well as computer network infrastructure
CN116760633B (zh) 一种安全可信物理网网关的实现方法
JP6479724B2 (ja) 秘密鍵同期システム、ユーザ端末及び秘密鍵同期方法
US10313305B2 (en) Method of unblocking external computer systems in a computer network infrastructure, distributed computer network having such a computer network infrastructure as well as computer program product
US10523633B2 (en) Method of communicating between secured computer systems, a computer network infrastructure and a computer program product
JP2019061538A (ja) コンピュータプログラム、デバイス及び抑制方法
CN106576050B (zh) 三层安全和计算架构
CN111131211A (zh) 一种面向共享洗衣机安全的防篡改方法
KR102539418B1 (ko) Puf 기반 상호 인증 장치 및 방법
CN105592080B (zh) 一种终端之间互动身份认证方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20220208