none
請問CA無法生產問題 RRS feed

  • 問題

  • 請問各位先進,我要產生CA下了以下指令,卻產生錯誤
    certreq -new AV.inf XXXXXX.req
    Certificate Request Processor: The string contains a non-printable character. 0x80092021 (-2146885599)
    [RequestAttributes]

    之前做都沒問題,但前幾天因為憑證過期,所以將CA的service移除,然後重新建立以產生新的母憑證,之後就無法執行,請問有人知道這該如何解決嗎?
    2009年6月22日 上午 03:24

解答

  • [NewRequest]
    Subject= "2.5.4.5=<serial-number>,C=US,O=004,OU=AV Content Protection,CN=<common-name>"

    你的<serial-number>會從別的地方撈資料進來嗎?
    我在我的環境下如果跟你一樣是這樣的設定..也是無法透過certreq.exe來新建一個request
    要將<serial-number>改成其他的字串值(如123456)之後就是可以正常
    • 已提議為解答 Vincent Lin 2009年6月24日 上午 06:46
    • 已標示為解答 huhan 2009年6月25日 上午 01:40
    2009年6月24日 上午 03:51

所有回覆

  • 假設你用 certreq -new AV.inf 1.req 的話可以嗎>
    另外你的環境是什麼?麻煩描述一下..Server 2000還是2003等等

    可以的話重新建立一個.inf檔看看會不會有問題
    2009年6月23日 上午 05:29
  • 十分感謝您的回覆
    用certreq -new AV.inf 1.rreq也是一樣的
    環境是server 2003 R2
    應該不是.inf的問題,因為我之前用同樣一份.inf已經很長一段時間了,只是因為前幾天因為憑證過期,所以將CA的service移除重新建立,之後就產生問題了
    2009年6月23日 上午 06:24
  • Certificate Request Processor: The string contains a non-printable character. 0x80092021 (-2146885599)
    [RequestAttributes]

    檢查看看inf檔裡面[RequestAttributes]的區段..把這段貼出來看看
    2009年6月23日 上午 07:14
  • .inf裡面沒有設[RequestAttributes],這個東西是必須的嗎?之前沒有設並沒有任何問題啊?
    2009年6月23日 上午 07:24
  • 沒有那個也是可以正常設定才對
    把.inf檔的內容貼出來看看吧..另外..你在重建CA的時候是選擇新建金鑰?還是使用原先的金鑰?

    2009年6月23日 上午 07:36
  • 以下是AV.inf內容:
    [Version]

    [NewRequest]
    Subject= "2.5.4.5=<serial-number>,C=US,O=004,OU=AV Content Protection,CN=<common-name>"
    KeySpec = 1
    KeyLength = 2048
    Exportable = TRUE
    MachineKeySet = TRUE
    SMIME = FALSE
    PrivateKeyArchive = FALSE
    UserProtected = FALSE
    UseExistingKeySet = FALSE
    ProviderName = "Microsoft Enhanced Cryptographic Provider v1.0"
    ProviderType = 1
    RequestType = PKCS10
    KeyUsage = 0xB0
    KeyContainer = "<KeyContainer>"

    [PolicyStatementExtension]
    Policies = CertificatePolicies
    Critical = 0
    [CertificatePolicies]
    OID = 1.3.6.1.4.1.311.53.1.1.1



    我是選擇建立新的金鑰,另外.inf檔是用之前的,這個檔案並沒有改過
    2009年6月23日 上午 08:17
  • 你試著把下面的文字整行刪除看看..問題可能是出在這行裡面

    Subject= "2.5.4.5=<serial-number>,C=US,O=004,OU=AV Content Protection,CN=<common-name>"

    另外..你的文字本來就是上面那樣嗎?還是因為貼上來的關係有將它修改成<common-name>這樣的格式?

    2009年6月23日 上午 08:44
  • Subject= "2.5.4.5=<serial-number>,C=US,O=004,OU=AV Content Protection,CN=<common-name>"

    我在我的環境下測試了一下..只要前面多了2.5.4.5=<serial-number>的東西的話..就會出現跟你一模一樣的錯誤訊息
    2009年6月23日 上午 08:53
  • 但是之前用沒有問題耶,是因為最近windows更新的關係嗎?如果是的話,那如果我將windows回復到更新前的話,是否就可以解決?
    2009年6月23日 上午 08:58
  • 是不是Windows Update的關係我就不確定了
    我的測試環境是只有安裝2003 SP2後就沒再安裝更新..加上那一段後也是會有問題

    該inf檔案裡面的內容就是如你貼得一樣嗎?還是貼上來是有修改過的?
    如果是跟你貼得一樣的話..比較不太了解 2.5.4.5=<serial-number> 是什麼意思
    2009年6月23日 上午 09:12
  • inf檔案我並沒有修改過,是原始內容,另外serial-number是根據微軟文件來的
    可從msdn查詢 DEVICE_SERIAL_NUMBER ="2.5.4.5"
    在Regedit裡面H_l_M->system->currentcontrolset->service->certsvc->xxx->SubjectTemplate新增DeviceSerialNumber

    2009年6月23日 上午 09:39
  • 機碼的部分有檢查過那個新增的項目還存在嗎?
    2009年6月23日 上午 10:01
  • 是的,確認還在,不過不管在不在,都是同樣的錯誤訊息
    2009年6月23日 上午 10:20
  • 在SubjectTemplate裡面..是怎麼設定的?
    可以把你的設定貼出來讓我測試看看嗎?

    2009年6月23日 上午 10:23
  • EMail
    CommonName
    OrganizationalUnit
    Organization
    Locality
    State
    DomainComponent
    Country
    DeviceSerialNumber


    麻煩您了...
    2009年6月23日 上午 11:01
  • [NewRequest]
    Subject= "2.5.4.5=<serial-number>,C=US,O=004,OU=AV Content Protection,CN=<common-name>"

    你的<serial-number>會從別的地方撈資料進來嗎?
    我在我的環境下如果跟你一樣是這樣的設定..也是無法透過certreq.exe來新建一個request
    要將<serial-number>改成其他的字串值(如123456)之後就是可以正常
    • 已提議為解答 Vincent Lin 2009年6月24日 上午 06:46
    • 已標示為解答 huhan 2009年6月25日 上午 01:40
    2009年6月24日 上午 03:51
  • 真的十分抱歉,我剛剛詳細檢查了一下,發先<serial-number>的確會由程式外部帶字串給他,
    因此.req已經可以產生了,不過將.req轉成.cer的時候卻產生問題

    Certreq -q -binary -submit A-00803F0F2840.req A-00803F0F2840.cer
    RequestId: 35
    Certificate request is pending: Taken Under Submission (0)


    我確定是用administratormis登入的,可否請教這是什麼原因呢?
    2009年6月24日 上午 06:19
  • 應該是有申請成功..只是在等待Approve而已..試著手動Approve看看

    另外
    你的CA是Enterprise的還是Standalone的?
    你是在CA上面執行此動作(那串指令)嗎?
    2009年6月24日 上午 06:41
  • 瞭解了,感謝您這幾天的大力協助
    2009年6月25日 上午 01:40