安卓获取apk的公钥,用于申请app备案等

要申请app的icp备案等场景,需要app的

证书MD5指纹和公钥,示例如下:

步骤1:使用keytool从APK中提取证书

  1. 打开命令行,cd 到你的apk目录,如:app/release

  2. 解压APK文件:

java 复制代码
unzip your_application.apk -d apk_folder
  1. 进入解压后的目录,找到META-INF文件夹,通常证书文件如CERT.RSA会存放在此处。

  2. 使用keytool命令查看证书信息,并获取公钥:

    keytool -printcert -file apk_folder/META-INF/CERT.RSA

这个命令将输出证书的详细信息,包括公钥。如果你需要公钥的具体数值,你可以使用openssl从此证书中提取:

步骤2:使用openssl提取公钥

  1. 首先需要将CERT.RSA转换为x509格式,可以使用以下命令:

    复制代码
    openssl pkcs7 -print_certs -in apk_folder/META-INF/CERT.RSA -inform DER -outform PEM -out certificate.pem
  2. 然后从转换的PEM证书文件中提取公钥:

    复制代码
    openssl x509 -in certificate.pem -pubkey -noout > publickey.pem
  3. 如果你需要公钥的十六进制形式,可以进一步使用以下命令:

    复制代码
    openssl rsa -pubin -in publickey.pem -text -noout

    这一命令会输出公钥的详细信息,包括十六进制形式。

注意替换your_application.apk为你的APK文件名,并根据你的实际文件目录调整命令中的路径。

相关推荐
华锋202210 分钟前
2025.12首次体验 arkui-x 跨平台开发库
android
allk551 小时前
Android 性能优化之启动加速:从底层原理到架构治理
android
QuantumLeap丶2 小时前
《Flutter全栈开发实战指南:从零到高级》- 24 -集成推送通知
android·flutter·ios
用户41659673693552 小时前
WebView 滚动失灵?剖析 `scrollBy()` 在现代 Web 布局中的失效陷阱
android
明川2 小时前
Android Gradle学习 - Gradle插件开发与发布指南
android·前端·gradle
二流小码农3 小时前
鸿蒙开发:上架困难?谈谈我的上架之路
android·ios·harmonyos
Propeller3 小时前
【Android】动态操作 Window 的背后机制
android·java
张风捷特烈3 小时前
Flutter&TolyUI#12 | 树形组件 toly_tree 重磅推出!
android·前端·flutter
柯南二号3 小时前
【大前端】【Android】一文详解Android MVVM 模式详情解析
android·前端