android 如何解析META-INF/CERT.RSA文件得到签名证书?

如何解析 META-INF/CERT.RSA 文件,从中提取签名证书?在《从cert-rsa中提取证书》一文中是有方法提取,可是我没有sun.security.pkcs.PKCS7这个类。我通过解析APK包也可以得到证书,但是耗时太长。现在我可以在应用中直接读取CERT.RSA文件,有什么办法可以从中提取证书呢?或者在哪里可以得到sun.security.pkcs.PKCS7类以及相关的类?

2个回答

在java jre/lib/rt.jar里有这个类

当然在Android里是没有这个方法,估计是去除了

usniyo
usniyo 哈!真有,谢了!不过用这个PKCS7类来做也不划算,光security包就2M大小了。
6 年多之前 回复

请问你这个问题解决了吗?我现在也想知道

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
<Android APK签名验签>二:META-INF文件分析
http://www.chenglong.ren/2016/12/30/android%E4%B8%AD%E7%AD%BE%E5%90%8D%E5%8E%9F%E7%90%86%E5%92%8C%E5%AE%89%E5%85%A8%E6%80%A7%E5%88%86%E6%9E%90%E4%B9%8Bmeta-inf%E6%96%87%E4%BB%B6%E8%AE%B2%E8%A7%A3/ 这篇
Android签名与认证META-INFO目录下文件
一、Android签名概述 我们已经知道的是:Android对每一个Apk文件都会进行签名,在Apk文件安装时,系统会对其签名信息进行比对,判断程序的完整性,从而决定该Apk文件是否可以安装,在一定程度上达到安全的目的。 给定一个Apk文件,解压,可以看到一个META-INFO文件夹,在该文件夹下有三个文件:分别为MANIFEST.MF、CERT.SF和CERT.RSA。这三个文件分别
对CERT.RSA进行详细解析
参考http://www.cnblogs.com/0616--ataozhijia/p/4482667.html   注:App解析得到的文件时十六进制显示的,而Java解析得到的结果却是十进制显示的。   附件中CERT.RSA是签名后的apk包解压在META-INF目录下签名文件   获取公钥可以使用java工程代码实现,见附件(Test.java)实现代码如下:  
Android签名与认证详细分析之二(CERT.RSA剖析)
Android证书的格式 Android签名中证书的格式参照X.509格式的详细分析。
Android签名与认证详细分析之一(CERT.RSA剖析)
(1)Android签名流程?(2)豌豆荚洗白白怎么实现的?(3)同一个公司的所有App签名都一样吗?(4)一个App的不同版本签名是否一样呢?。。。。。。。。。。。
android安全学习之5—apk中的META-INF目录
什么是签名 在android系统中,不同App之间是依靠包名、数字签名共同来进行区分的。虽然Google建议我们用自己的域名的反写作为包名的前缀来定义包名(例如com.google.),但是这并不能做到万无一失,我们不能单单利用包名来区分apk,所以提出了签名的概念。顾名思义,就是在apk上打上作者的烙印。 先看如何签名。一般,在android代码中,build/target/product/se
Android中签名原理和安全性分析之META-INF文件讲解
之前已经来了好几篇和RSA加密相关的文章了,这次还是趁热打铁,看一下RSA在APK签名中的应用,最后我们分析一下为什么这种方式能够具有安全性。RSA对apk签名的体现就在apk文件中的META-INF文件夹中,我们先来拿一个例子分析一下。 以最新的QQ6.6.2的apk为例,现在的解压工具默认就可以解压apk了,所以也不要先改成zip然后解压了,解压后apk里面的文件大概就是这样的: 里面
关于keytool生成android签名、查看签名证书等
cmd进入jdk下的bin文件,输入语句keytool -genkey -alias test -keypass 123456 -keyalg RSA -keysize 2048 -validity 36500 -keystore D:/keys/test.keystore -storepass 123456注意:1.路径什么的需要修改2.alias别名需要修改3.keysize1024位生成的是...
如何使用keytool查看CERT.RSA文件和keystore文件内容。
1、查看keystore文件内容:
Android签名证书文件的解析和签名校验的加强
Android签名证书文件的解析和签名校验的加强
一文弄懂关于证书的一切,ssl协议,android包签名机制。
所有的概念都基于一个非常重要的基础: rsa 非对称加密算法 : 1. 在加解密上,两个秘钥是对等的 任何一个可以加密,另一个可以用来解密。 2. 用openssl创建一个秘钥,然后可用该秘钥可以生成另一个秘钥。 但是反过来不可以。所以创建的秘钥叫私钥,而根据私钥生成的秘钥叫公钥。 3. 一个私钥只能对应一个公钥。 先感受下几个概念 PKI。 PKI是公钥基础设施(Public...
获取签名证书的SHA1值和MD5值
android开发中,有时候需要在其他平台注册应用(例如实现分享功能),注册的时候有些平台会需要你提供SHA1值或者MD5值,以前用Eclipse开发的时候获取很简单:windows--> preferences,然后点击android下的Build就可以查看SHA1值和MD5值了。在android studio下,不能这么查找了,我这里采取的方法可能不是很方便,但是绝对可以获取到。1.首先将你的项
查看第三方APK的签名的方法(.keystore .RSA .APK)
直接进入你自己的系统JDK版本bin目录下。用cmd打开进入。 可查看  MD5  SHA1  SHA256算法签名。 1、查看 keystore   $ keytool -list -keystore debug.keystore  (debug.keystore   代表你的签名文件) 结果: Keystore type: JKS Keystore pro
META-INF方式多渠道打包提示安装找不到安装证书
在Android 7.0系统 引入一项新的应用签名方案 APK Signature Scheme v2,它能提供更快的应用安装时间和更多针对未授权 APK 文件更改的保护。在默认情况下,Android Studio 2.2 和 Android Plugin for Gradle 2.2 会使用 APK Signature Scheme v2 和传统签名方案来签署您的应用。虽然建议您对您的应用采用 A
android APK签名过程之CERT.RSA分析
CERT.RSA包含了公钥信息和发布机构信息,具体信息获取可以参考:《手动给android APK签名》中第四部分的验证过程。
Android-Java证书签名获取、代码运行时校验、鉴权
证书等的概念 相关概念连接 简单说: keystore就是数据库,存着 证书(Certificate) 证书 拥有人的信息(公司、住址、电话、官网) 公钥(Public Key) 证书的签名(MD5、SHA1、SHA256,各种摘要算法) AC机构(该证书授权的机构) 获取证书指纹 从KeyStore里获取证书 keytool -export -keystore you-key...
android如何获取证书签名?
cygwin环境下 在cygwin环境下运行如下命令,输出结果即为signature keytool -exportcert -alias [alias] -keypass [alias password] -keystore [keystore filepath] -storepass [keystore password] | md5sum  例如:当前路径下包含用于对app签名的t
META-INF下文件读取
<br />    protected String getProperty(String name) {<br />         String file = "/META-INF/jndi.properties";<br />         URL fileURL = this.getClass().getResource(file);<br />         if (fileURL != null) {<br />             try {<br />           
安卓安装完应用后,获取包的meta-inf目录下的文件channel_ID.txt的第三行
背景: 安卓安装完应用后,可以获取包的meta-inf目录下的文件吗? 在手机上安装完了应用后,然后打开应用,此时,应用里的SDK有没有办法取到应用包里的meta-inf文件? 为什么要这么做? 因为同一个应用包,需要往里面打不同的渠道ID。 然后又要保持签名一致。 这个时候需要往meta-inf里面写文件,因为这样不会影响到签名。 但是问题来了,如果一两个
XML概述以及Pull解析详解
XML概述以及Pull解析详解 ONE Goal ,ONE Passion ! 做Android开发最多的都是json.而且解析xml都用Xstream,慢慢地xml的手动解析都快忘记了.概述:XML是什么 ? eXtensible Markup Language(可扩展的标记语言);XML常见作用:1,用作配置文件 2,数据传输时数据格式 3,Android中资源文件XML的基本语法:1.声
往META-INF中加入文件
http://stackoverflow.com/questions/4079675/how-to-add-files-to-jars-meta-inf/4079697#4079697 有3中方法, 第一是最方便的就是把文件改成zip文件,直接网里面放 第二种是建立一个META-INF文件夹,这样在eclipse打包时,就不会再创建了,你只需要将文件往这里面放就行了, 第三种就是命
你真的了解META-INF吗?
你真的了解META-INF吗? 做过JAVA EE开发的工程师应该都知道在JAVA build出来的JAR或者WAR的顶层目录下有个META-INF文件夹吧,可是有多少人能够清楚说出这个文件夹到底是做神马的? What is the purpose of META-INF? 恐怕不是都能说的清楚准确吧。 把这个问题抛出来,是因为我在公司的项目中发现META-IN
Android Studio 签名证书文件在build.gradle(app)中配置
Android Studio 签名证书文件在build.gradle(app)中配置楼主会在最后统一放出代码片段生成签名证书文件方式请点击下方链接跳转 Android Studio中创建keystore http://blog.csdn.net/qq_24349695/article/details/78540982生成签名证书文件完之后,运行release的时候还是无法运行,需要在buil
AndroidStudio打jar包(包含META-INF文件)
最近在研究sdk的开发,遇到了AndroidStudio打jar的问题,,,执行打jar包的操作我们都可以生成一个jar包,但是这个jar包里面的呈现内容  和  eclipse打jar包的呈现内容是不是一样呢,有三种执行操作,但是打的jar包内容不同(eclipse 打jar包非常简单)  //1.此种打包方式 jar包没有META-INF文件 不会存在  task makeJar(
Android App签名(证书)校验过程源码分析
Android App安装是需要证书支持的,我们在Eclipse或者Android Studio中开发App时,并没有注意关于证书的事,也能正确安装App。这是因为使用了默认的debug证书。在Android App升级的时候,证书发挥的作用就尤为明显了。只有证书相同时,才能对App进行升级。证书也是为了防止App伪造的,属于Android安全策略的一部分。
Android签名证书生成
写在前面:正式打包发布Android的apk应用,需要先选择或新建一个数字证书,即keystore文件,生成数字证书的常用方法有两:一是利用eclipse生成,二是在命令行中生成,下面我们来介绍如何在命令行中生成Android的数字证书。 下载安装 JDK; 打开 CMD,直接输入以下指令(PS:需设置好环境变量,否则需要进入 JDK 的 bin 目录下输入指令); keytool ...
读Spring的源代码七:spring.handlers的加载过程
要实现自定义的xml配置,需要有两个默认spring配置文件来支持。一个是spring.schemas,一个是spring.handlers,前者是为了验证你自定义的xml配置文件是否符合你的格式要求,后者是告诉spring该如何来解析你自定义的配置文件。1.在步骤4createReaderContext的时候,会做如下检查,如果没有resolver会创建一个默认的DefaultNamespaceH
jar包详解和META-INF作用(转)
jar包详解和META-INF作用(转) 如果我们使用 JDK 的 jar 命令把它打成 JAR 文件包 test.jar,则这个 JAR 文件的内部目录结构为:  不要删掉,是证书,和校验数据,是部署信息。很多信息是存放类信息的文件夹,信息包,  用来描述该jar文件的信息的,程序的入口 test.jar  |-- META-INF  | `-- MANIFEST.M
打包apk时需要生成签名证书keystore
进行Android项目开发中想要将androidapp导出为apk的时候需要选择一个数字证书,即keystore文件(android.keystore),它用来对我们的APP进行签名,是导出APP的一个钥匙,一般需要我们自己生成android.keystore文件使用keytool命令,如果命令窗口提示“不是内部或外部命令”,则说明电脑还没有安装JDK,所以需要自己去搜索并安装JDK,安装完毕后,...
Jar包详解和META-INF作用
如何把 java 程序编译成 .exe 文件。通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了;而另一种是使用 JET 来进行 编译。但是 JET 是要用钱买的,而且据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台特性。 
android证书指纹的生成
apk的证书能用keytool来获取,从apk中的
android studio 2.2 META-INF渠道包方式7.0安装出错
最近项目发版本打好渠道包后测试反馈android7.0的谷歌手机无法安装,其他系统手机没问题。这个问题很奇怪,一步步分析原因。 渠道包打包方式:http://blog.csdn.net/szydwy/article/details/50854676用文件对比工具分析上一版和出错版本的apk,截图如下:可以发现出错版本对比表示除了渠道标识外其他文件都更改过,正确版本紧紧只是增加了渠道号标识。这个问题
查看签名指纹MD5和SHA1值(应用签名)
AndroidStudio中自带了终端Terminal,我们可以直接在里面进行操作。如下图: 在这里首先我们得进入到C盘的,用户的.android路径下。其它操作同第一个种方法一样,如下: 当然在这里我们只是获取的调试用的MD5和SHA1! 获取apk中的MD5和SHA1,前提是你知道密匙: 1.首先先解压apk,获取到其中的META-INF文件夹底
生成Jar包META-INF配置
测试mysql数据库连接: package cn.yws.fuck; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Fuck { public static void main(Str
获取Android签名证书SHA1
做个记录 第1步:运行进入控制台   第2步:定位到.android文件夹下,输入cd .android 第3步:输入keytool -list -v -keystore debug.keystore,会得到三种指纹证书,选取SHA1类型的证书(密钥口令是android),例如: 其中keytool为jdk自带工具;keystorefile为Android 签
提取安卓apk的SHA1
最近用高德地图需要用到SHA1. 很无耻的是,按照官方的方法得到的是无效的。 所以知道去把生成的debug版的apk拿来解析了。 方法如下: 在我们的项目的 build\outputs\apk\app-debug.apk 路径下找到AndroidStudio 给我们生成的项目apk。接着把他改成.RAR结尾的,解压缩,提取里面的META-INF/CERT.RSA 接着打开我们的终端,输入下
Jar包详解和META-INF作用(…
原文地址:Jar包详解和META-INF作用(创建可执行jar文件)--转帖作者:玉琪星兆 如 何把 Java 程序编译成 .exe 文件。通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了;而另一种是使用 JET 来进行 编译。但是 JET 是要用钱买的,而且据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使
apk签名证书提取工具
apk签名证书提取工具
APK签名机制之——JAR签名机制详解
在《APK签名机制原理详解》一文中我们已经了解了APK签名和校验的基本过程,这一篇我们来分析JAR签名机制。JAR签名对对jar包进行签名的一种机制,由于jar包apk本质上都是zip包,所以可以应用到对apk的签名。本文从JAR签名结构、签名过程,再到签名校验的源码分析,全方面来分析Android中JAR签名及校验的机制。
Android OTA升级包制作脚本详解(五,升级脚本updater-script的执行<2>)
写在前面:     从前面一篇博文我们知道recovery下安装更新的主要内容就是去执行更新脚本程序update-binary,而update-binary的主要任务就是去解析执行updater-script,那update-binary是如何去解释执行updater-script的呢。我们下面一起来学习一下。   源码位于android目录下/bootable/recovery/update
不刷root权限修改系统时间
在不刷root权限的情况下,如果想在应用层修改系统时间是比较复杂的。本资源是通过android:sharedUserId="android.uid.system",先打包apk,然后用压缩文件打开apk,删除META-INF文件夹下的CERT.SF和CERT.RSA,然后运行.bat处理即可
生成签名证书keystore
前言 进行Android项目开发中想要将androidapp导出为apk的时候需要选择一个数字证书,即keystore文件(android.keystore),它用来对我们的APP进行签名,是导出APP的一个钥匙,一般需要我们自己生成android.keystore文件 方法:利用JDK下的keytool工具生成 步骤: 1:使用keytool命令,如果命令窗口提示“不是内
CERT.RSA中证书的格式
-
android apk找不到签名证书
今天有个项目要给一个版本进行测试 按照往常打包APP 然后打包的apk发给测试. 结果测试反馈无法安装. (测试机为魅族手机) 然后我就很郁闷了,为啥以前能安装,现在不行. bai度说是手机没允许未知来源(果然it还是不要找它) 然后 去验证apk是否已经签名:jarsigner -verify ***.apk 嗯哼?为啥! 然后我
SHA1获取的几种方式
1、通过Eclipse编译器获取SHA1使用 adt 22 以上版本,可以在 eclipse 中直接查看。Windows:依次在 eclipse 中打开 Window -&amp;gt; Preferances -&amp;gt; Android -&amp;gt; Build。Mac:依次在 eclipse 中打开 Eclipse/ADT-&amp;gt;Preferances -&amp;gt; Android -&amp;gt; Buil...
Maven项目如何将自定义文件添加到META-INF目录下
Maven项目打包自定义资源
APK文件没有数字签名证书
今天新测试人员告诉我 APK安不上 我查看 某手机助手   安装我的apk的时候提示: "APK文件没有数字签名证书." apk包安装不到手机上   略搜索后发现是  手机设置问题 不同的手机品牌可能设置的操作不太相同 解决办法  :    设置-应用程序-未知源   选择允许安装来自未知来源的应用       设置-安全 -未知来源     选择允许安装来自未知来源的应用
TOMCAT下应用部署新法(/META-INF/context.xml)
<br />  <br />Tomcat下位于默认的webapps目录下的程序要使用dataSource,过去我都是直接修改%tomcat%/conf/server.xml中的<context>在这个标签下增加 <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"/> <br />这样是可以达到了效果但是server.xml就被破坏了,如果一台机器上要使用多个tomcat服务器就会产生麻烦。 <br /><br />
Maven项目中如何将自定义标签的tld文件添加到META-INF目录下
项目开发中为了提高复用性,经常把自定义标签打成单独的jar文件,同时将tld文件添加到jar文件中的META-INF目录下,这样其他的项目就能很方便的使用这些自定义标签。 tld文件中定义: 1 2 3 4 >1.0> >1.2> >demo> >/demo-tags> jsp中使用: 1 2
相关热词 c# clr dll c# 如何orm c# 固定大小的字符数组 c#框架设计 c# 删除数据库 c# 中文文字 图片转 c# 成员属性 接口 c#如何将程序封装 16进制负数转换 c# c#练手项目
立即提问