zoukankan      html  css  js  c++  java
  • Android Studio 生成 keystore 签名文件

    Android Studio 生成 keystore 签名文件

    常见 SSL 证书格式 :

    • .DER .CER,文件是二进制格式,只保存证书,不保存私钥。
    • .PEM,一般是文本格式,可保存证书,可保存私钥。
    • .CRT,可以是二进制格式,可以是文本格式,与 .DER 格式相同,不保存私钥。
    • .PFX .P12,二进制格式,同时包含证书和私钥,一般有密码保护。
    • .JKS,二进制格式,同时包含证书和私钥,一般有密码保护。

    DER

    该格式是二进制文件内容,Java 和 Windows 服务器偏向于使用这种编码格式。

    OpenSSL 查看

    openssl x509 -in certificate.der -inform der -text -noout
    

    转换为 PEM:

    openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
    

    PEM

    Privacy Enhanced Mail,一般为文本格式,以 -----BEGIN... 开头,以 -----END... 结尾。中间的内容是 BASE64 编码。这种格式可以保存证书和私钥,有时我们也把PEM 格式的私钥的后缀改为 .key 以区别证书与私钥。具体你可以看文件的内容。

    这种格式常用于 Apache 和 Nginx 服务器。

    OpenSSL 查看:

    openssl x509 -in certificate.pem -text -noout
    

    转换为 DER:

    openssl x509 -in cert.crt -outform der -out cert.der
    

    CRT

    Certificate 的简称,有可能是 PEM 编码格式,也有可能是 DER 编码格式。如何查看请参考前两种格式。

    PFX

    Predecessor of PKCS#12,这种格式是二进制格式,且证书和私钥存在一个 PFX 文件中。一般用于 Windows 上的 IIS 服务器。改格式的文件一般会有一个密码用于保证私钥的安全。

    OpenSSL 查看:

    openssl pkcs12 -in for-iis.pfx
    

    转换为 PEM:

    openssl pkcs12 -in for-iis.pfx -out for-iis.pem -nodes
    

    JKS

    Java Key Storage,很容易知道这是 JAVA 的专属格式,利用 JAVA 的一个叫 keytool 的工具可以进行格式转换。一般用于 Tomcat 服务器。

    --------------------------------------------------------

    p12 -> jks

    keytool -importkeystore -srckeystore keystore.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore keystore.jks

    jks -> p12

    keytool -importkeystore -srckeystore keystore.jks -srcstoretype JKS
    -deststoretype PKCS12 -destkeystore keystore.p12

    从jks里面导出cert

    keytool -export -alias cert0001 -keystore trust.jks -storepass 123456 -file cert0001.cer

    将cert导入jks

    keytool -import -v -alias cert001 -file cert001.cer -keystore trust.jks -storepass 123456 -noprompt 

    去除pem格式的key的密码(输出的密码不输入即可)

    openssl rsa -in cert2.key -out cert22.key

    合并pem格式输出pfx(p12)

    openssl pkcs12 -export -inkey cert22.key -in cert2.crt -out cert2.pfx

    指定intermedian和CA

    openssl pkcs12 -export -out mypkcs12.pfx -inkey my.private.key -in mycert.crt -certfile intermediate.crt -CAfile ca.crt 

    pfx转回pem

    openssl pkcs12 -in cert2.pfx -out cert22.pem -nodes

    pem转key

    openssl rsa -in cert22.pem -out cert22.key

    pem转crt

    openssl x509 -in cert22.pem -out cert22.crt

    cert转pem

    openssl x509 -in cert2.cer -out cert2.pem -outform PEM

     pem转der

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

    der转pem

    openssl x509 -in cert22.cer -inform DER -out cert22.pem -outform  PEM

    ---------------------------------------------------------

    ======================= End

  • 相关阅读:
    [noip2011d2t2]聪明的质检员 二分+前缀和优化
    [noip2016d2t2]蚯蚓
    KMP
    杨辉三角(二项式定理)&&组合数 【noip 2011/2016 d2t1】
    bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
    [noip2015 pjt3]求和
    [周记]8.28~9.3
    [noip2011 d1t3] Mayan游戏
    react基础用法二(组件渲染)
    react基础用法一(在标签中渲染元素)
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/11540706.html
Copyright © 2011-2022 走看看