2011-04-21 41 views
2

我已閱讀了RFC 2459(Internet X.509公鑰基礎結構證書和CRL配置文件)中我認爲與此問題相關的部分。但是,我並不十分清楚證書的有效期(特別是到期日期)的目的是什麼。X.509證書中「有效期」的目的是什麼?

我的理解是,證書的目的是將公鑰以可驗證的方式綁定到身份(在X.509中,通過證書頒發機構或在OpenPGP中,通過信任網絡) 。因此,在我看來,從創建證書到相應的私鑰遭到破壞(或者員工被解僱或者其他任何人)時,證書都是有效的,在這種情況下,證書將被放置在證書撤銷列表中(我相信)。

在什麼情況下這是不正確的?爲什麼身份與公鑰綁定突然失效?我知道大多數證書頒發機構都是商業企業,因此獲得經常性費用是有利可圖的,但是我正在開發一個開源項目,該項目簡單地生成證書(無需費用),將服務器上的用戶名與公鑰綁定,並且用戶的密碼用於向CA(其當然存儲他的散列密碼)驗證他的身份。

回答

6

這個想法是爲了減少私鑰泄漏的機會之窗。只有當受害方知道這一點時纔可以撤銷。另外,現有的撤銷機制並不完全可靠,因此擁有固定的到期日期是很好的。

+2

您能否解釋現有的撤銷機制如何不完全可靠?如果一個人在每次使用CA時都使用CA驗證密鑰,CA是否會讓它知道它在CRL上? – Hut8 2011-04-21 22:55:25

+2

例如,當撤銷服務器無法訪問時,大多數瀏覽器會忽略吊銷檢查。因此,如果攻擊者能夠訪問您的路由器,他可以輕鬆阻止他們,以避免吊銷檢查。 – 2011-04-21 22:59:05

+1

@ bowenl2:亞當死在這裏。不幸的是,CA沒有必要的基礎設施來保證100%(或接近它)的正常運行時間。這就是瀏覽器忽略故障的原因。在這種情況下,讓人們繼續購物比在無法聯繫CA的情況下關閉網站更重要。請參閱http://blog.spiderlabs.com/2011/04/certificate-revocation-behavior-in-modern-browsers.html – NotMe 2011-04-21 23:58:08

2

我很確定你在商業方面回答了你自己的問題。但我會在這裏再投入一個。

這是爲了防止當你不知道它曾經丟失過的損失。換句話說,證書撤銷清單上顯示的唯一時間是某人知道它已被入侵。在很多情況下,您不知道它會受到影響,所以最好有辦法強制刷新密鑰。

它有點像過去那些間諜使用每天變化的密碼。這並不是說他們認爲舊鑰匙已被盜用,他們更改是因爲他們有不知道如果鑰匙被盜用。

另一個例子是讓你的密碼每90天左右過期。它不會過期,因爲它已知已經丟失;它會在的情況下過期它已經丟失,你不知道它。