Keep Alive APK 签名 SHA-256 校验方法
为什么需要校验签名
从网络上下载的 APK 文件可能被二次打包植入恶意代码。校验 APK 的签名证书是判断"这个 APK 是不是官方发布的"的可靠方法——官方所有 Release(包括 Lite 版本)都用同一张证书签名。
Keep Alive 作者公开了完整的签名证书信息,任何人都可以独立验证。
官方证书信息
| 项目 | 值 |
|---|---|
| 证书 SHA-256 摘要 | c45567b712d6fd7979df14f66f8a5c25859ee223e1f07e915a7eee201c14baef |
| 适用范围 | GitHub Releases 上的所有 APK(完整版 + Lite 版) |
| 不适用范围 | Google Play 通过 Play App Signing 发布的版本(签名可能不同) |
校验方法
方法一:用 apksigner(推荐)
apksigner 是 Android SDK Build Tools 自带的工具,官方推荐:
apksigner verify --print-certs KeepAlive.apk
输出里找 SHA-256 那一行,对照上面的官方值。
方法二:用 keytool
keytool 是 JDK 自带的,先从 APK 里提取 CERT.RSA:
unzip KeepAlive.apk META-INF/CERT.RSA
keytool -printcert -jarfile META-INF/CERT.RSA
输出里的 SHA-256 指纹就是证书摘要。
方法三:手机上的校验工具
如果你只有手机,没有电脑:
- 安装 APK Signer Verifier 等应用商店里的校验工具
- 或直接在安装后到系统设置 → 应用 → Keep Alive → 应用信息里查看签名信息(部分手机支持)
Google Play 版本的特殊情况
Keep Alive 同时在 Google Play 上发布,但 Google Play 会对应用进行 Play App Signing——Google Play 用自己的证书重新签名 APK,所以 Play 下载的版本签名可能和 GitHub 上的不一样。
这时候不能用 GitHub 证书来校验 Play 版本,反过来也一样。关键原则:
- GitHub APK → 用 GitHub 证书校验
- Play APK → 直接信任 Play 渠道(或在 Play 的应用详情页看开发者信息)
签名不一致会导致什么问题
如果你手机里已经装了某个版本的 Keep Alive,想装另一个渠道的版本(比如 Play → GitHub),系统会提示"安装包与已安装应用签名不一致,无法覆盖安装"——正常现象,不是 APK 有问题。
解决方法:先卸载旧版再装新版。注意 Keep Alive 没有云端备份,卸载会清空所有配置。
签名不一致的完整排查,见 签名不一致。