代码之家  ›  专栏  ›  技术社区  ›  Seb Rose

CAC卡和“通用”智能卡有什么区别?

  •  4
  • Seb Rose  · 技术社区  · 14 年前

    为什么?证书不是证书吗?它们有什么不同?

    具体地说,有人能给我指一下简明的技术文档吗?这些文档解释了相关标准所规定的内容,以及实现定义的内容?我试过看 实际的 规格,但他们太详细,我发现非常模糊的文章,不回答我的问题。我在找中间的东西。

    2 回复  |  直到 12 年前
        1
  •  2
  •   Ajith Antony    14 年前

    我没有足够的观点发表评论,但我想同意@Jay的观点。您可能需要将此第三方库配置为信任DoD根证书,以便当CAC用户提供其客户端证书时,您的应用程序可以信任它。

    国防部根证书是公开的: http://dodpki.c3pki.chamb.disa.mil/rootca.html

    另外,如果您观察到的行为是客户端甚至没有收到选择客户端证书的提示,或者您没有观察到在数据包跟踪中发送的客户端证书,那么这也可能是因为您的服务器不信任DoD CA。当行为良好的服务器请求客户端证书时,它还公布了它信任的CA的可分辨名称(dn)。然后,行为良好的客户机将检查该列表,并将这些名称与它所拥有的cleint证书的颁发者进行比较。如果没有匹配,那么客户端将发送一个“null”证书。我知道IIS/Apache和Firefox/IE/Chrome是这样的。然而,Opera似乎并没有根据广告发布者的不同而有所区别,它会发送任何客户散布的证书。

        2
  •  0
  •   Martin Paljak    14 年前
    • 证书就是证书。证书通常由CA“创建”,而不是由智能卡供应商个性化软件创建。使用智能卡时,钥匙的使用至关重要。

    最后但并非最不重要的一点是,如果您的软件使用PKCS#11,那么只要您的卡有一个PKCS#11提供商(有几个CAC模块和“通用”供应商卡通常也有一个),您就不需要关心实际的卡,因为PKCS#11会将细节抽象掉。

    推荐文章