搜索结果: GM/T 0119-2022, GM/T0119-2022, GMT 0119-2022, GMT0119-2022
| 标准编号 | GM/T 0119-2022 (GM/T0119-2022) | | 中文名称 | PLC控制系统及PLC控制器密码应用技术规范 | | 英文名称 | Cryptography applications technical specification for PLC system and PLC controller | | 行业 | Chinese Industry Standard (推荐) | | 中标分类 | L80 | | 字数估计 | 94,923 | | 发布日期 | 2022-11-20 | | 实施日期 | 2023-06-01 | | 发布机构 | 国家密码管理局 |
GM/T 0119-2022: PLC控制系统及PLC控制器密码应用技术规范
ICS 35.030
CCSL80
中华人民共和国密码行业标准
PLC控制系统及PLC控制器
密码应用技术规范
2022-11-20发布
2023-06-01实施
国家密码管理局 发 布
目次
前言 Ⅰ
1 范围 1
2 规范性引用文件 1
3 术语和定义 1
4 缩略语 2
5 PLC控制系统概述 2
5.1 基本组成 2
5.2 基本功能 3
6 PLC控制系统密码应用概述 4
6.1 安全生命周期 4
6.2 应用域划分 4
6.3 密码应用功能组成 5
6.4 密码应用总体要求 5
6.5 密码应用基本流程 6
7 PLC控制器密码应用要求 7
7.1 密码应用功能组成 7
7.2 密码应用要求 8
8 工程师站密码应用要求 11
8.1 密码应用功能组成 11
8.2 密码应用要求 12
9 操作员站密码应用要求 14
9.1 密码应用功能组成 14
9.2 密码应用要求 14
10 数据服务站密码应用要求 17
10.1 密码应用功能组成 17
10.2 密码应用要求 17
11 安全管理服务器密码应用要求 18
12 PLC控制系统密码应用接口 19
附录A(资料性) PLC控制系统各组成部分 20
附录B(资料性) 密码安全管理接口参考 22
附录C(资料性) 密码安全服务接口参考 83
前言
本文件按照GB/T 1.1-2020《标准化工作导则 第1部分:标准化文件的结构和起草规则》的规定
起草。
请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。
本文件由密码行业标准化技术委员会提出并归口。
本文件起草单位:华大半导体有限公司、中电智能科技有限公司、成都天瑞芯安科技有限公司、国家
密码管理局商用密码检测中心、中国电子标准化研究院、成都密码技术研究院、北京和利时系统工程有
限公司、国电南京自动化股份有限公司、广州数控设备有限公司、南方电网科学研究院有限责任公司、工
业信息安全(四川)创新中心有限公司、北京华大云创科技有限公司。
本文件主要起草人:兰天、傅一帆、张兴波、尚望、张众、齐晶晶、张五一、江楠、何英武、陈剑飞、姚相振、
龚洁中、杜志波、向春玲、杨祎巍、张文科、陈跃。
PLC控制系统及PLC控制器
密码应用技术规范
1 范围
本文件描述了PLC控制系统和PLC控制器的基本组成;定义了PLC控制系统的密码应用功能,
PLC控制系统密码应用总体要求和密码应用基本流程;定义了PLC控制系统中各组成设备的密码应
用功能和密码应用要求;给出了PLC控制系统密码应用接口参考。
本文件适用于集成密码功能的PLC控制系统和PLC控制器的设计、开发,也可用于指导相关产品
的密码应用检测。
2 规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文
件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于
本文件。
GB/T 32905 信息安全技术 SM3密码杂凑算法
GB/T 32907 信息安全技术 SM4分组密码算法
GB/T 32918(所有部分) 信息安全技术 SM2椭圆曲线公钥密码算法
GB/T 37092-2018 信息安全技术 密码模块安全要求
GB/T 38635(所有部分) 信息安全技术 SM9标识密码算法
GM/Z4001 密码术语
3 术语和定义
GM/Z4001界定的以及下列术语和定义适用于本文件。
3.1
由GB/T 32918(所有部分)定义的一种椭圆曲线公钥密码算法。
3.2
由GB/T 32905定义的一种密码杂凑算法。
3.3
由GB/T 32907定义的一种分组密码算法。
3.4
由GB/T 38635(所有部分)定义的一种基于身份标识的非对称密码算法。
3.5
对工业生产过程安全、信息安全和可靠运行产生作用和影响的人员、硬件和软件的集合。
3.6
实现工业设备互联的局域网,具备更高的稳定性和确定性。
3.7
一种用于工业环境的数字式操作的电子系统。这种系统用可编程的存储器作为面向用户指令的内
部寄存器,完成规定的功能,如逻辑、顺序、定时、计数、运算等,通过数字或模拟的输入/输出,控制各种
类型的机械或过程。
3.8
用户根据所要完成的自动化系统要求而建立的由可编程逻辑控制器及其相关外围设备组成的
系统。
3.9
现场总线 fieldbus
应用于生产现场,在现场设备之间、现场设备和控制装置之间实行双向、串形、多结点的数字通信
技术。
3.10
用户使用PLC控制器配套的应用软件中提供的工具、方法,完成系统中具体逻辑控制任务的脚本
集合。
3.11
用户使用PLC控制器配套的应用软件中提供的工具、方法,完成系统中具体监控任务的脚本集合。
4 缩略语
下列缩略语适用于本文件。
5 PLC控制系统概述
5.1 基本组成
PLC控制系统基本组成如图1所示。PLC控制系统各组成部分详细描述见附录A。
图1 PLC控制系统组成
PLC控制系统以PLC控制器为中心构成,基本组成包括:
a) PLC控制器:运行用户逻辑组态,实现逻辑控制、现场总线管理、执行指令传递、感测数据回收
等功能;
b) 数据服务站:实现数据和事件的记录存档;
c) 工程师站:运行逻辑组态软件,实现用户逻辑组态的编辑、打包和下装;
d) 操作员站:运行监控组态软件,实现用户监控组态的编辑和执行,PLC控制系统的运行状态和
事件的监测;
e) 工业局域网总线:实现PLC控制系统内各设备间的局域网通信;
f) 现场总线:实现PLC控制器和各现场设备间的通信。
其中,工程师站、操作员站、数据服务站、PLC控制器之间通过工业局域网总线互联;PLC控制器和
现场设备之间通过现场总线互联。
5.2 基本功能
PLC控制系统的基本功能包括:
a) 用户逻辑组态的编辑开发;
b) 用户逻辑组态的下装;
c) 用户逻辑组态运行;
d) 用户监控组态的编辑开发;
e) 用户监控组态运行;
f) 系统运行状态数据和事件上送;
g) 系统运行状态数据和事件的存档;
h) 工业局域网总线控制;
i) 现场总线控制。
6 PLC控制系统密码应用概述
6.1 安全生命周期
PLC控制系统安全生命周期包括初始化态、编程配置态、运行态和注销态。不同的安全生命周期
状态下,PLC控制系统需要使用不同的密码安全功能。
a) 初始化态:PLC控制系统首次接入系统网络时,完成密码安全初始化的状态。
b) 编程配置态:PLC控制系统处于用户逻辑组态和用户监控组态开发状态。该状态下,用户可
以编辑和测试用户逻辑组态和用户监控组态,进行用户逻辑组态的重新更换和启用。
c) 运行态:PLC控制系统处于正常运行状态,该状态下按照已启用用户逻辑组态的控制流程自
主执行。处于运行态的系统,可以进行启动、锁定/解锁、挂起/解挂、关闭运行周期管理。
d) 注销态:PLC控制系统处于不可响应的状态,该状态下密钥和敏感数据被销毁。
状态迁移如图2所示。
图2 PLC控制系统安全生命周期
6.2 应用域划分
PLC控制系统至少包括两个应用域:设备系统域和用户应用域(见图3)。不同应用域的管理方不
同,信息资产归属不同,需要使用密码技术进行隔离,并配置不同的密钥及敏感数据。
a) 设备系统域:由系统开发方或系统运维方管理,主要包括PLC控制系统的软硬件系统环境、系
统的配置,设备系统运行的状态。
b) 用户应用域:由用户方管理,主要包括用户开发的用户逻辑组态和用户监控组态,用户逻辑组
态和用户监控组态的配置,用户逻辑组态和用户监控组态运行产生的数据。
图3 PLC控制系统应用域划分
6.3 密码应用功能组成
PLC控制系统中,密码应用系统如图4所示。
图4 密码应用系统组成
PLC控制系统中,密码应用系统主要包括PLC控制器、工程师站、操作员站、数据服务站中的密码
模块及其密码应用功能,操作人员身份凭证,以及安全管理服务器。
密码模块嵌入到PLC控制系统的各组成设备中,主要实现密码算法、密码安全功能和安全管理功
能,对外提供密码计算服务接口和安全管理接口。密码模块型态上可以是物理模块,也可以是软件模块
或混合模块,应符合GB/T 37092中规定的安全要求。
操作人员身份凭证用于用户在PLC控制器、工程师站、操作员站和数据服务站上的登录认证。
安全管理服务器是一个后台服务器,和密码模块配合,实现对PLC控制系统的密码安全配置和
管理。
PLC控制系统中,通过嵌入到设备中的密码模块提供 “密码安全管理接口”和“密码安全服务接口”
两个接口,其中“密码安全管理接口”存在于设备和安全管理服务器之间,用于实现密码安全管理;“密码
安全服务接口”存在于设备内部,用于设备内业务应用调用密码安全功能。
6.4 密码应用总体要求
6.4.1 功能要求
PLC控制系统密码应用功能要求如下。
a) PLC控制系统应使用SM2、SM3、SM4和SM9等在GB/T 37092-2018附录C中给出的密码
算法。
b) PLC控制系统应采用分域分状态的安全管理机制,不同应用域间通过密码技术进行隔离并配
置不同的密钥及敏感数据。同一应用域下,针对不同安全生命周期状态使用不同的密码安全
功能。
c) PLC控制系统应具有安全管理服务接口,实现系统中主要设备、应用、人员的注册、身份管理、
密钥配置和密码安全功能配置;实现设备和应用的安全生命周期管理。
d) PLC控制系统中的PLC控制器、操作员站、工程师站等关键设备应采用密码技术进行注册,接
入认证。
e) PLC控制器的设备系统的更新和组态的更新,应采用密码技术进行完整性校验和操作授权
控制。
f) PLC控制系统的工程师站、操作员站和PLC控制器设备间,传递的关键控制命令等应使用密
码技术进行真实性、完整性和抗抵赖性保护。
g) PLC控制系统的工程师站、操作员站、PLC控制器设备间,互联访问应使用密码技术进行接入
认证和通信保护。
h) PLC控制系统中关键设备的操作人员应发放身份凭证,采用密码技术进行登录认证和权限
控制。
6.4.2 性能要求
PLC控制系统密码应用性能要求如下:
a) 增加密码功能后,PLC控制系统运行可靠性无显著下降;
b) PLC控制器中,密码模块应至少支持4个彼此独立的安全通道,每个安全通道的对称算法加
解密速率建议不低于0.5Mb/s;
c) 工程师站、操作员站、数据服务站中,密码模块应至少支持4个彼此独立的安全通道,每个安全
通道的对称算法加解密速率建议不低于0.5Mb/s。
6.5 密码应用基本流程
PLC控制系统密码应用基本流程中,增强要求为可选流程,用户需要增加系统安全性时可选用。
a) 系统处于初始化态:设备注册。
PLC控制器、工程师站、操作员站、数据服务站等各设备首次接入到PLC控制系统时,完成设
备密码安全功能的初始化。
b) 系统处于编程配置态。
1) 设备安全启动
PLC控制器应使用密码技术对应用代码进行完整性校验,实现安全启动。
2) 设备签到与同步
本步骤是增强要求。
PLC控制系统的设备启动后,使用密码技术接入到安全管理服务器,并进行状态和消息同步。
3) 设备系统更新
本步骤是增强要求。
PLC控制系统的设备签到后,如果设备系统环境有更新,设备发起系统环境更新过程,使
用密码技术进行设备系统更新的真实性、完整性校验和操作授权。
4) 用户应用组态开发
用户应用组态包括用户逻辑组态和用户监控组态。
编程人员登录逻辑组态软件,完成用户逻辑组态开发并发布。使用密码技术实现人员安
全登录和用户逻辑组态文件操作权限控制,保证用户逻辑组态文件完整性和真实性。
编程人员登录监控组态软件,完成应用监控组态开发并发布。使用密码技术实现人员登
录和监控组态文件操作权限控制,保证用户监控组态文件完整性和真实性。
5) 用户逻辑组态下装
PLC控制系统运行过程中,可以向PLC控制器下载和安装用户逻辑组态。使用密码技术
保护用户逻辑组态下装过程的真实性、完整性、不可抵赖性和操作授权。
6) 用户逻辑组态个人化
本步骤是增强要求。
PLC控制器的用户逻辑组态安装完成后,首次运行时要求进行个人化设置。使用密码技
术为用户逻辑组态建立独立安全区,配置密钥和敏感数据、安全策略等。
c) 系统处于运行态。
1) PLC控制器运行周期管理
本步骤是增强要求。
PLC控制器运行周期包括了启动、挂起/解挂、锁定/解锁、关闭。使用密码技术保护上述
运行周期管理的切换,保障运行周期状态的完整性。
2) 用户逻辑组态运行周期管理
本步骤是增强要求。
PLC控制器上的用户逻辑组态运行周期包括了启动、挂起/解挂、锁定/解锁、关闭,使用
密码技术保护上述运行周期管理的切换,保障运行周期状态的完整性。
3) 设备间接入和访问
PLC控制系统内PLC控制器、工程师站、操作员站等设备之间的接入和访问,使用密码技
术实现接入认证和访问控制,完成安全通道的建立和数据传输保密。
d) 系统处于注销态:无。
7 PLC控制器密码应用要求
7.1 密码应用功能组成
PLC控制器包括芯片、操作系统及运行环境、PLC控制功能模块和密码模块。PLC控制功能模块
用于运行用户逻辑组态,实现业务控制流程;密码模块用于存储密钥等敏感数据、提供密码安全服务以
及和后台安全管理服务器的交互。PLC控制器密码应用功能组成如图5所示。
图5 PLC控制器密码应用功能组成
7.2 密码应用要求
7.2.1 初始化态
设备注册是指PLC控制器在首次接入到PLC控制系统时,完成设备安全初始化的过程。
a) PLC控制器设备注册前应具备如下预置信息:
1) PLC控制器应配置设备系统域,由该域存储和使用设备注册相关密钥和敏感数据;
2) PLC控制器应具有唯一标识,且标识不可被更改;
3) PLC控制器应具有和该标识绑定的初始化密钥。
b) PLC控制器设备注册中密码应用如下:
1) PLC控制器使用初始化密钥,和安全管理服务器完成双向认证,建立安全通道;
2) PLC控制器产生新的密钥对,由安全管理服务器发放设备证书或其他身份证明;
3) PLC控制器在注册完成前,只能执行注册功能,其他功能禁止使用;
4) 注册完成后,PLC控制器应修改其安全状态为编程配置态。
7.2.2 编程配置态
7.2.2.1 设备系统更新
本条是增强要求。
设备系统更新是PLC控制器中的底层运行环境(如驱动、运行库、组态运行环境)更新的过程。设
备系统更新可以采用在线方式或离线方式。
a) PLC控制器设备系统更新前应具备如下预置信息:
1) PLC控制器应配置设备系统域,由该域存储和使用设备系统更新相关密钥和敏感数据;
2) PLC控制器已经完成设备注册。
b) PLC控制器设备系统更新中密码应用如下:
1) PLC控制器发起设备系统更新;安全管理服务器收到申请后,生成下装授权码;准备好下
装包并对下装包签名;
2) 如果使用在线方式,PLC控制器和安全管理服务器完成基于证书或其他身份证明的双向
认证,建立安全通道,然后传输下装授权码和下装包到PLC控制器;如果使用离线方式,
安全管理服务器加密下装授权码和下装包,存储到载体中,离线传递到PLC控制器;
3) PLC控制器验证下装授权码,通过后接收下装包。接收过程中对下装包进行完整性度
量,并验证下装包签名;验证通过后,设备系统完成更新。
7.2.2.2 用户逻辑组态下装
用户逻辑组态下装是PLC控制器获取并安装用户逻辑组态的过程。用户逻辑组态下装可以是在
线方式或离线方式。
a) PLC控制器用户逻辑组态下装前应具备如下预置信息:
1) PLC控制器应配置用户应用域,由该域存储和使用用户逻辑组态下装相关密钥和敏感数据;
2) PLC控制器已经完成设备注册。
b) PLC控制器用户逻辑组态下装中密码应用如下:
1) 安全管理服务器生成下装授权码,准备好用户逻辑组态下装包并签名;
2) 如果使用在线方式,PLC控制器和安全管理服务器完成基于证书或其他身份证明的双向
认证,建立安全通道,然后传输下装授权码和下装包到PLC控制器;如果使用离线方式,
安全管理服务器加密下装授权码和下装包,存储到载体中,离线传递到PLC控制器;
3) PLC控制器验证下装授权码,通过后开始接收下装包。接收过程中对下装包进行完整性
度量,并验证下装包签名;验证通过后,安装用户逻辑组态。
7.2.2.3 用户逻辑组态个人化
本条是增强要求。
用户逻辑组态个人化是对用户逻辑组态进行基本数据和基本配置初始化的过程。用户逻辑组态个
人化可以是在线方式或离线方式。
a) PLC控制器用户逻辑组态个人化前应具备如下预置信息:
1) PLC控制器应配置用户应用域,由该域存储和使用用户逻辑组态个人化相关密钥和敏感
数据;
2) 用户逻辑组态具有唯一标识。
b) PLC控制器用户逻辑组态个人化中密码应用如下:
1) 安全管理服务器生成下装授权码,准备好用户逻辑组态个人化数据包并签名;
2) 如果使用在线方式,PLC控制器和安全管理服务器完成基于证书或其他身份证明的双向
认证,建立安全通道,然后传输下装授权码和数据包到PLC控制器;如果使用离线方式,
安全管理服务器加密下装授权码和数据包,存储到载体中,离线传递到PLC控制器;
3) PLC控制器接收安全管理服务器下发的配置数据,写入到用户逻辑组态中;
4) 用户逻辑组态在个人化完成前,只能执行个人化功能,其他功能禁止使用;
5) 个人化完成后,PLC控制器应修改用户逻辑组态的安全状态。
7.2.2.4 切换到运行态并启用用户逻辑组态
PLC控制器完成系统更新或用户逻辑组态下装后,在用户现场干预条件下切换到运行态,PLC控
制器将使用更新后的用户逻辑组态。
PLC控制器切换到运行态并启用用户逻辑组态中密码应用如下:PLC控制器在用户现场干预的条
件下,切换到运行态,PLC控制器应修改设备安全生命周期状态。
7.2.3 运行态
7.2.3.1 安全启动
安全启动是PLC控制器保证启动代码和启动序列完整性,并按照预定步骤完成启动的过程。
a) PLC控制器安全启动前应具备如下预置信息:
1) PLC控制器应配置设备系统域,由该域存储和使用安全启动相关密钥和敏感数据;
2) PLC控制器已完成设备注册。
b) PLC控制器安全启动中密码应用如下:PLC控制器验证启动代码的完整性。
7.2.3.2 设备签到
本条是增强要求。
设备签到是PLC控制器完成安全启动后,接入到安全管理服务器并同步状态的过程。
a) PLC控制器在设备签到前应具备如下预置信息:
1) PLC控制器应配置设备系统域,由该域存储和使用设备签到相关密钥和敏感数据;
2) PLC控制器已安全启动。
b) PLC控制器设备签到密码应用如下:
1) PLC控制器和安全管理服务器完成基于证书或其他身份证明的双向认证,建立安全通道;
2) PLC控制器向安全管理服务器同步安全事件记录。
7.2.3.3 用户逻辑组态运行
用户逻辑组态运行是PLC控制器中逻辑组态按照预定控制流程自主执行的过程。
a) PLC控制器在用户逻辑组态运行前应具备如下预置信息:PLC控制器应配置用户应用域,由
该域存储和使用用户逻辑组态相关密钥和敏感数据。
b) PLC控制器用户逻辑组态运行密码应用如下:
1) PLC控制器扫描并校验用户逻辑组态,验证其完整性;
2) PLC控制器启动用户逻辑组态。
7.2.3.4 上位机设备间交互
上位机设备间交互是PLC控制器的用户逻辑组态和工程师站、操作员站、数据服务站中的上位机
应用之间的接入和交互过程。
a) PLC控制器和上位机设备间交互前应具备如下预置信息:
1) PLC控制器应配置用户应用域,由该域存储和使用上位机设备间交互相关密钥和敏感
数据;
2) PLC控制器、工程师站、操作员站、数据服务站已经接入到PLC控制系统中。
b) PLC控制器上位机设备间交互密码应用如下:
1) PLC控制器和上位机之间完成基于证书或其他身份证明的双向认证,建立安全通道;
PLC控制器和不同上位机之间,和同一上位机的不同的应用之间,应使用不同的密钥建
立独立隔离的安全通道;
2) PLC控制器和上位机之间传输的信息应由安全通道保证完整性和机密性;
3) 上位机下发的关键命令应签名,PLC控制器应验证关键命令的签名,验证通过后执行。
7.2.3.5 PLC控制器设备间交互
PLC控制器设备间交互是PLC控制器和其他PLC控制器用户逻辑组态之间的接入和交互过程。
a) PLC控制器设备间交互前应具备如下预置信息:
1) 每个PLC控制器应配置用户应用域,由该域存储和使用上位机设备间交互相关密钥和敏
感数据;
2) 每个PLC控制器已经接入到PLC控制系统中。
b) PLC控制器设备间交互密码应用如下:
1) PLC控制器和其他P......
|