网上有非常多的相关教程,均大同小异。有些博主写得过于细致,有些又写得过于粗枝大叶。正好这次在工作中又需要进行RSA非对称的相关开发,所以自己整理一遍。
1、工具
Java自带的工具keytool可以用来生成密钥证书,也可以查看或删除证书库里的证书。无论是windows还是Linux系统,这个工具都会出现在jdk安装目录的bin文件夹下
下图是在linux环境下,在bin目录下的所有文件:

2、概念
keytool工具是基于“证书库”来对密钥进行管理的。“证书库”是一个后缀名为“.keystore”的文件。如下图:

在密钥库中,每一条记录就是一份独立的证书,如果使用RSA算法,那这份证书里就会包含有私钥和公钥,如下图:

keytool工具有很多命令,无论是在windows还是在linux中,你都可以在命令行中输入“keytool”来查看这个工具的用法概述: