激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java如何基于command調用openssl生成私鑰證書

Java如何基于command調用openssl生成私鑰證書

2020-08-05 12:20護花使者 Java教程

這篇文章主要介紹了Java如何基于command調用openssl生成私鑰證書,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

在windows環境下進行的測試,前提條件,windows上需要先安裝openssl

配置環境變量,查看版本:

Java如何基于command調用openssl生成私鑰證書

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import java.io.*;
import java.util.Properties;
 
public class OpensslCommand {
  private static void runCMD(String[] CMD) {
    java.lang.Process process = null;
    try {
      process = Runtime.getRuntime().exec(CMD);
      ByteArrayOutputStream resultOutStream = new ByteArrayOutputStream();
      InputStream errorInStream = new BufferedInputStream(process.getErrorStream());
      InputStream processInStream = new BufferedInputStream(process.getInputStream());
      int num = 0;
      byte[] bs = new byte[1024];
      while ((num = errorInStream.read(bs)) != -1) {
        resultOutStream.write(bs, 0, num);
      }
      while ((num = processInStream.read(bs)) != -1) {
        resultOutStream.write(bs, 0, num);
      }
      String result = new String(resultOutStream.toByteArray(), "gbk");
      System.out.println(result);
      errorInStream.close();
      processInStream.close();
      resultOutStream.close();
    } catch (IOException e) {
      e.printStackTrace();
    } finally {
      if (process != null) process.destroy();
    }
  }
  public static void main(String[] args) throws Exception {
    //需要指定openssl.exe路徑
    //java生成私鑰
    String[] cmdPrivateKey = {"cmd", "/C", "C:\\soft\\OpenSSL-Win64\\bin\\openssl.exe genrsa -out ca.key 2048"};
    //java生成證書請求
    String[] cmdCertificationReq = {"cmd", "/C", "C:\\soft\\OpenSSL-Win64\\bin\\openssl.exe req -new -key ca.key -out ca.csr -subj /C=CN"};
    //java生成證書
    String[] cmdCertification = {"cmd", "/C", "C:\\soft\\OpenSSL-Win64\\bin\\openssl.exe x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt"};
    runCMD(cmdPrivateKey);
    runCMD(cmdCertificationReq);
    runCMD(cmdCertification);
    Properties props=System.getProperties(); //系統屬性
    System.out.println("用戶的當前工作目錄:"+props.getProperty("user.dir"));
  }
}

對應目錄下可以生成:

Java如何基于command調用openssl生成私鑰證書

其中,ca.crt是自簽名證書文件。ca.key是私鑰。ca.csr只是生成證書的中間請求,是用來指定一些信息,這邊只指定國家為CN。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/chenmz1995/p/13401450.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 羞羞视频免费观看网站 | 国产九九热 | 久久久久久99 | 性欧美日本 | 毛片免费在线观看 | 色婷婷久久一区二区 | 日韩av电影在线免费观看 | 国产精品自拍啪啪 | 欧美日韩亚洲视频 | 欧洲精品色 | 欧美日韩精品不卡一区二区三区 | xnxx 日本免费 | 羞羞羞网站 | 亚欧在线免费观看 | 欧美亚洲一级 | 久久蜜桃香蕉精品一区二区三区 | 精品一区二区亚洲 | 欧美视频一区二区三区在线观看 | 久久老司机精品视频 | 日韩黄色片免费看 | 国产高潮失禁喷水爽到抽搐视频 | 成人毛片视频在线观看 | av免费在线观看免费 | 国产精品一二三区在线观看 | 一级大黄毛片免费观看 | 国产影视| 激情久久免费视频 | 国产精品久久久久久影院8一贰佰 | 一本一道久久久a久久久精品91 | 91不雅视频| 在线播放免费播放av片 | 亚洲操比视频 | 国产欧美日韩视频在线观看 | 欧美成人高清视频 | 一区二区三区四区视频在线观看 | 免费观看视频在线观看 | www.com黄 | 久久久一区二区 | 日本成人午夜视频 | 日韩毛片免费观看 | 日本成年免费网站 |