我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:爱彩网 > 二级密钥 >

java 证书工具keytool生成自签名证书和自签CA

归档日期:06-06       文本归类:二级密钥      文章编辑:爱尚语录

  jdk自带的证书管理工具叫keytool,在jdk/bin目录下,可以用来生成自签名证书、导入导出证书、打印证书信息等。

  自签名证书:用自己的私钥签发自己的公钥即主体信息生成的证书。 证书签名:对证书固定值进行hash后用密钥对中的私钥对hash值加密 keystore: keytool生成证书的存储库,用来存储若干条目,每一条目包含公私钥,主体信息等。默认为用户目录下.keystore,相当于一个有密码保护的文件。 truststore: 与keystore格式相同,但是为区分只用来存放信任的证书,不存密钥等信息。 der:证书编码格式,证书结构体转换为二进制格式。 pem:证书编码格式,对der二进制编码的base64字符,包含---begin---,----end----。// 命令中加-rfc可打印和生成此类文件 .csr:证书请求文件格式,包含公钥和主体信息,发给ca,ca用私钥对内容签名并制作成证书返回。keytool在生成csr文件时需要指定证书(即公钥与主体信息)。 .crt:一般用于linux系统的证书格式,包含公钥和主体信息。 .cer:一般用于windows的证书文件格式,包含公钥和主体信息。 .p12:证书交换格式,包含公钥私钥(私用密码加密),用于交换传输。

  可以以一个完整例子来了解keytool命令。在socket或http协议传输数据时,如需加密传输会话内容,会在TCP上加上ssl/tls,http则改为https协议。此时服务端需要给客户端提供证书以供客户端验证并协商会话密钥,如果没有正规CA签发的证书,则需自签名。

  客户端用签发证书的根证书验证,如果是自签名一级证书,则客户端需内置此自签名证书,如果是自签名二级证书,则用签发它的跟证书验证

  输入密钥库密码和本条目密码都为123456,以及其他主体信息会生成密钥对保存在teststore.jks中。公钥以证书格式保存,带有主体信息。此时证书库中可以看到公钥信息(私钥无法打印)

  第一条主体信息:您的姓名与姓氏中填入服务器域名的完整信息而非name,如:。

  现在可以将此证书分发给客户端了,客户端做相应配置,验证域名或直接跳过验证(因为是用它自身公钥验证,不能保证安全性,一般默认信任),使用此证书与服务端交换随机数。

  再看下刚才根据此条目导出的自签证书,导出后已经包含了公钥等其他信息形成了完整证书,但注意verifiedby字段还是自己

  用keystore中golove条目生成了证书签名请求文件temp_go_love.csr,内包含golove条目的公钥和主体信息,将证书签名请求文件发给正规CA,CA用私钥对公钥和信息签名后制作成证书文件返回就可以使用了。正规CA的公钥浏览器内置,所以此时浏览器可以验签名成功。

  但我们要自己模拟CA签发二级证书,CA也是要有公私钥对,所以先生成CA密钥对。

  -使用CA证书给golove证书签名,即用CA的私钥签名后与golove的公钥生成一个证书

  可以看到签发者已经变成root,公钥等其他信息不变,但签名值变了,说明已经用新的私钥(root私钥)替换原有(golove)签名,在证书信任连上序号为2,此即二级证书。

  再次打印证书库中条目列表可以看到别名为golovet的条目证书链变为2,发布者变为root.

  此时可以将root证书导出给客户端内置,服务端绑定二级证书,这样客户端验证时可以用根证书验证二级证书。其实大部分程序直接使用一级的自签名证书即可,但若需要双向验证,服务端验证客户端时不同客户端最好使用服务端的rootca私钥来签发,这样服务端可以直接用一个rootca的证书验证。实现了动态扩展且客户端的证书不同。

  -为了区分teststore,可以新建一个只放信任证书,不存储密钥的仓库。将刚才的rootca证书和golove二级证书导入一个新仓库(如果为了方便,也可以直接用一个密钥库,不需要此库)

  还有一个问题,keytool不能打印出密钥对中的私钥,用-list查看密钥库列表也没有完整的私钥信息。要获取私钥,可以在java程序中加载密钥库,用jdk KeyStore类的相关方法获取到公私钥信息,然后做加解密的验证等。

  本文转载,出处如下:数字证书原理 文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成数字证书...

  数字证书就是网络通讯中标志通讯各方身份信息的一系列数据,其作用类似于现实生活中的身份证。它是由一个权威机构发行的,人们可以在互联网上用它来识别对方的身份。 证书的格式遵循ITUTX.509国际标准 一个标准的X.509数字证书包含以下一些内容: 证书的版本信息; 证书的序列...

  本文作者:千花坊 千花坊刚开始专职写作的时候,父母都不太同意。尤其是我母亲,一哭二闹三上吊,说家门不幸出了一个叛逆女,要和我断绝关系。我父亲则持观望态度,跟我说:“你勤快一点,要每天写。不行了就好好找个工作。” 后来千花坊的稿费收入超过了家里同辈的所有亲戚,一次又一次给家里...

  87年未婚,太原人,身高175,活泼开朗,热爱运动,车房全,从事金融行业,素食主义者,觅善良,贤惠,通情达理,有爱心,有孝心姑娘为伴。

  第一章 哈勃望远镜事故 主要内容: 1、哈勃望远镜,引以为傲的0.007秒角稳定度系统(17亿美元) 2、事故的社会影响,笑柄、优秀员工的离世。 3、事故调查报告,惊人的结论:领导失职 A 我关注的内容: 艾伦将军坚持不懈的调查,揭秘事故背后的线 我的情绪:太...

  01 大喊“”的爷爷 上周五骑车路过一处红灯,看到交警在查逆行以及电动车带人。有些人没来得及“跑掉”,被交警抓个正着,在红灯的一侧等候处罚。 此时正是红灯,我和其他人一样都在等候,只听到后面一个大爷喊道“吗?还逮人罚钱?”他声音很大,我怀疑对面的人都能听到。 交...

本文链接:http://pikeducation.com/erjimiyue/333.html