【问题标题】:Issue with create the subject certificate name创建主题证书名称的问题
【发布时间】:2017-03-01 15:35:17
【问题描述】:

我想创建包含“,”的主题证书名称,如图像 Example

但总是失败,因为“,”用于分隔 -n 参数的包含,例如 “CA=CARoot,O=我的组织,OU=Dev,C=丹麦”

有人知道如何在证书名称中添加“,”吗?非常感谢您的帮助

【问题讨论】:

  • 一开始你是如何创建证书的?
  • 我使用此命令创建证书:MakeCert.exe -r -pe -n "OU=(c) 2006 thawte Inc. - 仅供授权使用" -sv "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1 .pvk" -len 2048 "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1.cer" 但不能将","添加到OU="..."

标签: c# ssl-certificate cer


【解决方案1】:

在 Windows 命令提示符中,您可以使用三双引号在带引号的参数中添加文字双引号(来自 https://stackoverflow.com/a/15262019/6535399)。

X500 名称解析器使用逗号作为分隔符,除非它位于带引号的字符串中。所以你需要将 -n 值解释OU="Hey, there", ...

所以,你可以做类似的事情

> makecert.exe (etc) -n "OU="""Hey, there""", O=Hmm, CN="""Hello, Nurse!""""

或者,让看起来像四重引号的东西消失:

> makecert.exe (etc) -n "OU="""Hey, there""", O=Hmm, CN="""Hello, Nurse!""", C=US"

【讨论】:

  • 我尝试了您的解决方案,但它不起作用,我的命令:MakeCert.exe -r -pe -n "OU=(c) 2006 thawte Inc."""Hey, there""" -仅供授权使用" -sv "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1.pvk" -len 2048 "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1.cer" 。当我删除“”“嘿,那里”“”时,它成功创建了证书文件
  • 双引号需要紧跟在=之后,并在分隔符之前终止。
【解决方案2】:

我尝试了您的解决方案,但它不起作用,我的命令:

MakeCert.exe -r -pe -n "OU=(c) 2006 thawte Inc."""嘿,那里""" - 仅供授权使用" -sv "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1.pvk‌​" -len 2048 "c:\PlaneteersLtd_certificate\XIAMEN_IPRT_TECHNOLOGYLtd1.cer‌​"

当我删除“”“嘿,那里”“”时,它成功创建了证书文件 Example

【讨论】:

    猜你喜欢
    • 2016-08-23
    • 1970-01-01
    • 1970-01-01
    • 2023-01-18
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 2014-01-25
    相关资源
    最近更新 更多