App 备案需要的公钥、SHA-1 和 MD5,到底是什么?

填写 App 备案资料时,开发者经常会遇到几个看起来很“密码学”的字段:公钥、SHA-1 指纹和 MD5 值。

它们并不是应用名称、版本号那样的业务信息,而是从签名证书或安装包中提取出来的技术标识。因为平时很少手工查看,第一次准备备案材料时容易不知道从哪里获取。

先理解签名的作用

移动应用在发布前需要进行数字签名。

签名可以帮助系统判断安装包由谁发布,以及文件在签名后是否被修改。Android 常见的签名载体包括 JKS 和 Keystore,iOS 发布过程中则会接触证书、私钥、P12 和描述文件。

备案页面要求填写的技术信息,通常来自这些签名材料,而不是由开发者随意创建一串字符。

公钥是什么

数字签名通常涉及一对密钥:

  • 私钥由开发者妥善保管,用于完成签名;
  • 公钥可以用于验证签名结果。

公钥可以公开,但私钥不能公开。两者名字相似,安全级别完全不同。

准备备案资料时,如果平台要求的是公钥,应从证书中导出公开部分,不要上传或粘贴私钥内容。

SHA-1 指纹是什么

SHA-1 指纹可以理解为对证书内容计算后得到的一段摘要。

它便于平台识别某张证书。即使两张证书用于同一个应用,只要证书内容不同,计算出的指纹也可能不同。

实际填写时要注意格式要求。有的平台需要带冒号的大写形式,有的平台接受连续字符串。复制后应检查是否多了空格、换行或不可见字符。

MD5 又是什么

MD5 同样属于摘要信息。在备案或第三方平台配置中,它可能用于标识证书或文件。

这里最容易产生的误解是:看到“MD5”就随便对安装包计算一次。实际上,页面要求的可能是证书 MD5,也可能是安装包文件 MD5,两者不是同一个值。

填写前应先确认三个问题:

  1. 对哪个对象计算;
  2. 需要什么输出格式;
  3. 是否区分大小写或分隔符。

常见获取方式

本地命令行

熟悉开发工具链的团队可以使用系统命令或证书工具读取信息。

这种方式可控性高,但需要明确文件格式、密码和命令参数。不同系统的工具名称与输出格式也可能不同,复制时要认准对应字段。

开发环境或构建平台

部分 IDE、云构建和签名管理服务会直接展示证书指纹。优点是不用额外执行命令,缺点是要确认显示的证书与正式发布使用的是同一张。

在线提取工具

不方便配置本地环境时,也可以通过证书信息提取工具读取公开信息。例如初雪云提供了面向 App 备案的公钥、SHA-1 和 MD5 获取功能,适合需要从 JKS、Keystore 或 P12 中快速核对字段的场景。

使用在线方式时,应先了解文件如何处理、是否会保留,以及操作完成后能否删除。证书密码、P12 和签名文件都属于敏感发布资产,便利不能替代安全判断。

填写前的核对清单

证书更新后要重新检查

公钥和指纹与具体证书相关。

如果应用更换了签名证书,原来保存的 SHA-1 或 MD5 信息可能不再对应当前版本。团队应记录备案时使用的证书,并在证书更新、应用迁移或主体变更后重新核对相关资料。

总结

公钥、SHA-1 和 MD5 并不神秘,它们都是识别签名材料的技术信息。

真正重要的是确认“从哪张证书、针对哪个对象、按什么格式”获取。把这三个问题弄清楚,再选择命令行、构建平台或在线工具,备案资料就不容易因为复制错误或证书混用而反复修改。

posted @ 2026-08-06 16:49  初雪云  阅读(32)  评论(0)    收藏  举报