首页 > 代码库 > 用XCA(X Certificate and key management)可视化程序管理SSL 证书(2)--生成SSL证书请求
用XCA(X Certificate and key management)可视化程序管理SSL 证书(2)--生成SSL证书请求
在上个章节中,我们提到了如何安装XCA(X Certificate and key management)程序,这个章节我们开始正式介绍如何用XCA生成证书请求。如果大家用过java的话,肯定知道jdk默认提供了一个工具叫做:keytool,这个工具我们能够从java的安装目录下找到,比如我本机就在:C:\Program Files (x86)\Java\jre7\bin; 但是这个工具因为使用的是命令行,不是特别的直观,所以我在本章节给大家演示一下如何用XCA来生成证书请求。具体步骤如下:
步骤一: 打开XCA
步骤二:如果是第一次打开,请点击 File-->New Database
步骤三:选择证书数据存储的位置并命名存储文件的名字。
步骤四: 设置密码保护证书数据
步骤五: 鼠标点击到“Certificate Signing Request” 分页,并点击右边的“New Request”,将弹出下面的窗体
步骤六:“Source” 标签页保持不变,用默认的模板即可,点击“Subject”标签页,输入证书的信息,比如内部名,组织名,组织单元名字,国家名,省份以及通用名字。一般内部名和通用名字填一样,而且通用名一般都需要填写,因为这个是用来标示当前证书在你的组织内部的唯一性;一般组织名和组织单元名一般和你的公司和部门相吻合,比如,你属于ibm的信息部(IT部门),那么你的组织名(organizationName)可以填写成:ibm,你的organizationUnitName可以填写成it,通用名(common name)和内部 名字取决你证书的用途,主要用来描述你证书的功能和用途的。我的这个例子中,只是我测试用的,所以我写成henrytest。
步骤七. 生成保护证书的秘钥:因为我们是生成证书请求,那么我们需要生成一个证书对,即私钥和共钥,上面步骤六生成的信息是
在公钥中可以看到的,
(1) 如果这个证书将来会用到公网的服务器上去,那么这个证书请求需要发送到第三方得到权威机构(Certificate Authentication)
进行签名,就好比我们需要把我们的户口本拿到当地公安局去办身份证一样,你可以拿这个身份证去买火车票,去办银行卡,第三方的机构承认,因为是公安局办的,是大家都承认的第三方权威机构办的,这时的公安局就相当于我们SSL证书的颁发机构,当前业界比较权威就是Thawte,Verisign公司等;
(2) 如果这个证书只是企业或者组织内部使用,一般用自己组织内部或者个人认可的证书中心去签名即可,我们会在下一个章节提到如何进行自签名,这就好比你那着你的劳动合同去公司申请工牌一样,你这个工牌只能在你组织或者公司内部使用,你不能拿你的工牌去做火车,道理一样的。
那么私钥是做什么的呢?私钥就是用来保护信息用的,因为我们一般把公钥告诉别人,让别人用我们的公钥去加密数据,然后不告诉别人我们的私钥,这样别人用我们的公钥加密的数据,只有我们自己能解密开,因为默认情况下,私钥只有我们自己知道;所以这个私钥一定要保护好,而且必须有密码器保护,这就是为什么我们在步骤四需要设置密码的原因了。
步骤八.在subject标签页的右下方点击“OK”按钮,这个是私钥和证书请求就都创建好了。
步骤九, 查看证书信息: 在“Certificate Signing Request”标签页,选择你申请的证书,然后双击,将会弹出一个页面,点击“Subject”标签页,
将会看到证书的基本信息。
步骤十 查看私钥基本信息:点击“Private keys” 标签页面,我们将会看到我们创建的私钥匙的信息。
恭喜你,你的证书请求顺利并成功的创建完成,很晚了,该工作了一天,改放松休息一下了。下个章节我将会继续和大家分享,如何创建一个
自签名的根证书去签名当前的证书请求,请大家继续关注我的博客。