
正文
java代码查看jks java代码查看Directory listing
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Android查看应用签名方法
查看应用签名java代码查看jks的MD5、SHA1、SHA256值及签名算法。
查看keystore文件签名信息,前提要有keystore文件和密钥,才能够获取keystore文件的签名信息。
方法一:(适用于 AS)
1)打开 AS工具窗口栏右边的 Gradle - Project - app - Tasks - android - signingReport,双击运行 signingReport;
在没有keystore文件和密钥的情况下,要想查看我们所需应用的签名信息,就需要借助 keytool 工具来完成。
首先解压要查看的apk包,通过数据证书管理工具 keytool 查看apk的签名信息。具体步骤如下:
1)将apk修改后缀为 .rar 文件后进行解压java代码查看jks;
2)进入解压后的 META-INF 目录,找到该目录下的 xxx.RSA 文件;
3)通过命令 cmd 打开DOS窗口,输入命令 : keytool -printcert -file [RSA文件路径]
在查看应用签名信息过程中,可能会遇到以下几个问题:
定位 keytool.exe 工具所在的目录,使用相关操作命令查看签名信息;
JKS(Java KeyStore) :是 Java 的 keytools 证书工具支持的证书私钥格式。jks 包含了公钥和私钥,可以通过 keytool 工具来将公钥和私钥导出。因为包含了私钥,所以 jks 文件通常通过一个密码来加以保护。一般用于 Java 或者 Tomcat 服务器。
PKCS #12 :定义了一种存档文件格式,用于实现存储许多加密对象在一个单独的文件中。通常用它来打包一个私钥及有关的 X.509 证书,或者打包信任链的全部项目。
定位 keytool.exe 工具所在的目录,使用操作命令转换证书格式;
相关问答
Q1: 如何用Java代码来把SSL的证书自动导入到Jav
下面这个Java类可以帮助我们做这个事情。同时我们还可以把这个帮助方法开发一个可视化的程序,这样就更加方便:
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.security.KeyStore;import java.security.cert.CertificateFactory;import java.security.cert.X509Certificate;import java.util.List;import javax.naming.ldap.LdapName;import javax.naming.ldap.Rdn;import javax.security.auth.x500.X500Principal;public class KeyStoreHelper { public static void createTrustJKSKeyStore(final String originalTrustFolder, final String jksTrustStoreLocation, final String password) { File keyStoreFile = new File(jksTrustStoreLocation); if (!keyStoreFile.exists()) { try { KeyStore keystore = KeyStore.getInstance(KeyStore.getDefaultType()); keystore.load(null, password.toCharArray()); File trustedFolder = new File(originalTrustFolder); File[] certs = trustedFolder.listFiles(); if (certs != null) { for (File cert : certs) { CertificateFactory factory = CertificateFactory.getInstance("X.509"); try { X509Certificate certificate = (X509Certificate) factory.generateCertificate(new FileInputStream(cert)); X500Principal principal = certificate.getSubjectX500Principal(); LdapName ldapDN = new LdapName(principal.getName()); ListRdn rdns = ldapDN.getRdns(); for (Rdn rdn : rdns) { String type = rdn.getType(); if (type.equals("CN")) { keystore.setCertificateEntry((String) rdn.getValue(),certificate);break; } } } catch (Exception ex) { continue; } } } FileOutputStream fos = new FileOutputStream(jksTrustStoreLocation); keystore.store(fos, password.toCharArray()); fos.close(); } catch (Exception exp) { } } } /** * @param args */ public static void main(String[] args) { KeyStoreHelper.createTrustJKSKeyStore("D:\\cacerts", "D:\\cacerts\\test.jks", "test123"); }}
Q2: java中怎么获取jks证书文件中的内容
1、p12格式的证书是不能使用keytool工具导入到keystore中的
2、the
sun's
pkcs12
keystore对从ie和其他的windows程序生成的pfx格式的证书支持不太好.
3、p7b证书链不能直接导入到keystore,需要将里面的证书导出成cer格式,再分别导入到keystore。
Q3: jdk的keytool生成jks及获取jks的信息
生成jks
命令:
keytool -genkeypair -alias myAlias -keyalg RSA -keypass myKeyPass -keystore myKeystore.jks -storepass myStorePass -storetype jks
myAlias: 密钥对的别名
myKeyPass: 私玥保护口令
myKeystore.jks: Keystore 文件名
myStorePass: keystore保护口令
storetype: 证书库类型
例如:
keytool -genkeypair -alias uc -keyalg RSA -keypass ucpass -keystore uc.jks -storepass ucstorepass -storetype jks
导入证书到制定的证书库
keytool -import -alias aliasName -keystore keystorePath -file certPath
aliasName:证书别名
keystorePath: keystore路径
certPath: 证书路径
通过别名查询证书库中是否存在证书
keytool -list -keystore keystorePath -alias aliasName
aliasName:证书别名
keystorePath: keystore路径
certPath: 证书路径
从JKS中导出证书
keytool -list -v -keystore jksName.jks
keytool -export -alias aliasName -keystore jksName.jks -storepass 密钥库口令 -file certName.cer
解决unable to find valid certification path to requested target
java调用https请求如果网站的跟证书不存在于jre的默认证书库中,会出现上述异常
解决方法可以将网站的证书导入到jre的证书库中
导入方法:
Q4: jks 证书文件的生成步骤
作为文件形式存在的证书,一般有三类:
A.
包含有私钥的证书,包含了公钥和私钥,用pkcs12标准,而一般以pfx 作为扩展名;
B.
DER 编码证书,不含私钥,以cer 结尾,文件是二进制data. 通常CA(无论是intermediate CA还是root CA)证书都是这类;
C.
BASE64编码的证书,这类证书也不含私钥,一般也以cer结尾,是pem证书, 这类证书可以直接cat 出结果, 特征是”-----BEGIN CERTIFICATE----- “开头,“-----END CERTIFICATE-----”结尾;
对于DER/PEM证书,可以通过openssl 来确认其编码类型(假设要查看的证书是client_cert.cer):
openssl x509 -in ./client_cert.cer -inform pem -noout -text
openssl x509 -in ./client_ert.cer -inform der -noout -text
jks 是java key store 的简称,也就是java 常用的证书文件. jks 证书文件一般包含私钥以及签名的cert一起组成的. 要生成jks 可以使用java 的keytool工具 以及openssl 来完成,没有特殊需求的情况先,可以只用这两个工具就可以了:
基本的过程是这样的:
具体的步骤如下:
上述创建私钥以及生成CSR的过程,可以用keytool工具来实现(MW的support 人员更乐于用keytool工具来实现),具体为:
上述步骤就成功创建了csr文件,并且成功获得了对应的private key. (无论是基于openssl 命令还是keytool命令)
然后需要将csr发送给证书签发者,然后证书签发者进行证书的签发; 签发后,一般会发回 crt 证书文件. 以及root ca, intermediate ca 还有签发的pem证书;
后面的步骤是创建证书链:
查看证书:
keytool -list -v -keystore test_keystore2.jks -storepass xoxoxo
查看证书请求文件:
keytool -printcertreq -file
查看已经签名的证书:
keytool -printcert -file GlobalSign_cert.cer
如何通过本机简单验证ssl 证书是否正确呢? 用openssl 命令在本机开启ssl 的服务器和客户端,然后用ssl 方式进行连接进行验证:
然后看输出的结果,就知道是否证书是ok的;
diff -eq (openssl x509 -pubkey -noout -in mycert.crt) (openssl rsa -pubout -in mycert.key)
关于java代码查看jks和java代码查看Directory listing的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







