- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 数字化身份-CertPath证书链
主要内容
使用Keytool工具和JAVA程序创建并保存证书链
从证书文件、密钥库或HTTPS服务器获取证书链的CertPath
显示和保存证书链中的证书
验证证书链
使用CertStore来保存和提取证书
吊销证书
证书链
证书链本质上是一组按顺序排列的数字证书,又称为认证链、证书路径。证书链证明了证书的合法性,证书链合法,则可以相信证书中所宣称的某个主体拥有某个公钥。
例如:A的证书由B颁发,B由C颁发,C由D颁发,这样就形成了一个4个证书组成的证书链:A-B-C-D.若要验证A的证书是否值得信任,只要检验者信任B,C,D中的任一个证书即可。
密钥库中创建并保存证书链的几种方法
1、使用Keytool将已签名的数字证书导入密钥库
使用-import参数可以将数字证书导入到密钥库,主要要先导入CA的证书
(1)将第五章的密钥库lfkeystore,mytest.cer,lf.cer,lf_signed.cer拷入一个文件夹
(2)若先导入lf_signed.cer会出错,因为CA
mytest还没有导入,无法建立证书链。要先导入mytest.cer
(3)最后导入lf_signed.cer覆盖自签名的lf
2、使用JAVA程序将已签名的数字证书导入到密钥库
例:首先读取CA的证书mytest.cer和用户收到的签名后的证书lf_signed.cer,使用这两个证书组成证书链,然后从用户的密钥库读取私钥,最后执行KeyStore对象的SetKeyEntry()方法将私钥和证书一起写入密钥库,并用store()方法保存为文件即可。
先copy lfkeystore.bak.before.6.1.1 lfkeystore
Java ImportCert
几种获取CertPath证书链的方法
CertPath类代表证书链
(1)根据证书文件生成CertPath类型的对象
例:用.cer文件生成CertPath类型的对象,并将其中所有的文件打印出来。Java GetCertPathCert lf_signed.cer mytest.cer1.txt
(2)从密钥库读取证书链生成CertPath类型的对象
1)获取相关参数
2)获取KeyStore对象并加载密钥库
3)从密钥库读取数组形式的证书链
4)生成列表对象
5)创建CertPath类型的对象
例:从密钥库中逐个读取证书形成密钥链并打印出来。Java GetCertPathtKs lfkeystore2 wshr.ut lf 2.txt
Java GetCertPathtKs lfkeystore newpass lf_signed3.txt
(3)从HTTPS服务器获取证书链
数字证书在网络上各种HTTPS服务器上用得很多,这些服务器对应的是https://...格式的网址,一般使用443作为端口号。
编程步骤:
1)创建SSLServerSocketFactory类型的对象。
2)创建SSLSocket类型的对象。
3)和HTTPS服务器建立连接
4)获取连接的会话
5)获取证书
6)将证书数组中的内容放入列表
7)由列表对象创建CertPath类型的对象
例:GetCertPathHttps
java GetCertPathHttps verisign.txt
CertPath对象的证书显示和保存
(1)显示CertPath中的证书
1)获取CertPath类型的对象
2)从CertPath对象获取证书列表。
3)处理列表。
例:用.cer文件得到CertPath对象,并提取该对象中包含的证书。
Java ShowCertPath lf_signed.cer mytest.cer xxx.txt
(2)保存CertPath中的证书
1)获取CertPath类型的对象
2)创建密钥库
3)获取CertPath中的证书数组
4)将CertPath中的证书写入密钥库。
5)保存密钥库
例:将CertPath对象中的证书保存到密钥库并进而导出到文件中。
运行Java StoreCert之后,将创建密钥库MyCertPathStore,可以用
Keytool –list –keystore MyCertPathStore查看密钥库的内容。
结果截图
验证CertPath证书链
(1)验证主体和签发者
例:验证证书链中各个证书的签发者和证书链中后一个证书的主体名称是否匹配。
编程步骤:
1)获取证书数组
2)遍历证书数组
3)比较
Java ValiSubIssu my0.cer my1.cer my2.cer
(2)验证签名
例:验证证书链中各个证书的签名是否正确。证书链中第i个证书是使用第i+1个证书的公钥来验
您可能关注的文档
- 嵌入式控制系统实验-第1讲 Embest ARM实验教学系统介绍及实验一.ppt
- 第二章 输入输出流及流类库.ppt
- 嵌入式系统硬件体系结构-第二节.pdf
- 日历编程方法.doc
- 如何进行SQL_SERVER_2005备份及恢复.ppt
- 如何删除一键GHOST备份文件和“拒绝访问”文件.doc
- 第二章:Java数据及数据运算.ppt
- 如何新建与调用补充定额库.ppt
- 如何用spss17.0进行二元与多元logistic回归分析.doc
- 第二章_数据库与表.ppt
- 2025年8月 在全市防汛工作视频会议上的讲话.docx
- 在2025年市委常委班子集中整治问题整改工作专题会议上的讲话+党课:以过硬作风护航高质量发展以实干担当书写新时代“赶考”答卷.pdf
- 国有企业2025年在“贯彻党中央决策部署和国企改革要求方面、全面从严治党责任落实方面、基层党组织建设方面、巡察整改长效机制建设四个方面”巡察整改专题民主生活会存在的原因分析.docx
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.pdf
- 在理论学习中心组巡视整改专题学习研讨会议上的讲话+在省委巡视反馈问题整改部署会上的讲话+工作领导小组会议上的讲话.pdf
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.docx
- 2025年国企理论学习中心组巡视巡察专题民主生活会会前学习研讨+(2025年四个方面)巡察整改专题民主生活会个人发言提纲.docx
- 局党组、宣传部、纪委监委关于2025年上半年意识形态工作总结及2025年下半年工作打算.pdf
- 4篇 2025年在学习贯彻《中华人民共和国监察法实施条例》研讨交流会上的发言.pdf
- 在市委理论学习中心组中央城市工作会议精神专题学习研讨会上的发言.+关于传达中央城市工作会议精神的讲话提纲.docx
最近下载
- 最新2025年社工(初级)考试题库(+答案).docx VIP
- 体例格式7:工学一体化课程《windows服务器基础配置与局域网组建》任务6学习任务教学活动策划表.docx VIP
- 无陪护理优劣的探讨.doc VIP
- TCALAS 38-2017 实验动物 SPF鸡和SPF鸭饲养管理指南.pdf VIP
- 2024年全国农产品质量安全检测技能竞赛理论知识考试题库(含答案).pdf VIP
- (人教版)数学五年级下册应用题“天天练”400题(第二辑),附参考答案.pdf VIP
- 体例格式7:工学一体化课程《windows服务器基础配置与局域网组建》任务5学习任务教学活动策划表.docx VIP
- 《社区服务与管理》课程标准.docx VIP
- 地理初高中知识衔接课件.pptx VIP
- 高考英语3500词频表.pdf VIP
文档评论(0)