签名验签错误
======

**问题现象**

打包签名提示“**Verify Signature failed**”错误。

**问题原因**

签名使用密钥库文件内的私钥与证书不匹配，导致工具验证签名失败。

**错误场景**

1、打包签名场景，签名时使用的证书和密钥不一致，证书文件中包含的公钥与签名密钥库文件内keyalias对应的私钥不匹配。

2、验证包完整性场景，已签名的HAP包被篡改。

**解决方案**

场景1：检查配置的证书文件和密钥库文件是否匹配，检查步骤如下：

1、查看签名配置。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/0c/v3/ntKYS8KhQzKCc2za8SZmPA/zh-cn_image_0000002342678238.png?HW-CC-KV=V1&HW-CC-Date=20260612T074820Z&HW-CC-Expire=86400&HW-CC-Sign=62E0AE20A14269E60055957C0572BA1DDE755B65C340A1E1D6ECB0D353915F0F)

2、查看密钥库文件签名密钥关联的证书公钥信息（SubjectKeyIdentifier），示例：keytool -list -v -keystore ${Store file} -storepass ${Store password} -alias ${Key alias}。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/fa/v3/9QZQME-zTHyUtT0z9z21UA/zh-cn_image_0000002342518438.png?HW-CC-KV=V1&HW-CC-Date=20260612T074820Z&HW-CC-Expire=86400&HW-CC-Sign=07C76260ED013C989E35ABCFFD7F7F9D23FCA8191F9D600A448511731E9DADFF)

3、查看配置的证书文件中公钥信息，应用市场申请的证书，发布者是CN=Huawei CBG Developer Relations CA G2, OU=Huawei CBG, O=Huawei, C=CN，示例：keytool -printcert -file ${Certpath file}。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/eb/v3/j22d1dlHRBWfnwAExVm8TA/zh-cn_image_0000002376516261.png?HW-CC-KV=V1&HW-CC-Date=20260612T074820Z&HW-CC-Expire=86400&HW-CC-Sign=C29F49942FFAA84FE3BC211B62F7F415F00C5E50E8C4A9EE43F57C56F423D051)

步骤2与步骤3中的公钥信息（SubjectKeyIdentifier）不一致，则配置的证书文件和密钥库文件不匹配。

场景2：重新打包签名。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/7a/v3/TUX1G2kFToOu8wrE-3DYuA/zh-cn_image_0000002376396381.png?HW-CC-KV=V1&HW-CC-Date=20260612T074820Z&HW-CC-Expire=86400&HW-CC-Sign=E9370FCBB59B68252F579A8D4E47D03A003B131273A3BF8464ABC7F531BA4511)