代码之家  ›  专栏  ›  技术社区  ›  JL. Hans Passant

有人能给我解释一下证书吗

  •  4
  • JL. Hans Passant  · 技术社区  · 15 年前

    我需要一个非常基本的2分钟的证书介绍…

    我得到了一个.p12证书文件…这是受密码保护的…现在我需要将它导入注册表,并导出一个base 64.cer文件…

    最后,我使用这个.cer文件访问解决方案之外的Web服务….

    我的问题是-导入的.p12和.cer是否携手工作来验证请求?

    我真的可以用2-3行解释从技术程序员的角度来解释它是如何工作的…

    提前谢谢

    1 回复  |  直到 15 年前
        1
  •  8
  •   ewall    15 年前

    你很少看到对密码术的简短解释是有原因的!

    许多形式的加密都是基于使用单个共享密钥(对称)来加密和解密消息——发送方和接收方都必须知道密钥。

    然而,在本例中,您使用的是公钥密码术,它将密钥分为两部分,正如您所说,“携手工作”。借来 http://www.globus.org/toolkit/security/public-key-cryptography.html 以下内容:

    这些密钥是数学上相关的数字,如果其中一个密钥用于加密消息,则另一个密钥必须用于解密消息。同样重要的是,从第一个密钥和/或用第一个密钥编码的任何消息中获取第二个密钥几乎是不可能的(利用我们目前的数学知识和可用的计算能力)。

    通过将其中一个密钥公开(一个公钥)并将另一个密钥保持为私有(一个私钥),用户可以通过加密消息来证明他或她持有该私钥。如果可以使用公钥对消息进行解密,则此人必须使用私钥对消息进行加密。

    请注意,私人密钥必须保密!任何知道私钥的人都可以很容易地模仿所有者。

    显然,您在受密码保护的.p12文件中拥有的是您的私钥和公钥。将其导入PC后,可以提取公钥的.cer文件——这就是您为Web服务提供的文件。

    在此之后,下面是向Web服务发送消息时的基本情况:

    • 您的计算机需要使用您的私钥和Web服务的公钥来加密消息。
    • 然后,只有能够访问您的公钥和它们自己的私钥的Web服务才能对其进行解密。

    对于他们来说,向你发回一条信息,它的工作原理是完全相同的,但是所有的事情都是相反的。

    现在应该像泥一样清澈了…但至少你有个开始。