【问题标题】:alter x509 extended properties / usages更改 x509 扩展属性/用法
【发布时间】:2010-01-21 19:26:54
【问题描述】:

有没有办法以编程方式编辑为 x.509 证书启用的用途?

此功能可通过证书 mmc 管理单元(下面的超链接)获得,但我需要通过代码执行该操作。最好是 C#。

modify the properties of a certificate

【问题讨论】:

    标签: c# cryptography certificate x509


    【解决方案1】:

    MMC 可以做任何 Crypto API 可以做的事情,并且有一堆与证书相关的函数,例如 CertAddEnhancedKeyUsageIdentifierCertSetCertificateContextPropertyExample C Program: Getting and Setting Certificate Properties 有一个完整的示例,包括对“增强密钥用法”的修改,该修改指定了证书有效的用途。例如,要使证书对服务器端的 SSL 有效,您必须添加 EKU OID 1.3.6.1.5.5.7.3.1(又名“服务器身份验证”),请参阅 Configuring Certificate for Use by SSL

    C# 等效项是 X509KeyUsageExtension 类。有关示例,请参见类规范的链接。

    【讨论】:

    • 谢谢。 C# x509keyusageextension 只会修改内存中的证书集合,而不是实际的证书存储。您的链接非常有帮助。 Crypto API CertAddEnhancedKeyUsageIdentifier 确实修改了存储中的证书,并且只需要一个快速的 dll 导入。
    • 感谢您回复反馈。我不知道真正的 API 和托管 API 之间的区别。我自己总是直接使用 Crypto API 的东西。
    猜你喜欢
    • 2016-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-08
    • 1970-01-01
    • 2012-10-18
    • 1970-01-01
    • 2015-10-11
    相关资源
    最近更新 更多