• .pfx 证书和 .cer 证书


    证书系列:

    1:.pfx 证书和 .cer 证书

    2:导入pfx证书

    通常情况下,作为文件形式存在的证书一般有三种格式:

    • 第一种:带有私钥的证书,由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以.pfx作为证书文件后缀名。
    • 第二种:DER Encoded Binary (.cer)  二进制编码的证书,证书中没有私钥,DER 编码二进制格式的证书文件,以.cer作为证书文件后缀名。
    • 第三种:Base64 Encoded(.cer),Base64编码的证书,证书中没有私钥,BASE64 编码格式的证书文件,也是以.cer作为证书文件后缀名。

    由定义可以看出,只有pfx格式的数字证书是包含有私钥的,cer格式的数字证书里面只有公钥没有私钥。

    Cer证书只包含公钥信息,如果客户端与网站通信时需要用到私钥(基本所有需要数字证书的网站都会用到私钥),则cer证书是无法正常访问网站的,网站会提示“该页要求客户证书”。由于cer证书只包含公钥信息,一般只能用于解密使用(解密该公钥对应的私钥加密的数据)。在申请证书的机器上存储了私钥信息,因此,可以把CER证书导入为PFX证书,并可以把PFX证书导出,这样其他机器就可以安装PFX证书了。

    Pfx证书既可以导出为pfx证书,也可以导出为cer证书。Pfx证书导出时,会提示是否导出私钥,导出私钥即pfx证书,不导出私钥就是cer证书。如果选择导出私钥,出于安全性考虑,需要指定一个密码来保护该私钥,后续再次导入该pfx证书时,需要提供保护该私钥密码,才能在机器上安装证书。

    一,证书描述

    证书发布之后,申请者可以看到证书的详细内容,注意:申请者在下载cer证书之后,需要在申请证书的机器上导入证书,原因是申请证书的机器上包含密钥。

    证书给出了一个黄色的注意事项:您可能正在一个台计机器上下载证书,这台计算机与您请求证书的机器不同。但是,该证书仅在生成请求的机器上起作用。如果需要把证书安装在另一台服务器上,请首先将其安装在最初创建请求的机器上,然后使用其私钥导出证书。 然后,在需要时,可以把其导入到目标计算机或多台计算机上的本地计算机存储中。

    由于申请证书的机器上存储私钥,因此,可以把CER证书导入为PFX证书,并可以把PFX证书导出,这样其他机器就可以安装PFX证书了。

    二,导入证书

    注意,第一次导入证书,只能把证书导入到申请证书的机器上。

    step1:下载DER Encoded Binary (.cer)格式的证书

    step2:打开Microsoft Management Console

    点击“Windows + R”,输入mmc,打开MMC控制台。

    step3:添加证书管理单元(snap-ins)

    点击MMC的File菜单,选择“Add or Remove Snap-ins”,选择Certificates,点击“Add >”,选择 computer account,

    下一步选择“Local computer: (the computer this consoled is running on)”,点击Finish按钮,

    完成之后,在“Add or Remove Snap-ins”对话框上点击OK,返回到MMC界面。

    step4:导入证书

    在Console Root列表种选择"Certificates(Local Computer)",右击Personal,导航到 All Tasks -> Import,打开“Certificate Import Wizard

    点击Next,进入到“File to Import”界面,在File name中打开已下载到本地的DER Encoded Binary (.cer)格式的证书

    Step5,选择证书存储

    点击Next,进入到“Certificate Store”界面,选择Place certificates in the following store,把Personal作为 certificate store。

    通常导入PFX的证书,默认的证书存储都是在Personal下,Cer证书只能导入导Other选项卡下,无法导入到Personal选项卡下。

    Step6,检查证书导入的配置

    点击Next,检查证书的配置,点击Finish完成证书的第一次导入:

    三,导出.pfx证书

    把.cer 证书导入到机器上之后,可以导出.pfx证书。在MMC的Certificates列表中,找到刚才导入的证书:

    step1,打开"Certificate Export Wizard"

    选中导入的证书,右击弹出快捷菜单,导航 All Tasks-> Export,打开"Certificate Export Wizard":

    step2: 导出私钥

    私钥是用密码保护,如果想要把私钥导出,那么必须用密码来保护私钥。默认是不会导出私钥,但是如果需要在其他机器上安装证书,那么就必须导出私钥,勾选“Yes, export the private key”:

    step3:设置导出文件的格式

    把导出文件的格式设置为.PFX,在“Personal Information Exchange-PKCS #12 (.PFX)”中,勾选“Include all certificates in the certification path if possible” 和 “Enable certificate privacy”。

    Step4:安全设置

    为了保护私钥, 可以把私钥授权给特定的group或user,并使用密码对私钥进行加密,用户只有同时获得pfx文件和密码,才可以获得私钥和证书。

    Encryption列表中列出了对私钥进行加密的两种算法,选择任意一个加密算法都可以:

    如果导出私钥(pfx)是需要输入密码的,这个密码就是对私钥再次加密,这样就保证了私钥的安全,别人即使拿到了你的证书备份(pfx),如果不知道加密私钥的密码,那么无法导入证书。相反,如果只是导入/导出cer格式的证书,是不会提示你输入密码的。因为公钥一般来说是对外公开的,不用加密。

    Step5,设置导出的文件

    把PFX文件导出到特定的文件中,需要设置pfx证书保存的文件名和路径:

    Step6:检查证书导出向导的设置

     检查无误后,点击Finish,导出pfx证书。

    参考文档:

  • 相关阅读:
    UIView与CALayer的区别,很详细
    IOS图标尺寸一览
    iOS开发之WebView
    iOS开发之版本控制(SVN)
    IOS 多个ImageView图片层叠透明区域点击事件穿透
    UIButton
    UISwitch
    cocoapods_第二篇
    UIView
    IOS开发中 RunLoop,RunTime
  • 原文地址:https://www.cnblogs.com/ljhdo/p/14109218.html
Copyright © 2020-2023  润新知