import java.io.*;

import java.security.cert.*;

import java.text.SimpleDateFormat;

import java.util.*;

public class CertManager

{

public static void showCertInfo()

{

try

{

//读取证书文件

File file = new File("/data/data/com.example.helloworld/files/test.cer");

InputStream inStream = new FileInputStream(file);

//创建X509工厂类

CertificateFactory cf = CertificateFactory.getInstance("X.509");

//创建证书对象

X509Certificate oCert = (X509Certificate)cf.generateCertificate(inStream);

inStream.close();

SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd");

String info = null;

//获得证书版本

info = String.valueOf(oCert.getVersion());

System.out.println("证书版本:"+info);

//获得证书序列号

info = oCert.getSerialNumber().toString(16);

System.out.println("证书序列号:"+info);

//获得证书有效期

Date beforedate = oCert.getNotBefore();

info = dateformat.format(beforedate);

System.out.println("证书生效日期:"+info);

Date afterdate = oCert.getNotAfter();

info = dateformat.format(afterdate);

System.out.println("证书失效日期:"+info);

//获得证书主体信息

info = oCert.getSubjectDN().getName();

System.out.println("证书拥有者:"+info);

//获得证书颁发者信息

info = oCert.getIssuerDN().getName();

System.out.println("证书颁发者:"+info);

//获得证书签名算法名称

info = oCert.getSigAlgName();

System.out.println("证书签名算法:"+info);

byte[] byt = oCert.getExtensionValue("1.2.86.11.7.9");

String strExt = new String(byt);

System.out.println("证书扩展域:" + strExt);

byt = oCert.getExtensionValue("1.2.86.11.7.1.8");

String strExt2 = new String(byt);

System.out.println("证书扩展域2:" + strExt2);

}

catch (Exception e)

{

System.out.println("解析证书出错!");

}

}//end showCertInfo

}

java 解析证书_Java x509证书解析类相关推荐

  1. openssl解析国密X509证书

    openssl解析国密X509证书,把公钥拿出来重写一下就行了         x = strToX509(pbCert, pulCertLen); dwRet = getCertPubKey(x,  ...

  2. java 解析证书_java 读取证书类以及key tool gui 1.7

    Key Tool Gui 1.7 /** * Title: Light Weight APIs for crypto * Description: 一个上海CA证书(根证书和用户证书)进行处理的例子 ...

  3. java json解析 代码_Java构造和解析Json数据的两种方法详解一

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面首先介绍用json-lib构造和解析Jso ...

  4. linux java 生成证书_Java 制作证书(Windows 和Linux)

    一.Windows数字证书 1. 生成数字证书 1.1 进入[%JAVA_HOME%]路径下 1 cd D:Program FilesJavajdk1.8.0_131 1.2 生成证书.一些命令中红色 ...

  5. java 调用弗雷_JAVA API(一)String类和StringBuffer类

    1.String类和StringBuffer类 在程序中经常会用到字符串,所谓的字符串就是指一连串的字符,它是由多个单个字符连接而成的.字符串中可以包含任意字符,这些字符必须包含在一对双引号" ...

  6. java 动态更新_java动态更新枚举类

    工作中遇到需要对枚举类的值进行动态更新 手动改不现实也不方便 现记录下来方便以后学习使用 1.在工程utils包中添加动态更新枚举类得工具类(根据自己得项目,放到指定位置调用就可以) 2.一开始陷入了 ...

  7. java jfm入门_java入门编程解析

    java入门编程解析 Java具有简单性.面向对象.分布式.健壮性.安全性.平台独立与可移植性.多线程.动态性等特点Java可以编写桌面应用程序.web应用程序.分布式系统和嵌入式系统应用程序等.大家 ...

  8. java ocsp请求_java – 客户端证书上的OCSP吊销

    如果仅使用客户端的java.security.cert.X509Certificate,如何使用OCSP手动检查java中的证书撤销状态?我看不清楚这样做的明确方法. 或者,我可以让tomcat自动为 ...

  9. java excel 数组_Java将Excel解析为数组集合

    Java将Excel解析为数组集合 相关 jar 包: jxl-2.6.jar /** * 返回上传的Excel表格的内容 */ public static List parseExcel(Input ...

  10. java安装证书_Java SSL证书的安装

    https正在成为主流,http估计在不久的将来会被彻底放弃-- 一个Java程序需要访问一个https的网站的时候,可能需要涉及证书的安装,卸载等操作. 一.证书的下载 打开浏览器输入https:/ ...

最新文章

  1. 北京活动 | 新书首发手把手带你的产品从0开始验证一个新的业务
  2. 快速git本地项目到github的关键命令及执行步骤(附上idea到git的步骤)
  3. 【转】shell之for、while、until循环
  4. SDN——转控分离、CPU保护机制——COPP技术案列详解及配置命令、
  5. php生成标准excel表格,php导出生成excel表格几种方法介绍
  6. paip. sip module implements API v10.0 to v10.1 but the PyQt4.QtCore module requires API v9.2
  7. UESTC 574 High-level ancients
  8. 栈和队列基本概念,顺序栈的表示和实现
  9. SpringMVC 自定义转换器
  10. 1. Windows网络编程(C++ Socket编程)
  11. 现代操作系统 第十章 UNIX、Linux 和 Android 下
  12. 白话空间统计二十四:地理加权回归(二)
  13. VS卸载,一键卸载VS
  14. java反射为什么消耗资源_Java反射笔记
  15. 未来人工智能对人类的影响的利弊
  16. 在 Beagleboard-x15 上配置 spi 和 GPIO
  17. 传奇背词 商业经济类第一篇 消费者该怎么做?
  18. 2022-2028年全球与中国高级计算机断层扫描仪行业发展趋势及投资战略分析
  19. 【财经期刊FM-Radio|2020年11月19日】
  20. IR Cut Filter主要作用分别是什么?_安防 | 说说监控摄像头中IR-CUT双滤光片哪些事...

热门文章

  1. poi合并单元格的处理
  2. linux虚拟文件系统proc
  3. 十大排序算法——C语言实现
  4. 计算机组成与原理第二章,计算机组成原理《第二章》
  5. java劳务派遣信息管理系统servlet员工社保工资信息jsp源码mysql
  6. 全国高校计算机能力挑战赛Java试题(一)
  7. 国外浏览器无法访问apple ID页面,显示502 Bad Gateway,解决方法
  8. Mariadb 安装 启动 及错误 1067 问题解决
  9. 图灵奖得主--Yoshua Bengio再获全球级荣誉
  10. access数据库代做_矿井三维模型(代做矿山模型)