2013-10-10 37 views
1

我正在實施Windows MDM。其中,Device發送PKCS#10證書請求的CSR。如何以編程方式更改證書籤名請求的主題屬性?

當我去http://certlogik.com/decoder,並且解碼這個企業社會責任,我得爲主題 「CN = B1C43CD0-1624-5FBB-8E54-34CF17DFD3A1 \ 00」

這種 「\ 00」,我們要從中刪除因此,我們無法在註冊期間安裝公司中心應用程序。

我想將此主題更改爲任何值,例如「CN = myMDM」。如何更改CSR的Subject屬性?

回答

0

一旦您有證書申請,您就不能更改它,因爲CSR應該使用您的私鑰簽名,並且簽名絕對包含主題行。

所以,如果你改變任何你需要辭職的,這就需要你解析CSR。所以基本上你應該重建你的CSR,並且當你提供你的通用名(CN)時,簡單地剝離值爲00(空終止符)的字符。

您留下了以下選項:

  • 正確生成CSR,如上所述,
  • 變化的企業社會責任,消除零值字節並且重新計算所有的長度,並跳過驗證,
  • 創建一個特殊證書創建者,在驗證或跳過對CSR的簽名驗證後,將正確的主題置於CSR之外;
+0

我們正在使用此CSR生成證書(將返回到設備)。由於CSR主題包含空字符,因此使用CSR製作的證書在其主題屬性中也包含空字符。由於此空字符,在註冊期間不會安裝中心應用程序,這就是爲什麼我需要更改證書主題。 – Vaibhav

+0

是的,我明白你想要什麼*,但是你不能用任何標準的證書創建庫來做到這一點。在答案中讓你的選擇更加清晰。 –

+0

@Vaibhav你怎麼能解決這個問題? –

2

允許證書主題不同於PKCS#10(即CSR)的主題。查看OpenSSL的'req'命令的-subj選項。

由於背後的原因,請考慮這一點;您的CSR由您的私鑰簽名。簽名用於驗證CSR的內容沒有被修改(這包括主題)。您的公鑰已包含在CSR中。 CA創建您的證書並使用其認爲合適的CSR主題的任何部分。證書以及來自您的CSR的CA指定主題和公鑰由CA的私鑰簽名。此簽名用於驗證您的證書的內容未被修改(這包括CA指定的主題)。

相關問題