• openssl 证书请求和签名命令req基本分析


      一 基本概念:

    OpenSSL 是一个开源项目,其组成主要包括一下三个组件:

    1. openssl:多用途的命令行工具
    2. libcrypto:加密算法库
    3. libssl:加密模块应用库,实现了ssl及tls

    openssl可以实现:秘钥证书管理、对称加密和非对称加密更多简介和官网。

    平时我们使用openssl最多的莫过于使用指令了,而最为常见的几个指令如下:

    1. genrsa 生成RSA参数
    2. req
    3. x509
    4. rsa
    5. ca

    为了缩短篇幅,突出重点,这里只介绍req和x509的用法:

      二 req

      req的基本功能主要有两个:生成证书请求和生成自签名证书,当然这并不是其全部功能,但是这两个最为常见;

    常见使用方法:

    openssl req [args] outfile

    主要参数:【更多参数查看:openssl req -help】

    args1 是输入输入文件格式:-inform arg
        -inform DER 使用输入文件格式为DER
        -inform PEM 使用输入文件格式为PEM
    args2 输出文件格式:-outform arg   
        -outform DER 使用输出文件格式为DER
        -outform PEM 使用输出文件格式为PEM
    args3 是待处理文件 
        -in inputfilepath
    args4 待输出文件
        -out outputfilepath
    args5 用于签名待生成的请求证书的私钥文件的解密密码
        -passin passwords       
    args6 用于签名待生成的请求证书的私钥文件
        -key file
    args7指定输入密钥的编码格式 -keyform arg  
        -keyform  DER
        -keyform  NET
         -keyform  PEM
    args8 生成新的证书请求 
        -new
    
    args9输出一个X509格式的证书,签名证书时使用 
         -x509          
    args10使用X509签名证书的有效时间  
        -days  // -days 3650 有效期10年
     

    使用的案例:利用私钥生成证书请求csr

    openssl req -new -key server.key -out server.csr

     

    使用案例:利用私钥生成自签名证书

    openssl req -new -x509 -days 3650 -key ca.key -out ca.crt

     

      三 x509

      x509是一个功能很丰富的证书处理工具。可以用来显示证书的内容,转换其格式,给CSR签名等X.509证书的管理工作;

    用法如下:

    openssl x509 [args]

    参数如下:【更多参数查看:openssl x509 -help】

    args1 是输入输入文件格式:-inform arg
        -inform DER 使用输入文件格式为DER
        -inform PEM 使用输入文件格式为PEM
    args2 输出文件格式:-outform arg   
        -outform DER 使用输出文件格式为DER
        -outform PEM 使用输出文件格式为PEM
    args3 是待处理X509证书文件 
        -in inputfilepath
    args4 待输出X509证书文件
        -out outputfilepath
    args5表明输入文件是一个"请求签发证书文件(CSR)",等待进行签发
        -req            
    args6签名证书的有效时间  
        -days  // -days 3650 有效期10年      

      使用实例: 使用根CA证书[ca.crt]和私钥[ca.key]对"请求签发证书"[server.csr]进行签发,生成x509格式证书

    openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out serverx509.crt

     参考文档:

    1 https://segmentfault.com/a/1190000014963014?utm_source=tag-newest

    2 https://blog.csdn.net/yexiangcsdn/article/details/79230576

  • 相关阅读:
    SQL查询Profile设置
    AP如何定义发票的行分配账户的默认值
    使用UTL_MAIL包实现存储过程邮件发送(转)
    如何优化库存管理
    VS2008 一个IDE配色方案
    Rails2的部分新特性
    TDD Tip:方法内部New出来的对象如何Mock
    我的2008
    rails2.2 无法加载mysql的解决
    ASP.NET MVC AJAX的调用
  • 原文地址:https://www.cnblogs.com/dylancao/p/11915517.html
Copyright © 2020-2023  润新知