最近在研究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.输入:

然后输入密码(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高性能网络的开发,有兴趣的同学可以关注一下。

使用keytool生成ssl密钥文件keystore和truststore的更多相关文章

  1. java keytool生成ssl加密密钥

    教程:http://www.cnblogs.com/getherBlog/p/3930317.html 其中用到几个命令: keytool -genkeypair -alias certificate ...

  2. 生成ssl证书文件

    网上关于生成SSL证书文件的方法有很多,但我查了几个,发现有或多或少的错误,如下我图文并茂的展示,亲测无任何问题,分享给大家,谢谢. 1.创建根证书密钥文件(自己做CA)root.key openss ...

  3. 使用keytool生成ssl证书

    使用keytool生成ssl证书 在项目中由于要使用https访问项目,然后了解到jdk有一个自带的工具keytool可以用来生成ssl证书,从而可以通过https进行访问. 使用keytool生成s ...

  4. 034_非交互自动生成 SSH 密钥文件

    #!/bin/bash#-t 指定 SSH 密钥的算法为 RSA 算法;-N 设置密钥的密码为空;-f 指定生成的密钥文件存放在哪里 rm -rf ~/.ssh/{known_hosts,id_rsa ...

  5. JDK自带工具keytool生成ssl证书

    前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全. 百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具: ...

  6. 生成ssl脚本文件

    read -p "Enter your domain [www.example.com]: " DOMAIN echo "Create server key...&quo ...

  7. 利用JDK自带的keytool生成SSL证书然后导入到SpringBoot

    一:生成命令如下(这一步生成的暂不知道干嘛用的) E:\Desktop\Documents\证书>keytool -genkey -alias tomcat -keypass - -validi ...

  8. 使用jdk生成ssl证书文件

    java自带有 ssl 证书生成的工具, 在 /bin/keytools.exe 需要确认已经正确配置JAVA_HOME的环境变量 生成服务端证书: keytool -genkey -v -alias ...

  9. JDK自带工具keytool生成ssl证书 和 HTTPS双向认证

    创建证书(第一步) keytool -genkey -alias "baidu" -keypass "123456" -keystore "D:/ba ...

随机推荐

  1. 【刷题】BZOJ 1468 Tree

    Description 给你一棵TREE,以及这棵树上边的距离.问有多少对点它们两者间的距离小于等于K Input N(n<=40000) 接下来n-1行边描述管道,按照题目中写的输入 接下来是 ...

  2. TCP/IP协议详解---概述

        工作之后,才发现以前在学校里学的东西忘得太快太干净了,现在需要一点点地捡起来了,要不然写几行程序会闹很多笑话会出现很多bug的.从今天开始,翻一翻<TCP/IP协议详解 卷1>这本 ...

  3. 【BZOJ1226】学校食堂(动态规划,状态压缩)

    [BZOJ1226]学校食堂(动态规划,状态压缩) 题面 BZOJ 洛谷 题解 发现\(b\)很小,意味着当前这个人最坏情况下也只有后面的一小部分人在他前面拿到饭. 所以整个结果的大致顺序是不会变化的 ...

  4. 【BZOJ4943】【NOI2017】蚯蚓排队(哈希)

    [BZOJ4943][NOI2017]蚯蚓排队(哈希) 题面 BZOJ 洛谷 UOJ 题解 记得去年看网络同步赛的时候是一脸懵逼的. 昨天看到\(zsy\)做了,今天就看了看.. 这不是\(Hash\ ...

  5. CSS截取中英文混合字符串长度

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  6. SVN跨服务器自动更新--实现文件分发

    目标:SVN版本库提交,服务器中的工作拷贝能自动update. 实现方法:subversion, curl,php脚本实现,并且入mysql库来进行管理.改hosts文件来进行访问!提交触发钩子脚本时 ...

  7. spark streaming (二)

    一.基础核心概念 1.StreamingContext详解 (一) 有两种创建StreamingContext的方式:             val conf = new SparkConf().s ...

  8. 【二维树状数组】【CF10D】 LCIS

    传送门 Description 给你两个串,求他们的最长公共上升子序列 Input 第一行是第一个串的长度\(n\) 第二行\(n\)个数代表第一个串 第三行是第二个串的长度\(m\) 第四行\(m\ ...

  9. mac和linux下sed使用的不同

    http://note.youdao.com/noteshare?id=84a6a0eb3e3f1698c9de4f48db24226e

  10. spring整合hibernate时报错:org.hibernte.engine.transaction.spi.transactioncontext

    错误提示:Caused by:java.lang.ClassNotFoundException: org.hibernte.engine.transaction.spi.transactioncont ...