常用的openssl命令

    xiaoxiao2022-07-03  95

    常用的openssl命令

    证书

    查看证书信息

    openssl x509 -noout -text -in ca.crt

    验证CA签发的证书

    openssl verify -CAfile ca.crt myserver.crt

    验证自签名证书

    openssl verify selfsign.crt

    查看Key信息

    openssl rsa -noout -text -in myserver.key

    加密的Key变成明文的Key

    openssl rsa -in server.key -out server.key

    计算摘要

    计算MD5摘要

    openssl dgst -md5 filename

    计算SHA1摘要

    openssl dgst -sha1 filename

    CMS

    签发CMS

    $ openssl cms -sign -signer cert.pem -inkey key.pem -outform PEM -nosmimecap -nodetach -nocerts -noattr -md sha256 -passin pass:xxx -in dd.txt

    校验CMS

    $ openssl cms -verify -certfile cert.pem -CAfile ca.pem -inform PEM -nosmimecap -nodetach -nocerts -noattr -in aa.txt

    签发CA根证书

    生成CA私钥(.key)–>生成CA证书请求(.csr)–>自签名得到根证书(.pem)(CA给自已颁发的证书)。

    # Generate CA private key $ openssl genrsa -out ca.key 2048 # Generate CSR $ openssl req -new -key ca.key -out ca.csr # Generate Self Signed certificate(CA 根证书) $ openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.pem

    签发身份证书

    生成私钥(.key)–>生成证书请求(.csr)–>用CA根证书签名得到证书(.pem)

    # private key $ openssl genrsa -des3 -out server.key 1024 # generate csr $ openssl req -new -key server.key -out server.csr # generate certificate $ openssl ca -in server.csr -out server.pem -cert ca.crt -keyfile ca.key

    最后一步可能碰到错误,我是在windows上运行:

    Using configuration from C:\OpenSSL-Win64\bin\openssl.cfg ca: ./demoCA/newcerts is not a directory ./demoCA/newcerts: No such file or directory

    解决办法是在当前操作目录新建demoCA/newcerts两级目录。然后在demoCA文件夹下新建一个空的index.txt文件,再新建一个serial文件,没有后缀,里面填入01。

    最新回复(0)