我知道你永远不应该创建自己的密码学,无论是密码或哈希算法,甚至是安全的伪随机数生成器,这些都是我在漫长的标准化过程中开发出来的。然而,我正在寻找的是引号或好的观点,以便对决定编写自己的加密算法的偶尔开发人员快速描述/争论这一点。
发布于 2010-09-06 19:40:22
您可以告诉这位开发人员,像AES这样的现有算法已经被无数密码分析专家分析过(这肯定涉及到对数字和计算机科学的高级理解),并在竞赛中进行了测试,这是创建安全算法的真正动机。
你也可以告诉这个开发人员,仅仅因为一个算法是流行的,并不意味着它是不安全的(如果这是这个开发人员的理由)。仅仅因为许多人知道门锁是如何工作的,并不会使门锁不安全,也不是人们创造自己门锁的充分理由。
举一个现实世界的例子,see this TDWTF article about Nintendo's bug in the Wii's security functions.任天堂(一家拥有大量程序员的知名大公司)试图实现现有的算法,但却搞砸了。是什么让该开发人员认为他/她拥有编写新的安全算法的l33t h4x0r技能?
发布于 2010-09-06 20:04:05
任何认为他们设计出了一个牢不可破的加密方案的人要么是一个极其罕见的天才,要么是天真和缺乏经验的人。不幸的是,我有时不得不与想要成为密码学家的人打交道,他们想要通过添加自己设计的加密算法来“改进”PGP。
我记得1991年与布莱恩·斯诺的一次谈话,他是美国国家安全局的一名高级密码学家。他说,他永远不会相信一个人设计的加密算法,这个人并没有先花大量时间破解代码来“赢得他们的骨骼”。这很有意义。我观察到,在密码学的商业世界中,几乎没有人符合这一标准。“是的,”他自信地笑着说,“这让我们在美国国家安全局的工作变得容易多了。”令人不寒而栗的想法。我也没有资格。
菲利普·齐默尔曼,Beware of Snake Oil
发布于 2010-09-06 19:39:12
只要告诉他们,除非他们在数学,计算机科学和密码学方面有几十年的经验,然后用几年的时间来设计算法,否则他们不太可能创造出比已经被广泛使用的加密方案更好的加密方案,所有这些加密方案都是由许多人研究的,其中许多人几乎肯定具有我上面描述的背景。
https://stackoverflow.com/questions/3651090
复制相似问题