运行keytool来产生服务器的keystore,我们把它取名为server-key-store.jks。这一步使用别名server-alias来产生一个新的公钥和私钥对,并把公钥打包入server-keystore.jks的一个self-signed证书中。这个密钥对是用RSA算法和一个默认的changeit密码产生的。要获得更多关于keytool选项的信息,请查阅它的在线帮助,地址是
http://java.sun.com/j2ee/1.4.2/docs/tooldocs/solaris/keytool.html。
在你想创建keystore的目录下带着下面的参数运行keytool。当你按下Enter时,keytool提示你输入服务器名字,组织单位,组织,位置,国家,国家编码。注意你必须输入服务器的名字在对keytool的第一个提示的应答中,它需要first和last name。抱着试验的目的,可以是localhost。keystore中指定的主机必须与定义在主机变量<INSTALL>/j2eetutorial14/examples/common/buid.properties中的匹配。
1.产生服务器证书。
<JAVA_HOME>\bin\keytool -genkey -alias server-alias-keyalg RSA -keypass changeit -storepass changeit-keystore keystore.jks
2.把 keystore.jks中产生的证书导出到文件server.cer中。
<JAVA_HOME>\bin\keytool -export -alias server-alias
-storepass changeit -file server.cer -keystore keystore.jks
3.如果你想要拥有一个CA签发的证书,请阅读Signing Digital Certificates(page 937)获得更多信息。
4.要创建trust-store文件cacerts.jks并把服务器证书添加到这个trust-store中,就要在你创建keystore和服务器证书的目录下以如下的参数运行keytool。
<JAVA_HOME>\bin\keytool -import -v -trustcacerts
-alias server-alias -file server.cer
-keystore cacerts.jks -keypass changeit
-storepass changeit
证书的信息,比如下面展示的将显示出来。
<INSTALL>/j2eetutorial14/examples/gs 60% keytool -import
-v -trustcacerts -alias server-alias -file server.cer
-keystore cacerts.jks -keypass changeit -storepass changeit
Owner: CN=localhost, OU=Sun Micro, O=Docs, L=
ST=CA, C=US
Issuer: CN=localhost, OU=Sun Micro, O=Docs, L=
ST=CA, C=US
Serial number: 3e932169
Valid from: Tue Apr 08
Certificate fingERPrints:
MD5: 52:
SHA1: EE:2E:
Trust this certificate? [no]:
5.输入yes,然后敲击Enter或者Return键。将出现如下的信息。
Certificate was added to keystore
[Saving cacerts.jks]
签发数字证书
一旦你创建了数字证书,你会想让它被它的所有者签名。一旦数字证书被它的所有者加密签名,他就很难被其他人伪造。对于电 子商务的网站或者其他身份认证很重要的商业事务中,证书可以向著名的证书授权机构(CA)比如Verisign或者Thawte购买。
如果认证不是很重要,比如如果administrator只是想简单的确认被服务器传输和接收的数据是私有的并且不会别其他监听该连接的偷听到,你可以简单地通过使用self-signed证书来节省购买CA证书所需的时间和花费。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




