GB/T 38540-2020 信息安全技术 安全电子签章密码技术规范
- 文档部分内容预览:
GB/T 385402020
其中: ID:固定值“ES” version:电子印章数据结构版本号,本标准设定数值为4,代表当前版本为v4。 Vid:电子印章厂商标识,在互联互通时,用于识别不同的软件厂商实现
6.1.2.3印章标识
出口产品标准6.1.2.4印章属性
印章属性由印章类型、印章名称、签章者证书信息类型、签章者证书信息列表、制作时间、有效期 寸间、有效期终止时间等部分组成,其结构如图4所示
图4印章属性的数据结构示意图
GB/T38540—2020
Cert符合GB/T20518中Certificate定义,按DER编码格式存放。 CertDigestObj ::=SEQUENCE type ObjType, 自定义类型 value CertDigestValue 证书杂凑值 ObjType :: =PrintableString CertDigestValue::=OCTET STRING
6.1.2.5印章图像数据
图5印章图像的数据结构示意图
6. 1.2.6自定义数据
自定义数据包含一系列自定义属性字段,可用于支持电子印章扩展特性,其ASN.1定义为: ExtensionDatas::=SEQUENCESIZE(O..MAX)OF ExtData ExtData::=SEQUENCE extnID OBJECT IDENTIFIER, 一自定义扩展字段标识 critical BOOLEANDEFAULT FALSE. 自定义扩展字段是否关键 extnValueOCTET STRING 自定义扩展字段数据值
cert:对电子印章进行签名的制章者的数字证书,应符合GB/T20518中Certificate定义,按DER 编码格式存放
6.1.4签名算法标识
nAlgID:代表签名算法OID标识,应符合GB/T
GB/T 385402020
示例:基于SM2算法和SM3算法的签名OID为1.2.156.10197.1.501
6.2电子印章生成流程
电子印章生成流程如下: a)按6.1.2定义的数据格式,将印章头、印章标识、印章属性、印章图像数据、自定义数据等数据 按SEQUENCE方式组成印章信息; b 根据签名算法标识signAlgID,对上述步骤a)的印章信息域进行数字签名运算,形成签名值; 将上述步骤a)和b)的数据以及制章者证书、签名算法标识组成6.1.1定义的电子印章数据 格式。
6.3电子印章验证流程
电子印章验证流程如下: 验证电子印章数据格式的正确性 按照电子印章格式解析电子印章,验证是否符合6.1定义的电子印章数据格式。 如果电子印章数据格式不正确,则验证失败,返回错误代码并退出验证流程。 验证电子印章签名值是否正确 根据印章信息、制章者证书、签名算法标识来验证电子印章中的签名值是否正确 如果电子印章签名验证失败,返回错误代码并退出验证流程。 C) 验证电子印章制章者证书的有效性 验证制章者证书的有效性,验证项至少包括:制章者证书信任链验证、制章者证书有效期验证 制章者证书是否被撤销、密钥用法是否正确 如果制章者证书验证失败,返回错误代码并退出验证流程, 验证电子印章的有效期 根据印章属性中的印章有效期起始时间和有效期终止时间,验证电子印章是否过期。 如果电子印章已过期,则验证失败,返回错误代码并退出验证流程。 如果上述步骤都验证成功,则电子印章验证正确有效,可正常退出验证流程
7.1.1签章数据结构
电子签章数据由签章信息、签章者证书、签名算法标识、签名值、时间戳等组成。 电子签章数据结构如图6所示
图6电子签章数据结构示意图
GB/T38540—2020
图7签章信息的数据结构示意图
7.1.4签名算法标识
signatureAlgID:签名算法标识,应符合GB/ 签章者证书中的算法声明保持 一致。 示例:基于SM2算法和SM3算法的数字签名OID为1.2.156.10197.1.501
GB/T38540—2020
的算法应与签名算法保持协调,如果签名算法是SM2,则杂凑算法应采用SM3算法。 如果签名算法使用SM2,应符合GB/T35276的规定
timeStamp:对签名值的时间戳,应符合GB/
7.2电子签章生成流程
电子签章生成流程如下: a)准备电子印章,并验证电子印章的正确性和有效性,具体步骤如下: 1)验证电子印章。按照6.3验证电子印章的正确性和有效性。 2)选择拟进行电子签章的签章者证书,并验证该证书的有效性。验证项至少包括:证书信任 链、证书有效期验证、证书是否被撤销、密钥用法是否正确。 根据电子印章中的签章者证书列表类型,提取电子印章中的签章者证书信息列表,并用来 判断步骤2)选择的签章者证书是否在列表中。如果证书信息类型值为1,则直接比对证 书;如果值为2,则计算步骤2)中的证书的杂凑再进行比对: 一如果拟签章者在电子印章的签章者列表中,则进行后续流程; 如果比对失败,返回错误代码并退出签章流程。根据错误代码进一步判断,如果比对 失败是因为签章者证书执行更新、重签发等操作而导致,程序应提示重新制作印章。 b)对原文进行电子签章,具体步骤如下: 1)按照propertyInfo中的签名保护范围来准备待签名原文; 2 将待签名原文数据进行杂凑运算,形成原文杂凑值; 按照7.1.2电子签章数据格式组成签章信息; 4) 签章者对签章信息进行数字签名,生成签名值; 如果需要加盖时间戳,则利用上述签名值产生相应的时间戳; 将步骤3)、4)、5)以及签章者信息、签名算法标识组成7.1.1定义的电子签章数据
7.3电子签章验证流程
验证电子签章数据格式的正确性 1)根据7.1数据格式来解析电子签章数据 2) 若解析失败,则返回错误代码并退出验证流程 3) 按照6.3流程来验证上述电子签章中的电子印章的正确性, 如果电子签章或电子印章数据格式不正确,则返回错误代码并退出验证流程。 b) 验证电子签章签名值是否正确 1)根据步骤a)解析所得的签章信息、签章者证书和签名算法标识,验证电子签章签名值 2)如果签名值验证失败,则返回错误代码并退出验证流程 C 验证签章者证书与电子印章的匹配性 1 提取电子印章中的签章者证书信息类型与签章者证书信息列表。 2 如果上述签章者证书信息类型值为1,则需要比对数字证书。将步骤a)解析所得的签 者证书与电子印章中签章者证书信息列表内的证书逐一作二进制比对,若均比对失败, 返回错误代码并退出验证流程。 3) 如果上述签章者证书信息类型值为2,则需要比对证书的杂凑值。先计算步骤a)解析 得的签章者证书的杂凑值,再与电子印章中签章者证书信息列表内的杂凑值逐一作比双
建筑施工图集GB/T38540—2020
石比对天数,则返回 天码开退出验证流性 验证电子印章的有效性 1)从签章信息中提取电子印章,按照6.3电子印章验证流程验证印章的有效性,若验证失 败,需结合签章信息中的签章时间综合判断。 2) 若电子印章失效因制章者证书失效导致,且在签章时间点上制章者证书也是无效的,则应 记录为提示信息。 3) 若电子印章失效因过期或被撤销所导致,且在签章时间不在电子印章有效期内,或当时电 子印章不在正常状态,则返回错误代码并退出验证流程。 4) 验证签章时刻,电子印章是否处于正常状态,如不处于正常状态,则返回错误代码并退出 验证流程。
验证电子印章的有效性 1)从签章信息中提取电子印章,按照6.3电子印章验证流程验证印章的有效性,若验证失 败,需结合签章信息中的签章时间综合判断。 2 若电子印章失效因制章者证书失效导致,且在签章时间点上制章者证书也是无效的,则应 记录为提示信息 3)若电子印章失效因过期或被撤销所导致,且在签章时间不在电子印章有效期内,或当时电 子印章不在正常状态,则返回错误代码并退出验证流程。 4)验证签章时刻,电子印章是否处于正常状态,如不处于正常状态,则返回错误代码并退出 验证流程。 验证签章者证书有效性 1 从电子签章数据获得签章者证书,验证签章者证书有效性,验证项至少包括:证书信任链 验证、证书有效期验证、证书是否被撤销、密钥用法是否正确。 2) 若签章者证书有效性验证失败且是由于证书信任链验证或密钥用法不正确导致的,则返 回错误代码并退出验证流程。 3)若签章者证书有效性验证失败且是由于证书过期或证书状态已撤销导致的,则接步骤f) 进一步判断。 验证签章时间的有效性 1 比对签章者证书有效期和签章时间,如果签章时间不在签章者证书有效期内,则签章无 效,验证失败,返回错误代码并退出验证流程。 2 如果签章时间处于签章者证书有效期内,则检查对应的撤销列表,如果证书在签章时间处 于失效状态,则签章无效,验证失败,返回错误代码并退出验证流程。 g)验证原文杂漆 1)从电子签章数据中提取propertyInfo数据,从propertyInfo中提取签名保护范围提取待 验证原文。 2)将待验证原文数据进行杂凑运算,形成待验证原文杂凑值。 3 从电子签章数据中提取原文杂凑值,与上述待验证原文杂凑值进行二进制比对,如果比对 失败,则电子签章验证失败,返回错误代码并退出验证流程。 验证时间戳的有效性 1)如果电子签章数据中包含时间戳,则应进行时间戳的有效性验证。 2) 若时间截验证不通过,则签章无效,返回错误代码并退出验证流程 3) 比对时间戳中的时间与签章时间,若签章时间晚于时间戳中的时间,则签章无效,返回错 误代码并退出验证流程。 4)按照步骤f)验证时间戳中时间的有效性,若不通过,返回错误代码并退出验证流程。 如果上述各步骤验证均有效,那么电子签章验证结果为有效,可正常退出验证流程
)验证签章者证书有效性
1)从电子签章数据获得签章者证书,验证签章者证书有效性,验证项至少包括:证书信 验证、证书有效期验证、证书是否被撤销、密钥用法是否正确。 2 若签章者证书有效性验证失败且是由于证书信任链验证或密钥用法不正确导致的,贝 回错误代码并退出验证流程。 3)若签章者证书有效性验证失败且是由于证书过期或证书状态已撤销导致的,则按步驱 进一步判断,
比对签章者证书有效期和签章时间,如果签章时间不在签章者证书有效期内,则签章无 效,验证失败,返回错误代码并退出验证流程。 2 如果签章时间处于签章者证书有效期内,则检查对应的撤销列表,如果证书在签章时间处 于失效状态,则签章无效,验证失败,返回错误代码并退出验证流程。 验证原文杂漆 1)从电子签章数据中提取propertyInfo数据,从propertyInfo中提取签名保护范围提取待 验证原文。 2)将待验证原文数据进行杂凑运算,形成待验证原文杂值, 3 从电子签章数据中提取原文杂凑值,与上述待验证原文杂凑值进行二进制比对,如果比对 失败,则电子签章验证失败,返回错误代码并退出验证流程。 1 验证时间戳的有效性 1 如果电子签章数据中包含时间截,则应进行时间戳的有效性验证。 2) 若时间戳验证不通过,则签章无效,返回错误代码并退出验证流程, 比对时间戳中的时间与签章时间,若签章时间晚于时间戳中的时间,则签章无效,返回错 误代码并退出验证流程。 照正时尚
h)验证时间截的有效性
1)如果电子签章数据中包含时间戳,则应进行时间戳的有效性验证。 2) 若时间截验证不通过,则签章无效,返回错误代码并退出验证流程 3 比对时间戳中的时间与签章时间,若签章时间晚于时间截中的时间,则签章无效,返 误代码并退出验证流程。 4)按照步骤f)验证时间戳中时间的有效性建筑技术交底,若不通过,返回错误代码并退出验证流程 可正常退出验证流程
....- 电子标准
- 相关专题: