你好,游客 登录 注册 搜索
背景:
阅读新闻

轻松学会Linux系统下的中文数字证书制做

[日期:2007-10-12] 来源:Linux公社  作者:Linuxidc [字体: ]

  本文讨论在简体中文Linux系统中的Tomcat Web服务器上制作数字证书的方法。
  数字证书采用PKI(Public Key Infrastructure)公开密钥基础架构技术,利用一对互相匹配的密钥进行加密和解密。但在内部系统应用中,不需要专门CA(认证授权中心)的认证证书,可自己建立认证服务器。可以用Windows 2003 Server证书颁发机构作为CA,用Java制作中文申请后向Windows 2003 Server证书颁发机构CA申请证书,这样就可以得到简体中文数字证书了。本文讨论在简体中文Linux系统中的Tomcat Web服务器上制作数字证书的方法。

  证书的产生方法

  在Linux下做CA,必须安装openssl,该软件的最新版本可以从www.openssl.org下载。不过,即使直到最新版本,openssl输入简体中文信息后产生的证书也会显示为乱码。还好,有两个办法可以解决这个问题: 一是修改openssl源程序; 另一个是用UTF-8编码进行处理。由于前一种方法比较复杂,本文主要讨论后一种方法。在输入中文字符时,openssl可以正确处理UTF-8的字符编码,不能处理简体中文的gb2312编码。于是可将简体中文的用户信息输入到配置文件中,再转换为UTF-8编码,生成证书申请时使用配置文件的缺省信息,即可产生正确显示中文的证书。其方法如下:

  1.假设配置文件为openssl.cnf,编辑修改如下内容:

  string_mask=utf8only

  countryName_default=CN stateOrProvinceName_default=省份

  localityName_default=城市 O.organizationName_default=部门

  organizationalUnitName_default=单位 commonName_default=名字

  2.用iconv命令将文件格式转换为UTF-8编码:

  iconv -f gbk -t utf-8 openssl.cnf > openssl_utf8.cnf

  3.用openssl生成证书签名请求时,加上”-utf8”和将配置文件指定为openssl_utf8.cnf:

  openssl req -utf8 -config openssl_utf8.cnf -new -out req.csr

  除了输入密码,其他的一律选择回车,使用显示为乱码的缺省值,就可产生包含正确中文信息的证书申请文件req.csr,这样的申请方式可用于CA和客户证书的申请。Tomcat服务器证书需要生成keystore文件,用Java工具keytool命令生成,安装简体中文版本的Java,可正确生成简体中文的证书申请。

linux
【内容导航】
第1页:轻松学会Linux系统下的中文数字证书制做 第2页:轻松学会Linux系统下的中文数字证书制做
相关资讯       中文数字证书 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款