安卓获取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文件名,并根据你的实际文件目录调整命令中的路径。

相关推荐
Tangsong4049 分钟前
以Termius的方式进行安卓设备调试?试试【easyadb】| 多功能可视化adb工具
android·adb
码农的小菜园2 小时前
Android的Locale学习笔记
android·笔记·学习
帅次2 小时前
链路到端上:HTTPS 之后安全题还在考什么
android·okhttp·glide·zygote·retrofit
游戏开发爱好者82 小时前
深入理解iOSTime Profiler:提升iOS应用性能的关键工具
android·ios·小程序·https·uni-app·iphone·webview
帅次3 小时前
Android 高级工程师面试参考答案:架构设计、Jetpack 与 Compose
android·面试·职场和发展·架构·composer·jetpack
limingade3 小时前
Dialer3.0智能拨号器Android版功能说明书
android·蓝牙电话·手机转sip·手机蓝牙·智能拨号器
JJay.3 小时前
Android BLE 的 notify 和 indicate 到底有什么区别
android
橙子199110163 小时前
Android 异步任务和消息机制
android
被开发耽误的大厨4 小时前
5、Integer缓存池里同一个对象指的是什么?Integer 和String 内存结构逻辑完全一样?
android·java·哈希算法
NoSi EFUL12 小时前
MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
android·数据库·mysql