DLMS/COSEM中的信息安全:安全密钥(中)续1

2.4证书和证书扩展配置文件

2.4.1 概述

2.4规定了使用公钥密钥加密的DLMS/COSEM系统所需要的证书和认证扩展配置文件。所有证书应具有X.509版本3证书所指定的结构。对于展示证书和证书扩展的字段的表,应用以下符号:

------m(强制性):填写字段;

------o(可选):字段是可选的;

------x(不使用):不得使用字段。

每个证书扩展被指定为关键或非关键。如果证书使用系统遇到无法识别的关键扩展或包含无法处理的信息的关键扩展,则该证书使用系统将拒绝该证书。如果非关键扩展不被识别,它可能会被忽略,但如果被识别,将被处理。

本文件规定了最低要求。具体项目的配套规范可以规定更严格的要求,例如,本文档中指定的字段可选变为强制的,或将指定为非关键的扩展名指定为关键。

2.4.2 X.509 v3证书

X.509证书是三个必填字段的SEQUENCE,如表13所示。

tbsCertificate字段包含主体和发行者的名称,与主题相连接的公钥,有效期和其他相关信息。tbsCertificate的字段总结在表14中。tbsCertificate通常包括扩展;这些在2.4.4中有描述。

signatureAlgrithm字段包含CA用于签署此证书的加密算法的标识符。

Groovy 复制代码
AlgorithmIdentifier::= SEQUENCE{
algorithm OBJECT IDENTIFIER
parameters ANY DEFINED BY algorithm OPTIONAL
}

DLMS/COSEM中使用的两种算法标识符是:

------在安全组件1的情况下,ecdsa-with-SHA256,OID 1.2.840.100045.4.3.2;

------在安全组件2的情况下,ecdsa-with-SHA384,OID 1.2.840.100045.4.3.3;

signatureValue包含在ASN.1 DER编码的tbsCertificate上计算的数字签名。使用ASN.1 DER编码的tbsCertificate作为签名函数的输入。

通过生成此签名,CA将在tbsCertificate字段中证明信息的有效性。特别地,CA证明公钥材料和证书主体之间的绑定。

2.4.3 tbsCertificate

2.4.3.1 综述

tbsCertificate的字段如表14所示。

2.4.3.2 序列号
2.4.3.3 发行者和主题

Issuer字段 标识已签名并颁发证书的实体。Subjuect字段标识与存储在主题公钥字段中的公钥相连接的实体。

2.4.3.4 有效期

证书有效期是CA保证保留关于证书状态的信息的时间间隔。该字段表示为两个日期的SEQUENCE:

------证书有效期开始的日期(notBefore);

------证书有效期结束的日期(noAfter)。

除DLMS/COSEM服务器外,在CA证书、子CA证书和终端实体情况下,notBefore和notAfter应是明确定义的日期。可以为DLMS/COSEM服务器颁发没有过期时间的证书;这种证书在设备的整个使用寿命都可以用。为了表明证书没有明确定义的到期日期,notAfter应该被分配GeneralizedTime值99991231235959Z。

2.4.3.5 SubjectPublicKeyInfo

SubjectPublicKeyInfo字段应具有以下结构:

Groovy 复制代码
SubjectPublicKeyInfo::=SEQUENCE{
Algorithm         AlgorithmIdentifier,
subjectPublicKey  BIT STRING}
算法标识符有以下ASN.1结构定义:
AlgorithmIdentifier::=SEQUENCE{
algorithm         OBJECT IDENTIFIER,
parameters        ANY DEFINED BY algorithm OPTIONAL}
2.4.3.6 主题唯一ID

可以在除服务器证书之外的终端设备证书中可选地使用主题唯一ID。此字段的使用可由具体项目的配套规范来决定。

相关推荐
kinlon.liu13 分钟前
零信任安全架构--持续验证
java·安全·安全架构·mfa·持续验证
NiNg_1_23429 分钟前
使用Docker Compose一键部署
运维·docker·容器
萠哥啥都行34 分钟前
Linux安装Docker以及Docker入门操作
运维·docker·容器
小江湖199440 分钟前
元数据保护者,Caesium压缩不丢重要信息
运维·学习·软件需求·改行学it
gopher95111 小时前
linux驱动开发-中断子系统
linux·运维·驱动开发
dot.Net安全矩阵1 小时前
.NET内网实战:通过命令行解密Web.config
前端·学习·安全·web安全·矩阵·.net
河南宽信李工1503806 16861 小时前
测绘航空摄影专项资质在洛阳市的获取流程
服务器
sec0nd_1 小时前
1网络安全的基本概念
网络·安全·web安全
吃面不喝汤662 小时前
如何配置和使用自己的私有 Docker Registry
运维·docker·容器
AORO_BEIDOU2 小时前
防爆手机+鸿蒙系统,遨游通讯筑牢工业安全基石
5g·安全·智能手机·信息与通信·harmonyos