2012-05-28 172 views
2

我想這不能完成,但如果是這樣,我想知道爲什麼。我自己爲域的子域頒發SSL證書我有一個SSL證書

比方說,我從周圍的官方證書頒發機構之一獲取example.com的SSL證書。我們還要說我正在運行a.example.com和b.c.d.example.com,並希望爲這些用戶提供SSL證書。

我可以使用example.com證書自己爲a.example.com和b.c.d.example.com頒發證書嗎?他們會被用戶的瀏覽器識別嗎?如果不是,爲什麼不呢?

(我猜它不能做的是,因爲它會破壞非常有利可圖的通配符證書的商業模式,不是嗎?)

澄清:我不能起到「自我簽名「的證書頒發機構使用我獲得官方證書的密鑰對,並且只需在驗證鏈中添加我的官方證書?

回答

3

您不能使用您的證書頒發其他證書,因爲 證書的用途已在您的證書中編碼,並且「證書頒發機構」當然不包括在該列表中。

Web瀏覽器查看來自您的證書開始「證書鏈」,使用證書上簽字,該證書等

您的證書必須與當前使用情況相符(大多是「識別網頁的簽名者站點「)並且所有簽名證書都必須包含」證書頒發機構「標誌。瀏覽器必須知道最後一個證書(根證書)。

正如您所猜測的,通配符證書可能有助於您的情況。

+1

所以我獲得的官方證書中有一個標誌,CA可以設置爲「CA」但不是?這是不允許我追加到證書鏈的機制嗎? –

+0

是的,這就是它的工作原理。幾年前,人們發現某些瀏覽器沒有檢查該標誌,任何擁有有效證書的人都可以使用該標誌爲_any_域創建證書。當然,現在已經解決了。 – Black

1

你是對的,你不能發行certificate的證書。您需要Certificate Authority才能頒發證書。

證書頒發機構的重點是他們是可信的第三方。大多數瀏覽器默認信任CA像Verisign,所以您不必手動接受來自他們的證書。他們有什麼被稱爲受信任的根證書

如果您創建自己的證書頒發機構並開始頒發證書,那麼Web瀏覽器將不會了解您並且不相信您。用戶將被提示。

+1

實際上,您可以使用每個證書發佈另一個證書(例如,通過黑客入侵openssl)。應用程序的工作是檢查是否發生了這種濫用,即必須檢查證書是否只由CA頒發。 – Black