概述

使用Openssl命令行模拟华为公司签名平台的CMS签名,即执行openssl命令,创建根证书、二级CA签名证书、二级CA时间戳证书、三级签名证书和时间戳证书、证书吊销列表crl,生成用户根证书和吊销列表,并使用cmssign工具合成符合华为公司签名平台的签名,业务流程如图1所示。生产环境下,用户需妥善保管私钥。

使用Openssl生成证书只能用于开发和测试阶段,正式商用发布需要客户构建PKI系统或CA系统(用于管理密钥和证书)。当前提供的签名方式仅做参考,客户可以根据自身情况使用PKI系统并结合CMS格式进行签名,同时客户需要自行管理产生的密钥和证书。

图1 创建CMS签名的业务流程
  1. 生成一级CA根证书,具体操作请参见3
  2. 生成各级签名证书,具体操作请参见47
  3. 生成各级证书的吊销列表文件,具体操作请参见8
  4. 预处理CA根证书生成摘要信息文件usrcert.ini,具体操作请参见9
  5. 将摘要信息文件usrcert.ini发送至华为进行签名,并返回usrcert.ini.cmsusrcert.ini.crl文件,生成用户根证书user.xer,具体操作请参见10
  6. 生成用户吊销列表文件user.crl文件,具体操作请参见11
  7. 使用cmssign工具,生成开放态文件系统CMS签名文件,具体操作请参见生成开放态文件系统CMS签名文件