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等信息方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/233543.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从线性回归到神经网络

一、线性回归关键思想 1、线性模型 2、基础优化算法 二、线性回归的从零开始实现 在了解线性回归的关键思想之后,我们可以开始通过代码来动手实现线性回归了。在这一节中,我们将从零开始实现整个方法,包括数据流水线、模型、损失函数和小批量…

js判断是否对象自身为空

文章目录 一、前言二、JSON.stringify三、for in 配合 hasOwnProperty四、Object.keys五、Object.getOwnPropertyNames六、Object.getOwnPropertyNames 结合 Object.getOwnPropertySymbols七、Reflect.ownKeys八、最后 一、前言 如何判断一个对象为空? 先上结论&a…

前端面试——CSS面经(持续更新)

1. CSS选择器及其优先级 !important > 行内样式 > id选择器 > 类/伪类/属性选择器 > 标签/伪元素选择器 > 子/后台选择器 > *通配符 2. 重排和重绘是什么?浏览器的渲染机制是什么? 重排(回流):当增加或删除dom节点&…

深入理解Dubbo-3.高级功能剖析和原理解析

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码、Kafka原理、分布式技术原理🔥如果感觉博主的文章还不错的话&#xff…

深入理解JavaScript的箭头函数

深入理解JavaScript的箭头函数 在ES6中,JavaScript引入了箭头函数的概念,它提供了一种更简洁的语法来定义匿名函数。虽然箭头函数看起来很简单,但它们在实际应用中有一些独特的特性和行为。让我们深入理解箭头函数并学习如何正确地使用它们。…

ES6之Map对象

ES6提供了 Map数据结构。它类似于对象,也是键值对的集合。但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。 创建方法 let m new Map()console.log(m)Map的方法 1.set( ) 添加元素 接收两个参数&#xff0c…

iMazing 2.17.10官方中文版含2023最新激活许可证码

iMazing是一款iOS设备管理软件,界面简洁功能丰富,但其中还有一个界面更简洁,功能更精炼的小工具,适合轻量级的用户日常来使用,更加方便快捷。接下来,小编就来教大家如何使用iMazing MiNi,以及它…

2-2、基本数据类型

语雀原文链接 文章目录 1、数据类型分类2、基本数据类型2-1、布尔型boolean2-2、字符型char2-3、整型 byte short int long2-4、浮点型float double 3、基本类型转换byte特例char特例 1、数据类型分类 Java 语言是一种强类型语言。通俗点说就是,在 Java 中存储的数…

卡码网 46携带研究材料 LeetCode 416分割等和数组 1049最后一块石头的重量-ii | 代码随想录25期训练营day42、43

动态规划算法4 卡码网 46 携带研究材料 2023.12.6 题目链接常规二维dp数组方法代码随想录讲解[链接]一维滚动数组方法代码随想录讲解[链接] //二维dp数组做法 #include<bits/stdc.h> using namespace std;int main() {//m为材料种类数&#xff0c;n为行李箱最大空间数…

手眼标定 - 最终精度和误差优化心得

手眼标定 - 标定误差优化项 一、TCP标定误差优化1、注意标定针摆放范围2、TCP标定时的点次态与工作姿态尽可能保持相近 二、深度相机对齐矩阵误差1、手动计算对齐矩阵 三、手眼标定拍照姿态1、TCP标定姿态优先2、水平放置棋盘格优先 为减少最终手眼标定的误差&#xff0c;可做或…

首次发布亚马逊云科技生成式AI技术堆栈,re:Invent大会重磅发布

亚马逊云科技总是在不断重构&#xff0c;以推动创新&#xff0c;而今年re:Invent的主角毫无疑问是生成式AI。这从亚马逊云科技副总裁、首席布道师Jeff Barr在re:Invent 2023之前就迫不及待地写了一篇关于PartyRock的体验试玩教程即可窥见一斑。 事实也确实如此。在Las Vegas&am…

什么是HTML?

✨前言✨ 本文主要介绍什么是HTML以及W3C &#x1f352;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f4dd;私信必回哟&#x1f601; &#x1f352;博主将持续更新学习记录收获&#xff0c;友友们有任何问题可以在评论区留言 文章目录 什么是HTMLHTML发展史HTML的特点什么…

编程怎么学才能快速入门,分享一款中文编程工具快速学习编程思路,中文编程工具之分组框构件简介

一、前言&#xff1a; 零基础自学编程&#xff0c;中文编程工具下载&#xff0c;中文编程工具构件之扩展系统菜单构件教程 编程系统化教程链接 https://jywxz.blog.csdn.net/article/details/134073098?spm1001.2014.3001.5502 给大家分享一款中文编程工具&#xff0c;零基础…

Linux权限命令详解

Linux权限命令详解 文章目录 Linux权限命令详解一、什么是权限&#xff1f;二、权限的本质三、Linux中的用户四、linux中文件的权限4.1 文件访问者的分类&#xff08;人&#xff09;4.2 文件类型和访问权限&#xff08;事物属性&#xff09; 五、快速掌握修改权限的做法【第一种…

windows下分卷解压文件

我的文件是这样的&#xff1a; 存放路径为&#xff1a;C:\Users\Luli_study\MICCAI_MMAC\fudanuniversity\DDR dataset 首先要进入分卷文件的目录cd&#xff1a; 第一步&#xff1a;cd /path/o/分卷问文件目录 第二步&#xff1a; 执行之后的结果(红色框出来的)&#xff1a; …

如何掌握构建 LMS 网站的艺术

目录 什么是学习管理系统 (LMS) 在线课程和 LMS 网站的好处 为什么 WordPress 对于 LMS 网站很重要 统一学习中心 多功能性和可扩展性 提高教育参与度 简化管理和监控 节省时间和费用 技能评估和绩效监督 持续学习和技能提升 使用 WordPress 插件构建成功的 LMS 课程 专注于您的…

力扣257. 二叉树的所有路径(递归回溯与迭代)

题目&#xff1a; 给你一个二叉树的根节点 root &#xff0c;按 任意顺序 &#xff0c;返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [1,2,3,null,5] 输出&#xff1a;["1->2->5","…

【小白专用】Sql Server 连接Mysql 更新23.12.09

目标 已知mysql连接参数&#xff08;地址和用户&#xff09;&#xff0c;期望通过Microsoft Sql Server Management Studio &#xff08;以下简称MSSSMS&#xff09;连接Mysql&#xff0c;在MSSSMS中直接查询或修改Mysql中的数据。 一般是选最新的版本下载。 选64位还是32位&a…

java--包装类

1.包装类 ①包装类就是把基本类型的数据包装成对象。 ②自动装箱&#xff1a;基本数据类型可以自动转换为包装类型。 ②自动拆箱&#xff1a;包装类型可以自动转换为基本类型。 2.包装类的其他常见操作 ①可以把基本类型的数据换成字符串类型。 ②可以把字符串类型的数值转…

轻量封装WebGPU渲染系统示例<45>- 材质组装流水线(MaterialPipeline)灯光、阴影、雾(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/material/src/voxgpu/sample/MaterialPipelineFog.ts 当前示例运行效果: 此示例基于此渲染系统实现&#xff0c;当前示例TypeScript源码如下&#xff1a; export class MaterialPipelineFog {pr…