柯克霍夫原則
维基百科,自由的百科全书
柯克霍夫原則由奧古斯特·柯克霍夫在19世紀提出:密碼系統應該就算被所有人知道系統的運作步驟,仍然是安全的。克勞德·艾爾伍德·香農有句近似的話「敵人知道系統」,稱為香農公理。它和傳統的以保密密匙和加密方法的密碼學想法不同。
- 系統必須可用,非數學上不可解碼。
- 系統不一定要保密,可以輕易落入敵人手中。
- 密匙必須可以不經書寫的資料交換和記憶,且雙方可以改變密匙。
- 系統可以用於電訊。
- 系統可以轉移位置,它的功能必須不用經過幾個人之手才可達到。
- 系統容易使用,不要求使用者的腦力過份操勞或有很多的規則。
布魯斯·施奈爾將這個想法延伸,認為除了密碼系統之外,任何保安系統都是這樣:試圖保密一些東西,都會製造了失敗的根源。
埃里克·斯蒂芬·雷蒙則將它引伸到開放源代碼軟體,指軟體設計不假設敵人會得到源代碼,已經不可靠,因此,「永無可信的封閉源碼」。[1]反過來說,開放源碼比封閉源碼更安全。