APP备案,最新获取安卓签名文件中MD5等信息方法

2023-12-07 10:28

本文主要是介绍APP备案,最新获取安卓签名文件中MD5等信息方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.通过签名文件获取SHA1和SHA256

直接通过cmd执行命令

keytool -list -v -keystore xxxxx/xxx/xx/xxx.keystore

输入后回车会提示输入密码库口令,直接输入Keystore密码(输入过程中终端上不会显示,输完回车就行)
就能获取到SHA1和SHA256

2.获取md5

由于上述以前这种方式是可以打印出MD5,现在这种方式却没把MD5值打印出来,处理办法如下
直接在as中的Terminal工具在命令行中输入gradle命令:

./gradlew signingReport

在这里插入图片描述

3.从Keystore获取公钥信息

1.导出公钥文件
输入指令,包的别名可以从上面获取MD5那里可以找到别名。

keytool -export -alias 包的别名 -file 路径/文件名.cer -keystore 路径/文件名.keystore

输入完成后回车,会提示输入一次密码,输入密码后回车,就能生成cer文件了。

2.转换成pem证书

openssl x509 -inform der -in 路径/名称.cer -out 路径/名称.pem

输入指令,回车即可转换成pem证书

3.查看公钥

keytool -list -rfc --keystore 路径/名称.keystore | openssl x509 -inform pem -pubkey

输入指令,回车后输入密码,再回车,即可看到公钥信息。
在这里插入图片描述
-----BEGIN PUBLIC KEY-----
这里就是公钥了!!
-----END PUBLIC KEY-----

4.如何生成私钥

1. 从JKS转换到PKCS12

keytool -importkeystore -srckeystore 路径/名称.jks -destkeystore 路径/名称.p12 -srcstoretype JKS -deststoretype PKCS12 -srcstorepass 源密钥库密码 -deststorepass 目标密钥库密码 -srcalias 源密钥库别名 -destalias 目标密钥库别名 -srckeypass 源密钥库中私钥密码 -destkeypass 目标密钥库中私钥密码 -noprompt

具体来说:

  • srcstorepass:这是源密钥库的密码,即您要从中获取数据的密钥库的密码。
  • deststorepass:这是目标密钥库的密码,即您要将数据存储到的密钥库的密码。
  • srcalias:这是源密钥库中的别名的标识符,用于指定要导入的条目。
  • destalias:这是目标密钥库中的别名的标识符,用于指定要将条目导入到的位置。
  • srckeypass:这是源密钥库中私钥的密码短语,用于在访问源密钥库时验证身份并获取私钥。
  • destkeypass:这是目标密钥库中私钥的密码短语,用于在访问目标密钥库时验证身份并获取私钥。
  • -noprompt:这是一个选项,表示在执行过程中不提示输入密码或进行任何交互。

生成.p12文件
在这里插入图片描述

2. 从PKCS12转换成PEM格式

openssl pkcs12 -in 路径/名称.p12 -out 路径/名称.pem -passin pass:密码-passout pass:密码

在这里插入图片描述

  • pkcs12 是OpenSSL的一个命令,用于处理PKCS#12格式的文件。
  • -in 参数后面的是输入文件的路径和名称,即你要处理的PKCS#12文件。
  • -out参数后面的是输出文件的路径和名称,即你希望输出的PEM格式的文件。
  • -passin和**-passout**参数后面的是输入和输出文件的密码。在-passin中,你输入你的PKCS#12文件的密码;在-passout中,你设置PEM文件的输出密码。

3.生成私钥companyname_private_key.pem文件

openssl pkcs12 -in 路径/名称.p12 -nodes -nocerts -out 路径/名称_private_key.pem

在这里插入图片描述
打开文件就有私钥信息了

在这里插入图片描述
最后然后随便找一个网站测试一下
在这里插入图片描述

参考文章生成keystore以及导出keystore公钥,私钥信息
参考文章【Android】从Keystore中查看公钥和MD5
参考文章APP备案,最新获取安卓签名文件中MD5等信息方法

这篇关于APP备案,最新获取安卓签名文件中MD5等信息方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/465505

相关文章

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring排序机制之接口与注解的使用方法

《Spring排序机制之接口与注解的使用方法》本文介绍了Spring中多种排序机制,包括Ordered接口、PriorityOrdered接口、@Order注解和@Priority注解,提供了详细示例... 目录一、Spring 排序的需求场景二、Spring 中的排序机制1、Ordered 接口2、Pri

Idea实现接口的方法上无法添加@Override注解的解决方案

《Idea实现接口的方法上无法添加@Override注解的解决方案》文章介绍了在IDEA中实现接口方法时无法添加@Override注解的问题及其解决方法,主要步骤包括更改项目结构中的Languagel... 目录Idea实现接China编程口的方法上无法添加@javascriptOverride注解错误原因解决方