SSL通关之keytool 命令(三)

关于命令的详细介绍,后期补上。时间紧迫,见谅。

单向验证成功:

1、生产服务器端证书:

keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore D:\ssl\bks\server.jks -dname "CN=10.100.100.24,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

2、导出证书

keytool -exportcert -v -alias server -keystore D:\ssl\bks\server.jks -storepass 123456 -rfc -file D:\ssl\bks\server.cert

3、生产Android可用的客户端证书

keytool -importcert -keystore D:\ssl\bks\client.bks -file D:\ssl\bks\server.cert -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider  -storepass 123456

四、同一个server,两份不同的client证书,双向认证成功:

双向(Android)验证成功

keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore D:\ssl\server.keystore -dname "CN=10.100.100.24,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

keytool -validity 365 -genkeypair -v -alias client-bks -keyalg RSA -storetype BKS -keystore D:\ssl\client-bks.bks -dname "CN=client,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

keytool -export -v -alias client-bks -keystore D:\ssl\client-bks.bks -storetype BKS -storepass 123456 -rfc -file D:\ssl\client-bks.crt

keytool -export -v -alias server -keystore D:\ssl\server.keystore -storepass 123456 -rfc -file D:\ssl\server.crt

keytool -importcert -keystore D:\ssl\client-bks-trust.bks -file D:\ssl\server.crt -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider  -storepass 123456

keytool -import -v -alias client-bks -file D:\ssl\client-bks.crt -keystore D:\ssl\server.keystore -storepass 123456

ios:双向验证成功

keytool -validity 365 -genkeypair -v -alias client-ios -keyalg RSA -storetype PKCS12 -keystore D:\ssl\client-ios.p12 -dname "CN=client-ios,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

keytool -export -v -alias client-ios -keystore D:\ssl\client-ios.p12 -storetype PKCS12 -storepass 123456 -rfc -file D:\ssl\client-ios.cer -provider org.bouncycastle.jce.provider.BouncyCastleProvider -storepass 123456

keytool -export -v -alias server -keystore D:\ssl\server.keystore -storepass 123456 -rfc -file D:\ssl\server-ios.cer

keytool -import -v -alias server -file D:\ssl\server-ios.cer -keystore D:\ssl\client-ios.truststore -storepass 123456

keytool -import -v -alias client-ios -file D:\ssl\client-ios.cer -keystore D:\ssl\server.keystore -storepass 123456

五、

ios-jks:双向成功

keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore D:\ssl\ios-jks\server.keystore -dname "CN=10.100.100.24,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

keytool -validity 365 -genkeypair -v -alias client -keyalg RSA -storetype PKCS12 -keystore D:\ssl\ios-jks\client.p12 -dname "CN=client,OU=sengled,O=sengled,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456

keytool -export -v -alias client -keystore D:\ssl\ios-jks\client.p12 -storetype PKCS12 -storepass 123456 -rfc -file D:\ssl\ios-jks\client.cer -provider org.bouncycastle.jce.provider.BouncyCastleProvider -storepass 123456

keytool -export -v -alias server -keystore D:\ssl\ios-jks\server.keystore -storepass 123456 -rfc -file D:\ssl\ios-jks\server.cer

keytool -import -v -alias server -file D:\ssl\ios-jks\server.cer -keystore D:\ssl\ios-jks\client.truststore -storepass 123456

keytool -import -v -alias client -file D:\ssl\ios-jks\client.cer -keystore D:\ssl\ios-jks\server.keystore -storepass 123456

时间: 2024-07-31 14:25:57

SSL通关之keytool 命令(三)的相关文章

常用Keytool 命令

常用Keytool 命令Keytool 是一个JAVA环境下的安全钥匙与证书的管理工具.它管理一个存储了私有钥匙和验证相应公共钥匙的与它们相关联的X.509 证书链的keystore(相当一个数据库,里面可存放多个X.509标准的证书). Keytool 常用命令:检查一个keystore keytool -list -v -keystore c:\server.jks 检查一个keystore的内容 keytool -list -v -keystore c:\server.jks 添加一个信任

linux生成自验证ssl证书的具体命令和步骤

1.首先要生成服务器端的私钥(key文件):    openssl genrsa -des3 -out server.key 1024 2.去除key文件口令的命令:    openssl rsa -in server.key -out server.key 3.生成服务端证书    openssl req -new -key server.key -out server.csr -config /etc/ssl/openssl.cnf 4.对客户端也作同样的命令生成key及csr文件:   

数字证书中keytool命令使用说明

这个命令一般在JDK\jre\lib\security\目录下操作 keytool常用命令 -alias       产生别名 -keystore    指定密钥库的名称(就像数据库一样的证书库,可以有很多个证书,cacerts这个文件是jre自带的,              你也可以使用其它文件名字,如果没有这个文件名字,它会创建这样一个) -storepass   指定密钥库的密码 -keypass     指定别名条目的密码 -list        显示密钥库中的证书信息 -v    

Linux常用命令(三十) - cal

cal命令可以用来显示公历(阳历)日历.公历是现在国际通用的历法,又称格列历,通称阳历."阳历"又名"太阳历",系以地球绕行太阳一周为一年,为西方各国所通用,故又名"西历". 1.命令格式: cal [参数][月份][年份] 2.命令功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份 3.命令参数: -1 显示一个月的月历 -3 显示系统前一个月,当前月,下一个月的月历 -s  显示星期天为

Linux常用命令(三十一) - grep

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板.如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名.搜索的结果被送到标准输出,不影响原文件内容. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成

Linux常用命令(三十二) - wc

Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: 统计指定文件中的字节数.字数.行数,并将统计结果显示输出.该命令统计指定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给出所指定文件的总统计数. 3.命令参数: -c 统计字节数. -l 统计行数. -m 统计字符数.这个标志不能与 -c 标志一起使用. -w 统计字数.一个字被定义为由空白.

python 调用shell命令三种方法

#!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里. python调用shell命令的方法有许多 1.1   os.system(command) 在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态.这实际上是使用C标准库函数system()实现的.这个函数在执行comman

ssl通关的概念(一个)

在公司最近的项目涉及多种加密.安全.我一直在这方面缺乏经验.很协议仅仅知道是什么概念.用于传输的加密SSL,也煞费苦心.非常easy一件事,折腾了很长一段时间.IT该行啊,真的是.难者不会,与会者困难. 关于ssl相关的概念.參考下面网址: http://zhidao.baidu.com/question/327361625.html?pn=0 http://baike.baidu.com/view/16147.htm? fr=aladdin#3 http://baike.baidu.com/l

Linux 命令三

1.新建用户账号 Useradd  - 参数 新建的的用户名 参数说明: -c <备注> 加上备注文字.备注文字会保存在passwd的备注栏位中. -d <登入目录> 指定用户登入时的启始目录. -e<有效期限> 指定帐号的有效期限.时间格式:yyyy-mm-dd -f<缓冲天数> 指定在密码过期后多少天即关闭该帐号. -g<群组> 指定用户所属的群组. -G<群组> 指定用户所属的附加群组. -m 自动建立用户的登入目录. -M 不