• (备忘)openssl的证书格式转换


    PKCS 全称是 Public-Key
    Cryptography Standards
    ,是由 RSA 实验室与其它安全系统开发商为促进公钥密码的发展而制订的一系列标准,PKCS 目前共发布过 15 个标准。 常用的有:

    PKCS#7 Cryptographic Message Syntax Standard

    PKCS#10 Certification Request Standard

    PKCS#12 Personal Information Exchange Syntax Standard

    X.509
    是常见通用的证书格式。所有的证书都符合为Public Key
    Infrastructure (PKI)
    制定的 ITU-T X509 国际标准。

    PKCS#7
    常用的后缀是: .P7B .P7C .SPC

    PKCS#12
    常用的后缀有: .P12 .PFX

    X.509 DER
    编码(ASCII)的后缀是: .DER .CER .CRT

    X.509 PAM
    编码(Base64)的后缀是: .PEM .CER .CRT

    .cer/.crt
    是用于存放证书,它是2进制形式存放的,不含私钥。

    .pem
    crt/cer的区别是它以Ascii来表示。

    pfx/p12
    用于存放个人证书/私钥,他通常包含保护密码,2进制方式

    p10
    是证书请求

    p7r
    CA对证书请求的回复,只用于导入

    p7b
    以树状展示证书链(certificate
    chain)
    ,同时也支持单个证书,不含私钥。



    1. CA证书



    openssl创建CA证书的RSA密钥(PEM格式)



    openssl genrsa -des3 -out ca.key 1024       



    2. 创建CA证书有效期为一年



    openssl创建CA证书(PEM格式,假如有效期为一年)



    openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config
    openssl.cnf       



    openssl是可以生成DER格式的CA证书的,最好用IEPEM格式的CA证书转换成DER格式的CA证书。



    将生成的crt格式证书导入到IE,再导出就是cer格式了



    3. x509转换为pfx



    openssl pkcs12 -export -out server.pfx -inkey server.key -in
    server.crt    



    4. PEM格式的ca.key转换为Microsoft可以识别的pvk格式



    pvk -in ca.key -out ca.pvk -nocrypt -topvk       



    5. PKCS#12 PEM 的转换



    openssl pkcs12 -nocerts -nodes -in cert.p12 -out private.pem 验证   openssl
    pkcs12 -clcerts -nokeys -in cert.p12 -out cert.pem       



    6. PFX 格式文件中提取私钥格式文件 (.key)



    openssl pkcs12 -in mycert.pfx -nocerts -nodes -out mycert.key    



    7. 转换 pem 到到 spc



       openssl crl2pkcs7 -nocrl -certfile
    venus.pem -outform DER -out venus.spc    



    -outform -inform 指定 DER 还是 PAM 格式。例如:



    openssl x509 -in Cert.pem -inform PEM -out cert.der -outform DER       



    8. PEM PKCS#12 的转换



    openssl pkcs12 -export -in Cert.pem -out Cert.p12 -inkey key.pem       



    IIS 证书



    cd c:\openssl           set OPENSSL_CONF=openssl.cnf           openssl pkcs12 -export -out server.pfx -inkey
    server.key -in server.crt
                    



    server.keyserver.crt文件是Apache的证书文件,生成的server.pfx用于导入IIS



    9. How to Convert PFX Certificate to PEM Format for SOAP



    $ openssl pkcs12 -in test.pfx -out client.pem Enter Import Password: MAC verified OK Enter PEM pass phrase: Verifying - Enter PEM pass phrase: 





  • 相关阅读:
    oracle中Blob和Clob类型的区别
    为什么要分库分表
    Enable file editing in Visual Studio's debug mode
    SQL Server Dead Lock Log
    Debug .NET Framework Source
    SQL Server text field里面有换行符的时候copy到excel数据会散乱
    诊断和修复Web测试记录器(Web Test Recorder)问题
    Can't load Microsoft.ReportViewer.ProcessingObjectModel.dll
    'telnet' is not recognized as an internal or external command
    Linq to XML
  • 原文地址:https://www.cnblogs.com/xiaoweiyu/p/2302297.html
Copyright © 2020-2023  润新知