• 数据加密技术


    数据加密是计算机安全的重要部分 而口令是加密过的 文件也可以加密 口令加密是 防止文件中的密码被人偷看 文件加密主要应用于因特网上的文件传输防止文件被嗅探或劫 持 现在电子邮件给人们提供了一种快捷便宜的通信方式 但电子邮件是不安全的 很容易 被别人偷看或伪造 为了保证由于邮件的安全 人们采用了数字签名这样的加密技术 并提 供了基于加密的身份认证技术 这样就可以保证发信人就是信上声称的人 数据加密也使因 特网上的电子商务成为可能    7 1   加密的历史 作为保障数据安全的一种方式 数据加密起源于公元前 2000 年 埃及人是最先使用特 别的象形文字作为信息编码的人 随着时间推移 巴比伦 美索不达米亚和希腊文明都开始 使用一些方法来保护他们的书面信息 对信息进行编码曾被 Julias Caesar 凯撒入帝 使用 也曾用于历次战争中 包括美国独立战争 美国内战和两次世界大战 最广为人知的编码机 器是 German Enlgna 机 在第一吹世界大战中德国人利用它创建了加密信息 此后 由于 Alan Turing和 Ultra 计划以及其他人的努力 终于对德国人的密码进行了破即 当初 计算 机的研究就是为了破解德国人的密码当时人们并没有想到计算机给今天带来的信息革命 随 着计算机的发展 运算能力的增强 过去的密码都变得十分简单了 于是人们又不断地研究 出了新的数据加密方式如私有密钥算法和公共密钥算法 可以说 是计算机推动了数据加密 技术的发展 7 2 什么是数据加密 尽管加密或为了安全国的对信息进行编码和解码这个概念十分简单 但在这里仍需对其 进行解释 数据加密的基本过程包括对称为明文的原来可读信息进行翻译 译成称为密文或 密码的代码形式 该过程的逆过程为解密 即将该编码信息转化为其原来的形式的过程 7 3 为什么需要进行加密 因特网一方面是危险的 而目这种危险是 TCP IP 协议所固有的一些基于 TCP IP 的 服务也是极不安全的 另一方面 因特网给众多的商家带来了无限的商机 因为因特网把全 世界连在了一起 走向因特网就意味着走向了世界 为了使因特网变得安全和充分利用其商 业价值 人们选择了数据加密和基于加密技术的身份认证 加密在网络上的作用就是防止有价值信息在网络上被拦截和窃取 一个简单的例子就是 密码的传输 计算机密码极为重要 许多安全防护体系是基于密码的 密码的泄露就意味着 安全体系的全面崩溃 通过网络进行登录时 所键人的密码以明文的形式被传输到服务器 而网络上的窃听是一件极为容易的事情 所以很有可能黑客会嗅探井窃得用户的密码 如果 用户是 Root 用户或 Administrator用户 那后果将是极为严重的 解决这个问题的方式就是加密 加密后的口令即使被黑客获得也是不可读的 除非加密 密钥或加密方式十分脆弱 被黑客破解 不管怎样 加密的使用使黑客不会轻易获得口令 身份认证是基于加密技术的 它的作用就是用来确定用户是否是真实的 简单的例子就 是电子邮件 当用户收到一封电子邮件时邮件上面标有发信人的姓名和信箱地址 很多人可 能会简单地认为发信人就是信上说明的那个人 但实际上伪造一封电子邮件对于一个通晓网 络的人来说是极为容易的事 在这种情况下用户需要用电子邮件源身份认证技术来防止电子 邮件伪造 这样就有理由相信给用户写信的人就是信头上说明的人 有些站点提供入站的 FTP 和 WWW 服务 当然用户通常接触的这类服务是匿名服务 用户的权力要受到限制 但也有的这类服务不是匿名的 如公司为了信息交流提供用户的合作伙伴非匿名的 FTP 服 务 或开发小组把他们的 Web 网页上载到用户的 WWW服务器上 现在的问题就是 用户 如何确定正在访问用户的服务器的人就是用户认为的那个人 身份认证也可以为这个问题提 供一个好的解决方案 有些时候 用户可能需要对一些机密文件进行加密 不一定因为要在网络上进行传输该 文件而是担心有人窃得计算机密码而获得该机密文件 对文件实行加密 从而实现多重保护 显然会使用户感到安心 例如 在 UNIX系统中可以山 Crypt 3 命令对文件进行加密 尽 管这种加密手段已不是那么先进 甚至有被破解的较大可能性 7 4 换位和置换 换位和置换 transposition and substitution ciphers 是两种主要的编码方法是组成最简单 的密码的基础 换位很像是一种字母游戏 打乱字母的顺序 并设法用这些打乱的字母组成 一个单词 在换位密码中 数据本身并没有改变 它只是被安排成另一种不同的格式 例如 How are you 我们将其写成三行 每行一个单词 从上向下读 密码变为 Hayoroweu 有许多种不同的置换密码 有一个是用凯撒大帝的名字 Julias Caesar命名的 它的原理是每 一个字母都用其前面的第几个字母代替 如果到了最后那个字母 则又从头开始算 如字母 可以被在它前面的第四个字母所代替 如 A->E B->F Z->D 7 5 加密与认证 通常网络系统安全保障的实现方法可以分为二大类 即以 防火墙 技术为代表的被动 防卫型和建立在数据加密 用户授权确认机制上的开放型网络安全保障系统 以数据加密和用户确认为基础的开放型安全保障技术是普遍适用的 对网络服务影响较 小的途径 可望成为网络安全问题的最终的一体化解决途径 1 加密技术 加密型网络安全技术的基本思想是不依赖于网络中数据路径的安全性来实现网络系统 的安全 而是通过对网络数据的加密来保障网络的安全可靠性 因而这一类安全保障技术的 基石是适用的数据加密技术及其在分布式系统中的应用 数据加密技术可以分为三类 即对称型加密 不对称型加密和不可逆加密 其中对称型加密使用单个密钥对数据进行加密或解密 其特点是计算量小 加密效率高 但是此类算法在分布式系统上使用较为困难 主要是密钥管理困难 从而使用成本较高 保 安性能也不易保证 这类算法的代表是在计算机专网系统中广泛使用的 DES 算法 Digital Encryption Standard 经实践证明它是一种很有效加密算法 虽然 Unix 上使用的密钥长度 为 56 位 还不足够安全 因为在 Internet 上 已经有人通过多台计算机合作计算 通过几 个月时间破解了使用它加密的内容 但对于一般的安全性 加上选择得当的口令 56 位的 DES 算法也足够用了 如果要提供更高的安全性 可以使用更长的密钥 或者使用另外的 算法 如 IDEA 算法 三重 DES 算法 这种方法用两个密钥对明文进行三次加密 假设两 个密钢是 KI和 K2 明文 K1 密文 K2 密文 K1 密文" 1.用密钥 K1 进行 DES加 密 2.用 K2对步骤 1 的结果进行 DES解密 3.用步骤 2 的结果使用密钥 KI 进行 DES加密 这种方认的缺点是要花费原来三倍时间 但从另一方面来看 三重 DES 的 112 位密钥长度 是很 强壮 的加密方式了 等 DES的算法加密和解密是使用同一个密钥 这个密钥必 须秘密保存 一旦泄露就不能保证数据的安全 但要让其他使用者获得加密的信息 就必须 告诉他这个密钥 这样就很容易泄露密钥 因此在加密传输中 密钥的传输是一个与数据安 全非常相关的问题 不对称型加密算法也称公用密钥算法 其特点是有二个密钥 即公用密钥和私有密钥 只有二者搭配使用才能完成加密和解密的全过程 不对称算法拥有二个密钥 一个加密过的 数据只能由另一个来解密 其中一个密钥由用户保存 为私有密钥 另一个向所有要进行加 密传输信息的使用者公开 称为公开密钥 当他们要向这个用户发送信息时 能使用该用户 的公开密钥加密信息 那么只有这个用户能使用自己的私有密钥能解开信息 同样这个用户 用自己的私有密钥加密信息 那么其他用户只能使用他的公开密钥才能解开 这样就保证了 信息是由这个用户发出的 而不是其他人的伪造信息 它特别适用于分布式系统中的数据加 密 在 Internet 中得到了广泛应用 其中公用密钥在网上公布 为数据源对数据加密使用 而用于解密的相应私有密钥则由数据的收信方妥善保管 最著名的公开密钥加密算法为RSA 算法 不对称加密的另一用法称为"数字签名" digital signature 即数据源使用其私有密钥 对数据的校验和 checksum 或其他与数据内容有关的变量进行加密 而数据接收方则用相 应的公用密钥解读 数字签名 并将解读结果用于对数据完整性的检验 在网络系统中得 到应用的不对称加密算法有 RSA算法和美国国家标准局提出的 DSA算法 Digital Signature Algorithm 不对称加密法在分布式系统中应用需注意的问题是如何管理和确认公用密钥的 合法性 不可逆加密算法的特征是加密过程不需要密钥 并且经过加密的数据无法被解密 只有 同样的输入数据经过同样的不可逆加密算法才能得到相同的加密数据 不可逆加密算法不存 在密钥保管和分发问题 适合于分布式网络系统上使用 但是其加密计算工作量相当可观 所以通常用于数据量有限的情形下的加密 例如计算机系统中的口令就是利用不可逆算法加 密的 近来随着计算机系统性能的不断改善 不可逆加密的应用逐渐增加 在计算机网络中 应用较多的有 RSA 公司发明的 MD5 算法和由美国国家标准局建议的可靠不可逆加密标准 SHS - Secure Hash Standard 加密技术用于网络安全通常有二种形式 即面向网络或面向应用服务 前者通常工作在网络层或传输层 使用经过加密的数据包传送 认证网络路由及其他网 络协议所需的信息 从而保证网络的连通性和可用性不受损害 在网络层上实现的加密技术 对于网络应用层的用户通常是透明的 此外 通过适当的密钥管理机制 使用这一方法还可 以在公用的互联网络上建立虚拟专用网络并保障虚拟专用网上信息的安全性 SKIP 协议即 是近来 IETF在这一方面的努力之一 面向网络应用服务的加密技术使用则是目前较为流行的加密技术的使用方法 例如使用 Kerberos 服务的 telnet NFS rlogion 等 以及用作电子邮件加密的 PEM Privacy Enhanced Mail 和 PGP Pretty Good Privacy 这一类加密技术的优点在于实现相对较为简单 不需 要对电子信息 数据包 所经过的网络的安全性能提出特殊要求 对电子邮件数据实现了端 到端的安全保障 2 数字签名和认证技术 为了区分合法用户和非法使用者 需要对用户进行认证 标准的 Unix 认证用户的过程是 用户输入口令 口令传输到系统程序中 由系统程序 对口令进行加密 并与系统中的口令密文进行比较来判断口令是否正确 在这种方法中 如 果要通过网络认证 就要将口令以明文形式在网络中传输 因此就存在被窃听的危险 认证技术主要就是解决网络通讯过程中通讯双方的身份认可 数字签名作为身份认证技 术中的一种具体技术 同时数字签名还可用于通信过程中的不可抵赖要求的实现 认证过程通常涉及到加密和密钥交换 通常 加密可使用对称加密 不对称加密及两种 加密方法的混合 (1)UserName/Password 认证   该种认证方式是最常用的一种认证方式 用于操作系统登 录 telnet rlogin 等 但由于此种认证方式过程不加密 即 password 容易被监听和解密 (2)使用摘要算法的认证 Radius(拨号认证协议) 路由协议(OSPF) SNMP Security Protocol 等均使用共享的 Security Key 加上摘要算法(MD5)进行认证 由于摘要算法是一个 不可逆的过程 因此 在认证过程中 由摘要信息不能计算出共享的 security key 敏感信 息不在网络上传输 市场上主要采用的摘要算法有 MD5 和 SHA-1 (3)基于 PKI 的认证使用公开密钥体系进行认证和加密 该种方法安全程度较高 综合采 用了摘要算法 不对称加密 对称加密 数字签名等技术 很好地将安全性和高效率结合起 来 这种认证方法目前应用在电子邮件 应用服务器访问 客户认证 防火墙验证等领域 该种认证方法安全程度很高 但是涉及到比较繁重的证书管理任务 (4)数字签名   数字签名作为验证发送者身份和消息完整性的根据 公共密钥系统(如 RSA)基于私有/公共密钥对 作为验证发送者身份和消息完整性的根据 CA 使用私有密钥 计算其数字签名 利用 CA提供的公共密钥 任何人均可验证签名的真实性 伪造数字签名 从计算能力上是不可行的 并且 如果消息随数字签名一同发送 对消息的任何修改在验证 数字签名时都将会被发现   通讯双方通过 Diffie-Hellman 密钥系统安全地获取共享的保密 密钥 并使用该密钥对消息加密 Diffie-Hellman 密钥由 CA进行验证 基于此种加密模式 需要管理的密钥数目与通讯者的数量为线性关系 而其它的加密模 式需要管理的密钥数目与通讯者数目的平方成正比 3 加密密钥 加密算法通常是公开的 现在只有少数几种加密算法 如 DES和 IDEA等 一般把受保 护的原始信息称为明文 编码后的信息称为密文 尽管大家都知道使用的加密方法 但对密 文进行解码必须要有正确的密钥 而密钥是保密的 一 保密密钥和公开 私有密钥 有两类基本的加密算法保密密钥和公开 私有密钢 在保密密钥中加密者和解密者使用 相同的密钥 也被称为对称密钥加密 这类算法有 DES和 IDEA 这种加密算法的问题是 用户必须让接收人知道自己所使用的密钥 这个密明需要双方共同保密 任何一方的失误都 会导致机密的泄露 而且在告诉收件人密钥过程中 还需要防止任何人发现或偷听密钥 这 个过程被称为密钥发布 有些认证系统在会话初期用明文传送密钥 这就存在密钥被截获的 可能性 另一类加密技术是公开 私有密钥 与单独的密钥不同 它使用相互关联的一对密钥 一个是公开密钥 任何人都可以知道 另一个是私有密钥 只有拥有该对密钥的人知道 如 果有人发信给这个人 他就用收信人的公开密钥对信件进行进加密 当收件人收到信后 他 就可以用他的私有密钥进行解密 而且只有他持有的私有密钥可以解密 这种加密方式的好 处显而易见 密钥只有一个人持有 也就更加容易进行保密 因为不需在网络上传进私人密 钥也就不用担心别人在认证会话初期劫持密钥 下面把公开 私有密钥技术总结为以下几 点 1 公开钥 私有密钥有两个相互关联的密钥 2 公开密钥加密的文件只有私有密钥能解开 3 私有密钥加密的文件只有公开密钥能解开 这一特点被用于PGP pretty good privacy 7 6 摘要函数 MD2, MD4 和 MD5 摘要是一种防止信息被改动的方法 其中用到的函数叫摘要函数 这些函数的输入可以 是任意大小的消息 而输出是一个固定长度的摘要 摘要有这样一个性质 如果改变了输入 消息中的任何东西 甚至只有一位 输出的摘要将会发生不可预测的改变 也就是说输入消 息的每一位对输出摘要都有影响 总之 摘要算法从给定的文本块中产生一个数字签名 fingerprint 或 message digest 数字签名可以用于防止有人从一个签名上获取文本信息或 改变文本信息内容 摘要算法的数字签名原理在很多加密算法中都被使用 如 S KEY 和 PGP pretty good prlvacy 现在流行的摘要函数有 MD4 和 MD5 下面就来讨论一下它们 记住 客户机和服务器必 须使用相同的算法 无论是 MD4 还是 MD5 MD4 客户机不能和 MD5 服务器交互 MD2 摘要算法的设计是出于下面的考虑 利用 32 位 RISC 结构来最大化其吞吐量而不 需要大量的替换表 Substitution table MD4 算法将消息的绝对长度作为输入 产生一个 128 位的 指纹 或 消息化 要产 生两个具有相同消息化的文字块或者产生任何具有预先给定 指纹 的消息都被认为在计算 上是不可能的 MD5 摘要算法是一个数据认证标准 MDS 的设计思想是要找出速度更快但更不安全的 MD4 中遗留的潜在的不安全因素 MD5 的设计者通过使 MD5 在计算上漫下来 以及对 这些计算做了一些基础性的改动来解缺这个问题 MD5 在 RFC1321 中给出文档描述 是 MD4 算法的一个扩展 7 7 密钥的管理和分发 1 使用同样密钥的时间范围 用户可以一次又一次地使用同样的密钥与别人交换信息但要考虑以下情况 1 如果某人偶然地接触到了用户的密钥那么用户曾经和另一个人交换的每一条消息都 不再是保密的了 2 使用一个特定密铝加密的信息越多 提供给窃听者的材料也就越多 这就增加了他们 成功的机会 因此 一般强调仅将一个对话密钥用于一条信息或一次对话中 或者建立一种按时更换 密钢的机制以减小密钥暴露的可能性 2 保密密钥的分发 假设在某机构中有 100个人如果他们任意两人之间可以进行秘密对话 那么总共需要多 少密钥呢 每个人需要知道多少密钥呢 也许很容易得出答案 如果任何两个人之间要不同 的密钥 则总共需要 4 950 个密钥 而且每个人应记住 99 个密钥 如果机构的人数是 1000 10000 人或更多 这种算法就显然过于愚蠢了 管理密钥将是一件可怕的事情 Kerberos 提供了一种解决这个问题的较好方案 它是由 MIT发明的 使保密密钥的管理 和分发变得十分容易 但这种方法本身还存在一定的缺点 不能在因特网上提供一个实用的 解决方案 KCIbCIOS 建上了一个安全的 可信任的密钥分发中心 Key Distribution Center KDC 每个用户只要知道一个和 KDC 进行通信的密钥就可以了 而不需要知道成百上干个不同的 密钥 假设 A 想要和 B 进行秘密通信则 A 先和 KDC 通信 用只有 A 和 KDC 知道的密钥 进行加密 A 告诉 KDC 他想和 B 进行通信 KDC 会为 A 利 B 之间的会话随机选择一 个对话密钥 并生成一个标签 这个标签由 KDC 和 B 之间的密钥进行加密 并在 A 启动和 B 对话时 A 会把这个标签上给 B 为什么会今成这样一个标签呢 这个 标签的作用是让 A确信和他交谈的是 B 而不是冒充者 因为这个标签是由只有 B 和 KDC 知道的密钥进行加密的 所以即便冒充者得到 A 发出的标签也不可能进行解密 只有 B 收 到后才能够进行解响密 从而确定了与 A对话的人就是 B 当 KDC 生成标签和随机会话密码后 就会把它们用只有 A和 KDC 知道的密钥进行加 密然后把标签和会话密钥传给 A,加密的结果可以确保只有 A能得到这个信息 只有 A能利 用这个会话密钥和 B 进行通话 同理 KDC 会把会话密码用只有 KDC 和 B 知道的密钥加 密并把会话密钥传给 B A 会启动一个和 B 的会话 并用得到的会话密钥加密自己和 B 的会话 还要把 KDC 传给它的标签传给 B 以确定 B 的身份 然后 A和 B 之间就可以用会话密钥进行安全的会 话了 而且为了保证安全 这个会话密明是一次性的这样黑客就更难以进行破解了 7 8 常规口令 在现实生活中 我们个人的身份主要是通过各种证件来确认的 比如 身份证 户口本 等 计算机世界与现实世界非常相似 各种计算资源 如 文件 数据库 应用系统 也需 要认证机制的保护 确保这些资源被应该使用的人使用 在大多数情况下 认证机制与授权 和记账也紧密结合在一起 目前各类计算资源主要靠静态口令的方式来保护 比如你需要访问一个 NT 系统 首先 必须在这个 NT 上设置一个账户 并设定密码 当通过网络访问 NT 资源时 系统会要求输 入你的账户名和密码 在账户和密码被确认了以后 你就可以访问 NT 上的资源了 这种以静态口令为基础的认证方式存在很多问题 最明显的是以下几种 网络数据流窃听(Sniffer) 由于认证信息要通过网络传递 并且很多认证系统的口令是未 经加密的明文 攻击者通过窃听网络数据 就很容易分辨出某种特定系统的认证数据 并提 取出用户名和口令 认证信息截取/重放(Record/Replay) 有的系统会将认证信息进行简单加密后进行传输 如果攻击者无法用第一种方式推算出密码 可以使用截取/重放方式 字典攻击 由于多数用户习惯使用有意义的单词或数字作为密码 某些攻击者会使用字 典中的单词来尝试用户的密码 所以大多数系统都建议用户在口令中加入特殊字符 以增加 口令的安全性 穷举尝试(Brute Force) 这是一种特殊的字典攻击 它使用字符串的全集作为字典 如果 用户的密码较短 很容易被穷举出来 因而很多系统都建议用户使用长口令 窥探 攻击者利用与被攻击系统接近的机会 安装监视器或亲自窥探合法用户输入口令 的过程 以得到口令 社交工程 攻击者冒充合法用户发送邮件或打电话给管理人员 以骗取用户口令 垃圾搜索 攻击者通过搜索被攻击者的废弃物 得到与攻击系统有关的信息 如果用户 将口令写在纸上又随便丢弃 则很容易成为垃圾搜索的攻击对象 虽然用户可以通过经常更换密码和增加密码长度来保证安全 但这同时也用户带来了很 大麻烦 7 9 一次性口令 为了解决静态口令的诸多问题 安全专家提出了一次性口令 OTP One Time Password 的密码体制 以保护关键的计算资源 OTP 的主要思路是 在登录过程中加入不确定因素 使每次登录过程中传送的信息 都不相同 以提高登录过程安全性 例如 登录密码=MD5(用户名 密码 时间) 系统接 收到登录口令后做一个验算即可验证用户的合法性 不确定因子选择与口令生成这些不确定因子选择方式大致有以下几种 口令序列(S/KEY) 口令为一个单向的前后相关的序列 系统只用记录第 N 个口令 用 户用第 N 1 个口令登录时 系统用单向算法算出第 N 个口令与自己保存的第 N 个口令匹 配 以判断用户的合法性 由于 N是有限的 用户登录 N次后必须重新初始化口令序列 挑战/回答(CRYPTOCard) 用户要求登录时 系统产生一个随机数发送给用户 用户用某 种单向算法将自己的秘密口令和随机数混合起来发送给系统 系统用同样的方法做验算即可 验证用户身份 时间同步(SecureID) 以用户登录时间作为随机因素 这种方式对双方的时间准确度要求 较高 一般采取以分钟为时间单位的折中办法 在 SecureID 产品中 对时间误差的容忍可 达 1 分钟 事件同步(Safe Word) 这种方法以挑战/回答方式为基础 将单向的前后相关序列作为系 统的挑战信息 以节省用户每次输入挑战信息的麻烦 但当用户的挑战序列与服务器产生偏 差后 需要重新同步 一次性口令的生成方式有以下几种 Token Card 硬件卡   用类似计算器的小卡片计算一次性口令 对于挑战/回答方式 该卡片配备有数字按键 便于输入挑战值 对于时间同步方式 该卡片每隔一段时间就会重 新计算口令 有时还会将卡片作成钥匙链式的形状 某些卡片还带有 PIN保护装置 Soft Token 软件   用软件代替硬件 某些软件还能够限定用户登录的地点 IC 卡   在 IC 卡上存储用户的秘密信息 这样用户在登录时就不用记忆自己的秘密口令 了 不管是静态口今还是一次性口令 都是基于 用户知道什么 这一理论的 比如说 静 态密码是用户和机器之间共知的一种信息 而其他人不知道 这样用户若知道这个口令 就 说明用户是机器所认为的那个人 一次性口令也样 用产和机器之间必须共知一条通行短语 而这通行来语对外界是完全保密的 和静态口令不同的是这个通行短语并不在网络上进行传 输 所以黑客通过网络窃听是不可能的 7 10 数据加密的应用 数据加密使人们开发因特网的商机成为可能 数据加密可以让人们在因特网上进行安全 的会话 而不必担心会被人偷听 IBM 在最近倍加推宠的电子商务 报纸上随处可见的虚 拟专用网和最新的加密和鉴别技术都是很好的数据加密技术的应用 虚拟专用网络 现在 越多越多的公司走向国际化 一个公司可能在多个国家都有办事机构或销售中心 每一个机构都有自己的 LAN Local Area Network 但人们不会只满足这些 用户可能会 想 如果将这些 LAN 连结在一起组成一个公司的广域网 那该多好啊 事实上 很多公司 都已经这样做了 但他们一般使用租用线路 lease line 来连结这些局域网 因为他们曾先 会考虑安全问题 现在具有加密 解密功能的路由器使人们用因特网连接这些局域网成为可 能 这被人们称为虚拟专用网络 Virtual Private Network, VPN 当数据离开发送者所在局 域网时 该数据被连接到因特网上的路由器加密 数据在因特网上是以加密的形式传送的 当达到目的 LAN 的路由器时 该路由器就会对数据进行解密 这样目标 LAN 中的用户就 可以看到真正的信息了 使用 VPN 有节省成本 提供远程访问 扩展性强 便于管理和实 现全面控制等好处 是目前和今后网络服务的重点项目 VPN工作原理 目前建造虚拟专网的国际标准有 IPSEC RFC 1825-1829 和 L2TP 草案 draft-ietf-pppext-l2tp-10 其中 L2TP是虚拟专用拨号网络协议 是 IETF根据各厂家协议 包 括微软公司的 PPTP Cisco 的 L2F 进行起草的 目前尚处于草案阶段 IPSEC 是一系列基 于 IP网络 包括 Intranet Extranet 和Internet 的 由 IETF正式定制的开放性 IP安全标准 是虚拟专网的基础 已经相当成熟可靠 L2TP协议草案中规定它 L2TP标准 必须以 IPSEC 为安全基础 见 draft-ietf-pppext-l2tp-security-01 因此 阐述 VPN的工作原理 主要是分 析 IPSEC 的工作原理 IPSEC 提供三种不同的形式来保护通过公有或私有 IP网络来传送的私有数据 * 认证 作用是可以确定所接受的数据与所发送的数据是一致的 同时可以确定申请 发送者在实际上是真实发送者 而不是伪装的 * 数据完整 作用是保证数据从原发地到目的地的传送过程中没有任何不可检测的 数据丢失与改变 * 机密性 作用是使相应的接收者能获取发送的真正内容 而无意获取数据的接收者 无法获知数据的真正内容 在 IPSEC 由三个基本要素来提供以上三种保护形式 认证协议头 AH 安全加载封装 ESP 和互联网密匙管理协议 IKMP 认证协议头和安全加载封装可以通过分开或组合 使用来达到所希望的保护等级 * 认证协议头 AH 是在所有数据包头加入一个密码 正如整个名称所示 AH通过一 个只有密匙持有人才知道的 数字签名 来对用户进行认证 这个签名是数据包通过特别的 算法得出的独特结果 AH还能维持数据的完整性 因为在传输过程中无论多小的变化被加 载 数据包头的数字签名都能把它检测出来 不过由于 AH不能加密数据包所加载的内容 因而它不保证任何的机密性 两个最普遍的 AH 标准是 MD5 和 SHA-1 MD5 使用最高到 128 位的密匙 而 SHA-1 通过最高到 160 位密匙提供更强的保护 * 安全加载封装 ESP 通过对数据包的全部数据和加载内容进行全加密来严格保证传 输信息的机密性 这样可以避免其他用户通过监听来打开信息交换的内容 因为只有受信任 的用户拥有密匙打开内容 ESP 也能提供认证和维持数据的完整性 最主要的 ESP 标准是 数据加密标准 DES DES最高支持 56 位的密匙 而 3DES使用三套密匙加密 那就相当 于使用最高到 168 位的密匙 由于 ESP 实际上加密所有的数据 因而它比 AH 需要更多的 处理时间 从而导致性能下降 * 密匙管理包括密匙确定和密匙分发两个方面 最多需要四个密匙 AH和 ESP各两个 发送和接收密匙 密匙本身是一个二进制字符串 通常用十六进制表示 例如 一个 56 位 的密匙可以表示为 5F39DA752E0C25B4 注意全部长度总共是 64 位 包括了 8 位的奇偶校 验 56 位的密匙 DES 足够满足大多数商业应用了 密匙管理包括手工和自动两种方式 手工管理系统在有限的安全需要可以工作得很好 而自动管理系统能满足其他所有的应用要 求 使用手工管理系统 密匙由管理站点确定然后分发到所有的远程用户 真实的密匙可以 用随机数字生成器或简单的任意拼凑计算出来 每一个密匙可以根据集团的安全政策进行修 改 使用自动管理系统 可以动态地确定和分发密匙 显然和名称一样 是自动的 自动管 理系统具有一个中央控制点 集中的密匙管理者可以令自己更加安全 最大限度的发挥 IPSEC 的效用 1 IPSEC 的实现方式 IPSEC 的一个最基本的优点是它可以在共享网络访问设备 甚至是所有的主机和服务器 上完全实现 这很大程度避免了升级任何网络相关资源的需要 在客户端 IPSEC 架构允许 使用在远程访问介入路由器或基于纯软件方式使用普通 MODEM 的 PC 机和工作站 而 ESP 通过两种模式在应用上提供更多的弹性 传送模式和隧道模式 * 传送模式通常当 ESP在一台主机 客户机或服务勤 上实现时使用 传送模式使用原 始明文 IP头 并且只加密数据 包括它的 TCP和 UDP 头 * 隧道模式通常当 ESP在关联到多台主机的网络访问介入装置实现时使用 隧道模式处 理整个 IP数据包 包括全部 TCP/IP 或 UDP/IP 头和数据 它用自己的地址做为源地址加 入到新的 IP 头 当隧道模式用在用户终端设置时 它可以提供更多的便利来隐藏内部服务 器主机和客户机的地址 2.IPSec 及 VPN 由于企业及政府用户需要把它们的专用 WAN/LAN 架构与互联网连接 以便访问互联网 的服务 所以他们非常热衷于部署安全的 IP 用户需要把它们的网络与互联网分隔 但同 时要在网上发送及接受网包 安全的 I P就可以提供网上的认证及隐私机制 因为 IP安全机制是独立定义 其用途与现在的 IP或 IPv6 不同 IP安全机制不需要依靠 IPv6 部署 我们可以看到安全 IP的功能会首先被广泛使用 它会比 IPv6 先流行起来 因为 对 IP层的安全需求远比增加 IPv6 功能的需求多许多 有了 IPSec 管理人员就有了实施 VPN的安全标准 此外 所有在 IPSec 中使用的加密 及认证算法已经过仔细的研究和几年的验证 所以我们大可放心地将安全问题交付给 I PSec
  • 相关阅读:
    字符串的字典排序
    最长上升子序列LIS(Longest Increasing Subsequence)
    小猴子下落
    二叉树的遍历
    7,Uipath实践-从零开始写demo-UiPath Foreach循环
    6,UiPath实践-从零开始写demo-if判断
    5,Uipath实践-从零开始写demo-调试Get Mail
    3,UiPath实践-从零开始写demo-读取Email
    4,Uipath实践-从零开始写demo-Uipath调试
    2,UiPath探索-Hello World
  • 原文地址:https://www.cnblogs.com/gxldan/p/4066675.html
Copyright © 2020-2023  润新知