keystore生成是一个密码保护的文件存放私钥和证书。可以通过JDK自带的keytool工具生成
但是keytool工具,并没有提供方便的方法从keystore生成文件中到处私钥和证书。
当客户端(服务请求方)向服务端(服務提供方)发起请求时,服务器端需要向客户端提供认证服务端需要生成一个keystore生成和一个服务器密钥对儿(公钥和私钥),客户端需要生成一个truststore,然後导入服务端的公钥证书。
在配置的过程中参考了网上大量的链接,有些链接没有做记录恕不一一列举
背景:本端设备与对端设备进行socket通信采用SSL双向认证,用的mina组件
比较简单,可以通过keytool工具用对端的证书文件(比如server.cer)来生成:
用keytool命令直接生成,比如:
我理解这样楿当于同时生成了证书和私钥,存储到my.keystore生成里(不知道这样理解对不对?)
对于trust.keystore生成倒没什么疑问,但是my.keystore生成的生成有问题啊: 产品商用的时候肯定不能用keytool这样生成一个keystore生成直接用吧,肯定要用正规途径获得的证书文件和私钥比如当前就是my.cer和my_key.pem两个文件。
要命的是keytool笁具并没有合并证书和私钥文件的方法,因为keytool -import命令只能指定证书文件没有指定私钥文件的参数。