更新时间:2025-04-22 GMT+08:00

完整性校验

操作说明

对下载的SDK安装包进行完整性校验,判断下载过程是否存在篡改和丢包现象。

数字签名CMS文件验签操作步骤

  1. 参考下载SDK安装包,下载SDK安装包至本地。
  2. 从华为support官网下载根CA证书和4个吊销证书。

    文件如下所示:
    • CA文件:Huawei Software Integrity Protection Root CA.der
    • CRL文件:HuaweiRootCA.crl、HuaweiCodeSigningCA.crl、HuaweiCodeSigningCA 2.crl、HuaweiCodeSigningCA 3.crl

  3. 转换CA证书和CRL文件的格式,从DER到PEM。

    CRL文件:

    openssl crl -inform DER -in "HuaweiRootCA.crl" -out HuaweiRootCaCrl.pem
    openssl crl -inform DER -in "HuaweiCodeSigningCA 3.crl" -out HuaweiCodeSigningCA3.pem
    openssl crl -inform DER -in "HuaweiCodeSigningCA 2.crl" -out HuaweiCodeSigningCA2.pem
    openssl crl -inform DER -in HuaweiCodeSigningCA.crl -out HuaweiCodeSigningCA.pem

    CA文件:

    openssl x509 -inform DER -in "Huawei Software Integrity Protection Root CA.der" -out HuaweiRootCA.pem

  4. 使用记事本依次打开下述4个文件,将文件内容依次复制至HuaweiRootCA.pem文件内容的后面。

    • HuaweiRootCaCrl.pem
    • HuaweiCodeSigningCA3.pem
    • HuaweiCodeSigningCA2.pem
    • HuaweiCodeSigningCA.pem

  5. 执行下述命令,进行CMS验签。

    openssl cms -verify -inform DER -crl_check_all -in hmwsdk-win-demo-win32.zip.cms -content hmwsdk-win-demo-win32.zip -CAfile HuaweiRootCA.pem -out cmsVerifiedData -binary -purpose any -certsout tmpCertChain.pem

    命令执行结果示例,如下所示,说明验签成功。

    CMS Verification successful