最近在研究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高性能网络的开发,有兴趣的同学可以关注一下。
时间: 2024-10-10 08:27:39