HarmonyOS鸿蒙Next中为什么不同应用证书公钥和md5是一样的?

HarmonyOS鸿蒙Next中为什么不同应用证书公钥和md5是一样的?

在申请上架需要公钥和md5,我申请2个应用,但是2个应用下载的证书里面的签名和公钥是一模一样的,现在就包名不一样了。

明明是2个不同的CSR文件生成的,怎么会证书里面的签名一样?不知道我是在哪里出错了? cke_8907.png


更多关于HarmonyOS鸿蒙Next中为什么不同应用证书公钥和md5是一样的?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

用文本编辑打开cer文件,删除完根证书、中间证书内容保存并关闭文件后,点击文件,使其处于选中状态,直接空格,就可以查看md5签名、sha1、sha256的值了。

【背景知识】

证书是为HarmonyOS应用/元服务配置签名信息的数字证书,可保障软件代码完整性和发布者身份真实性。证书格式为.cer,包含公钥、证书指纹(即证书的摘要信息)等信息。

【解决方案】

获取公钥和签名指纹详细流程可参照官网链接:问题12:HarmonyOS应用/元服务如何获取公钥和签名信息,或论坛链接:HarmonyOS备案小妙招 轻松获取公钥和签名指纹

更多关于HarmonyOS鸿蒙Next中为什么不同应用证书公钥和md5是一样的?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


你这两个CSR文件是不是用同一个私钥生成的?

在HarmonyOS鸿蒙Next中,不同应用证书公钥和MD5相同可能是由于使用了相同的开发证书或调试证书。华为提供统一的调试证书用于开发阶段测试,导致多个应用签名信息一致。正式发布时应使用独立的应用证书,此时公钥和MD5将不同。这是开发环境的正常现象,不影响功能,但正式上架需更换为唯一证书。

在HarmonyOS Next中,不同应用使用相同证书公钥和MD5是正常现象。这是因为:

  1. 同一开发者账号下的应用证书默认会使用相同的密钥对,这是华为开发者平台的设计机制。公钥和MD5相同表明这些证书都源自同一个开发者身份。

  2. 证书的区分主要依靠包名(bundleName)而非公钥。只要包名不同,即使公钥相同,系统也能正确识别为不同应用。

  3. 这种设计有利于应用管理:

  • 方便开发者管理多个应用
  • 便于应用间共享数据(如Account Kit)
  • 简化证书更新流程

建议检查:

  1. 确认两个应用确实使用了不同的包名
  2. 检查应用的签名配置是否正确
  3. 确保上传的是通过不同CSR生成的不同证书文件

如果包名不同且功能正常,则无需担心公钥相同的问题。

回到顶部