JDK生成HTTPS证书

1,进入JDK的bin目录下

JDK生成HTTPS证书_第1张图片

2,打开命令窗口,地址栏输入cmd,回车

JDK生成HTTPS证书_第2张图片

JDK生成HTTPS证书_第3张图片

3,输入生成证书命令,输入提示信息,提示内容如下图

keytool -genkey -alias tomcathttps -keyalg RSA -keysize 2048 -keystore bank.p -validity 365

JDK生成HTTPS证书_第4张图片

4,查看生成的bank.p文件

JDK生成HTTPS证书_第5张图片

5,把生成的证书文件拷贝到项目的根目录下,也可以放到项目的指定目录,默认会找  项目名\证书文件名,例:(E:\JetBrains\IdeaProjects\chatroom\bank.p)

此案例放在了resource文件下

JDK生成HTTPS证书_第6张图片

6,在application.yml中做如下配置

server:
  port: 8000
  ssl:
    key-store: src\main\resources\bank.p
    key-alias: tomcathttps
    key-store-password: 123456

8,控制层代码

@RestController
@RequestMapping("/api")
public class LoginController {
    @RequestMapping("/v1/user/login")
    public R list(){
        System.out.println("访问成功....");
        return R.ok().put("data", "哈哈,成功了!");
    }
}

9,启动服务测试 https://localhost:8000/api/v1/user/login

JDK生成HTTPS证书_第7张图片

JDK生成HTTPS证书_第8张图片

如果出现下列提示直接让他通过即可

JDK生成HTTPS证书_第9张图片

JDK生成HTTPS证书_第10张图片

JDK生成HTTPS证书_第11张图片

命令解释:

• -genkey 表示要创建一个新的密钥。 

• -alias 表示 keystore 的别名。 

• -keyalg 表示使用的加密算法是 RSA, 一种非对称加密算法. 

• -keysize 表示密钥的长度. 

• -keystore 表示生成的密钥存放位直。 

• -validity 表示密钥的有效时间,单位为天

代码解释:

• key-store 表示密钥文件名 。 

• key-alias 表示密钥别名。 

• key-store-password 就是在 cmd 命令执行过程中输入的密码

 

你可能感兴趣的:(通信,https,java,ssl)