ofd版式文档技术规范(六)

时间:2021-10-29   访问量:10402

 加密流程

根据加密方案进行文件加密。流程如下:

a) 调用密钥产生服务生成用于文件加密的对称密钥;

b) 根据加密方案,使用文件加密对称密钥调用对称密码算法加密文件;

c) 根据加密方案,对文件加密对称密钥进行加密;

d) 如果电子文件访问者为多人,则重复步骤c);

e) 按表2所示的数据结构组装加密信息,生成加密描述文件。

解密流程

根据加密方案进行文件解密。流程如下:

a) 根据电子文件访问者身份从加密描述文件的加密信息中获取其加密后的文件加密对称密钥;

b) 根据加密方案,对文件加密对称密钥进行解密

c) 根据加密方案,调用对称算法和文件加密对称密钥解密文件。

 OFD完整性保护协议

 协议描述

OFD完整性协议用于保证OFD文档自身的完整性。通过OFD完整性保护文件,可以检测OFD是否被恶意篡改或非法夹带。

 签名算法要求

OFD的签名要求如下

a) OFD的签名算法应采用国家密码管理主管部门的要求;

b) 如果签名算法SM2,遵循GB/T 32918和GB/T 3527;如果杂凑算法采用SM3算法,遵循GB/T 32905

 数字证书要求

数字证书是用于OFD数字签名的数字证书,基于SM2算法的证书和CRL格式要求遵循GB/T 20518。

 时间戳要求

OFD完整性对时间戳的要求如下

a) OFD签名可包含时间戳、也可不包含时间戳

b) OFD中包含时间戳签名,签名算法采用SM2时,数字签名格式遵循GB/T 35275

c) 带时间戳OFD签名,时间戳格式和使用规范遵循GB/T 20520,时间戳数据应放在PKCS#7数据格式定义的unauthenticatedAttributes中

 数据格式

 OFD的完整性保护信息采用XML格式存储,完整性保护描述文件数据格式如图5所示

wps5.jpg 

5  完整性保护描述文件数据格式

完整性保护描述文件对应元素说明见表3。

3  完整性保护描述文件属性

名称

类型

说明

用法

DocEntries


根节点

必选

-ID

xs:ID

序号

必选

-CreatorName

xs:string

OFD文档创建人/创建单位

可选

-Version

xs:string

版本

可选

-CreationDate

xs:date

创建时间

可选

--Provider


记录本次签名的提供者信息

必选

---ProviderName

xs:string

创建签名时所用的组件的提供者

必选

---Company

xs:string

创建签名时所用的组件的制造商

可选

---Version

xs:string

创建签名时所用的组件的版本

可选

--SignatureDateTime

xs:string

签名时间 

必选

--SignatureMethod

xs:string

签名方案标识

必选

-FileList



必选

--File



必选

---ID

xs:ID

文件标识

必选

---FileLoc

xs:string

包内文件路径

必选

---CheckValue

xs:base64Binary

文件杂凑值

必选

SignedValueLoc

xs:string

完整性保护文件签名值存放路径。签名值使用PKCS7标准

可选

 签名流程

OFD完整性保护签名流程如下:

a) 确认文件包内的所有文件;

b) 根据签名方案,调用杂凑算法分别计算每个文件的杂凑值;

c) 根据3中所示的数据结构,组装签名信息;

d) 根据签名方案,使用版式文件合成签名私钥对签名信息的杂凑值进行数字签名;

e) 根据表3中所示的数据结构,生成完整性保护描述文件。

 验签流程

OFD的数字对时间戳的要求如下:

a) 读取完整性保护描述文件

b) 根据签名方案,调用杂凑算法计算完整性保护数据信息的杂凑值;

c) 读取完整性保护文件签名值,进行签名验证;

d) 读取文件包内的文件,并验证文件杂凑值