java生成数字证书_java生成数字证书方法

Java 中生成数字证书也很简单的。 1、创建证书 Java 中的 keytool.exe (位于 JDKBin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存入证书库的中,证书库中的一条证书包含该条证书的私钥,公钥和对应的数字证书的信息。证书库中的一条证书可以导出数字证书文件,数字证书文件只包括主体信息和对应的公钥。 每一个证书库是一个文件组成,它有访问密码,在首次创建时,它会自动生成证书库,并要求指定访问证书库的密码。 在创建证书的的时候,需要填写证书的一些信息和证书对应的私钥密码。这些信息包括 CN=xx,OU=xx,O=xx,L=xx,ST=xx,C=xx,它们的意思是: CN(Common Name - 名字与姓氏) OU(Organization Unit - 组织单位名称) O(Organization - 组织名称) L(Locality - 城市或区域名称) ST(State - 州或省份名称) C(Country - 国家名称) 可以采用交互式让工具提示输入以上信息,也可以采用参数,如:-dname “CN=xx,OU=xx,O=xx,L=xx,ST=xx,C=xx”来自动创建。 如下所示一句采用交互式创建一个证书,指定证书库为 BocsoftKeyLib,创建别名为 TestCertification 的一条证书,它指定用 RSA 算法生成,且指定密钥长度为 1024,证书有效期为 1 年: C:JDK1.4BinKeyStore>keytool -genkey -alias TestCertification -keyalg RSA -keysize 1024 -keystore BocsoftKeyLib -validity 365 2.证书的操作 1)证书的显示 使用如下命令: keytool –list –keystore BocsoftKeyLib 将显示 BocsoftKeyLib 证书库的的所有证书列表: 将证书导出到证书文件 使用命令:keytool -export -alias TestCertification -file TC.cer -keystore BocsoftKeyLib 将把证书库 BocsoftKeyLib 中的别名为 TestCertification 的证书导出到 TC.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。 导出的证书文件是以二进制编码文件,无法用文本编辑器正确显示,可以加上 -rfc参数以一种可打印的编者编码输出。 如: keytool -export -alias TestCertification -file TC.cer -keystore BocsoftKeyLib -storepass 123456 –rfc 这个命令在命令行中指定了证书库的访问密码,同时指定以可查看编码的方式输出。 2)通过证书文件查看证书的信息 通过命令: keytool –printcert –file TC.cer 可以查看证书文件的信息。 也可以在 Windows 资源管理器中双击产生的证书文件直接查看。 3)证书条目的删除 keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias TestCertification -keystore BocsoftKeyLib,这条命令将 BocsoftKeyLib 库中的 TestCertification 这一条证书删除了。 4)证书条目口令的修改 使用 -keypasswd 参数,如:keytool –keypasswd –alias TestCertification –keystore BocsoftKeyLib,可以以交互的方式修改 BocsoftKeyLib 证书库中的条目为 TestCertification 的证书。 Keytool –keypasswd –alias TestCertification –keypass 654321 –new 123456 –storepass 888888 –keystore BocsoftKeyLib 这一行命令以非交互式的方式修改库中别名为 TestCertification 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值