柯克霍夫原则

科技工作者之家 2020-11-17

柯克霍夫原则由奥古斯特·柯克霍夫在19世纪提出:密码系统应该就算被所有人知道系统的运作步骤,仍然是安全的。克劳德·艾尔伍德·香农有句近似的话「敌人知道系统」,称为香农公理。

密码学上的柯克霍夫原则(Kerckhoffs's principle,也称为柯克霍夫假说、公理、或定律)系由奥古斯特·柯克霍夫在19世纪提出:即使密码系统的任何细节已为人悉知,只要密匙(key,又称密钥或密钥)未泄漏,它也应是安全的。 信息论的发明者克劳德·香农1则改成说:“敌人了解系统”,这样的说法则称为香农箴言。 它和传统上使用隐密的设计、实现、或其他等等来提供加密的隐晦式安全想法相对。

依据柯克霍夫原则,大多数民用保密都使用公开的算法。 但相对地,用于政府或军事机密的保密器通常也是保密的。柯克霍夫为军用保密器所设计的这六个原则是:

即使非数学上不可破解,系统也应在实质(实用)程度上无法破解。

系统内不应含任何机密物,即使落入敌人手中也不会造成困扰。

密匙必须易于沟通和记忆,而不须写下;且双方可以容易的改变密匙。

系统应可以用于电讯。

系统应可以携带,不应需要两个人或以上才能使用(应只要一个人就能使用)。

系统应容易使用,不致让用户的脑力过分操劳,也无需记得长串的规则。

布鲁斯·施奈尔将这个想法延伸,认为除了密码系统之外,任何保安系统都是这样:试图保密一些东西,都会制造了失败的根源。

埃里克·斯蒂芬·雷蒙则将它引伸到开放源代码软件,指软件设计不假设敌人会得到源代码,已经不可靠,因此,永无可信的封闭源码。反过来说,开放源码比封闭源码更安全。

本词条内容贡献者为:

王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。