图解密码技术1.7 密码与信息安全常识_图解密码技术1.7 密码与信息安全常识试读-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 科普 > 图解密码技术 > 1.7 密码与信息安全常识

图解密码技术——1.7 密码与信息安全常识

在继续下面的内容之前,我们先来介绍一些关于密码的常识。刚刚开始学习密码的人常常 会对以下这几条感到不可思议,因为它们有悖于我们的一般性常识。 ● 不要使用保密的密码算法 ● 使用低强度的密码比不进行任何加密更危险 ● 任何密码总有一天都会被破解 ● 密码只是信息安全的一部分 1.7.1 不要使用保密的密码算法 很多企业都有下面这样的想法: “由公司自己开发一种密码算法,并将这种算法保密,这样就能保证安全。” 然而,这样的想法却是大错特错,使用保密的密码算法是无法获得高安全性的。 我们不应该制作或使用任何保密的密码算法,而是应该使用那些已经公开的、被公认为强 度较高的密码算法。 这样做的原因主要有以下两点: 密码算法的秘密早晚会公诸于世 从历史上看,密码算法的秘密最终无一例外地都会被暴露出来。拿最近的事例来说,DVD 的密码算法也没能幸免被扒皮的命运。RSA 公司开发的 RC4 密码算法曾经也是保密的,但最终 还是有一位匿名人士开发并公开了与其等效的程序。 一旦密码算法的详细信息被暴露,依靠对密码算法本身进行保密来确保机密性的密码系统 也就土崩瓦解了。反之,那些公开的算法从一开始就没有设想过要保密,因此算法的暴露丝毫 不会削弱它们的强度。 开发高强度的密码算法是非常困难的 要比较密码算法的强弱是极其困难的,因为密码算法的强度并不像数学那样可以进行严密 的证明。密码算法的强度只能通过事实来证明,如果专业密码破译者经过数年的尝试仍然没有 破解某个密码算法,则说明这种算法的强度较高。 稍微聪明一点的程序员很容易就能够编写出“自己的密码系统”。这样的密码在外行看来貌 似牢不可破,但在专业密码破译者的眼里,要破解这样的密码几乎是手到擒来。 现在世界上公开的被认为强度较高的密码算法,几乎都是经过密码破译者长期尝试破解未 果而存活下来的。因此,如果认为“公司自己开发的密码系统比那些公开的密码系统更强”,那 只能说是过于高估自己公司的能力了。 试图通过对密码算法本身进行保密来确保安全性的行为,一般称为隐蔽式安全性(security byobscurity),这种行为是危险且愚蠢的。 反过来说,将密码算法的详细信息以及程序源代码全部交给专业密码破译者,并且为其提 供大量的明文和密文样本,如果在这样的情况下破译一段新的密文依然需要花上相当长的时间, 就说明这是高强度的密码。 1.7.2 使用低强度的密码比不进行任何加密更危险 一般人们会认为:就算密码的强度再低,也比完全不加密要强吧?其实这样的想法是非常 危险的。 正确的想法应该是:与其使用低强度的密码,还不如从一开始就不使用任何密码 A。 这主要是由于用户容易通过“密码”这个词获得一种“错误的安全感”。对于用户来说,安 全感与密码的强度无关,而只是由“信息已经被加密了”这一事实产生的,而这通常会导致用 户在处理一些机密信息的时候麻痹大意。 早在 16 世纪,当时的苏格兰女王玛丽就曾认为没有人能够破译自己使用的密码。正是由于 对密码的盲信,她将刺杀伊丽莎白女王的计划明明白白地写在了密信中,结果密码遭到破译, 玛丽也因此被送上了断头台。 1.7.3 任何密码总有一天都会被破解 如果某种密码产品宣称“本产品使用了绝对不会被破解的密码算法”,那么你就要对这个产 品的安全性打个问号了,这是因为绝对不会被破解的密码是不存在的。 无论使用任何密码算法所生成的密文,只要将所有可能的密钥全部尝试一遍,就总有一天 可以破译出来。因此,破译密文所需要花费的时间,与要保密的明文的价值之间的权衡就显得 非常重要。 严格来说,绝对不会被破解的密码算法其实是存在的,这种算法称为一次性密码本(one- ,但它并不是一种现实可用的算法。关于这个话题,我们会在 3.4 节详细探讨。 此外,还有另外一种技术被认为有可能造就完美的密码技术,那就是量子密码。关于量子 密码,我们会在 15.3.1 节进行介绍。 1.7.4 密码只是信息安全的一部分 我们还是回到 Alice 给 Bob 发送加密邮件的例子。即便不去破解密码算法,也依然有很多 方法能够知道 Alice 所发送的邮件内容。 例如,攻击者可以不去试图破译经过加密的邮件,而是转而攻击 Alice 的电脑以获取加密之 前的邮件明文。 最近,社会工程学(socialengineering)攻击开始流行起来。例如,办公室的内线电话响起, 电话里说:“你好,我是 IT 部。由于需要对您的电脑进行安全检查,请您将密码临时改为 XR2315。”而实际上拨打电话的有可能就是一名攻击者。 上面提到的这些攻击手段,都与密码的强度毫无关系。 要保证良好的安全性,就需要理解“系统”这一概念本身的性质。复杂的系统就像一根由 无数个环节相连组成的链条,如果用力拉,链条就会从其中最脆弱的环节处断开。因此,系统 的强度取决于其中最脆弱的环节的强度。 最脆弱的环节并不是密码,而是人类自己。关于这个话题,我们会在最后一章进行深入的 思考。

展开全文

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

《图解密码技术》其他试读目录

• 1.1 本章学习的内容
• 1.2 密码
• 1.3 对称密码与公钥密码
• 1.4 其他密码技术
• 1.5 密码学家的工具箱
• 1.6 隐写术与数字水印
• 1.7 密码与信息安全常识 [当前]
• 1.8 本章小结
• 1.9 小测验的答案
• 5.1 投币寄物柜的使用方法
• 5.2 本章学习的内容
• 5.3 密钥配送问题