使用keytool生成ssl密钥文件keystore和truststore

最近在研究Mina的开发,通信的时候需要数据加密,而且mina本身支持SSLFilter过滤器,所以可以采用SSL加密的方式对数据进行加密。


在进行加密之前,我们需要使用keytool(这个存在于C:\Program Files\Java\jdk1.7.0_65\bin目录下)产生创建keystore和truststore文件。接下来我会为你介绍生成密钥的方法。

1.打开cmd命令提示符(一定要以管理员身份运行,否则会出现keytool 错误:java.io.FileNotFoundException: MyAndroidKey.keystore (拒绝访问).的错误),转到keytool所在路径 下,我的是在C:\Program Files\Java\jdk1.7.0_65\bin;



2.输入:

keytool -genkeypair -alias certificatekey -keyalg RSA -validity 7 - keystore keystore.jks   

然后输入密码(123456),这个密码一定要记住。最后输入以下的信息,如下图:

3.导出凭证文件 

keytool -export -alias certificatekey -keystore keystore.jks -rfc -file selfcert.cer
 

这时会让你输入刚才的密码(我的是:123456),然后它会提示你保存到了selfcert.cer 文件中,在jd k/bin目录下我们可以找到这个文件。结果如下图:

 
 

4.将凭证文件 导入到truststore文件 

 
 

5.到此为止使用keytool创建keystore和truststore的工作已经完成了,接下来你可以在jdk/bin目录下找到 我们所需要的keystore.jks和truststore.jks文件

 
 

PS:在接下来的几天内,我会更新Mina高性能网络的开发,有兴趣的同学可以关注一下。

原文地址:https://www.cnblogs.com/getherBlog/p/3930317.html