家 网络 第二章:SSL VPN技术 思科新闻 通过黄强和杰西布·弗拉希姆 足球竞猜app软件 | 由于安全套接字层(SSL)虚拟专用网(VPN)技术的日益成熟,并迅速被部署在最近几年,它已经获得了网络的关注和IT管理员谁正在寻找远程访问VPN解决方案,提供无所不在的接入和低成本的部署和管理。目前,SSL VPN技术不存在任何官方的标准;不同的供应商使用不同的实现。本章将在SSL VPN技术的发展密切关注,以帮助您了解这种技术是如何工作的。 SSL VPN的加密积木 VPN在公共网络上传输私有流量。一个安全的VPN需要满足以下基本要求: 认证保证VPN实体与目标方通信。身份验证可以应用于VPN设备或VPN用户。例如,在远程访问VPN中,VPN前端设备可以对用户PC进行身份验证,以确保它确实是拥有它用来连接到集中器的IP地址的PC。集中器还可以对使用PC的最终用户进行身份验证,以便根据用户的信息正确分配用户权限。 保密通过对数据进行加密来确保数据的隐私性。 消息完整性保证数据的内容在传输期间没有被修改。 下面几节将研究如何通过使用各种密码算法来满足这些需求。熟悉这些加密算法的读者可以跳过这些部分,直接转到SSL部分。 散列和消息完整性认证 以下各节描述散列及其在密码学中的使用。 哈希 散列发挥确保了发送信息的完整性,安全体系中的重要作用。散列算法的可变长度的文本字段转换成固定大小的字符串。哈希在安全系统中使用的算法有以下两种属性: 单向散列机制:这意味着,给定的散列输出,它是难以转化散列函数来获取原始邮件。 无碰撞输出:这意味着,对于一个散列算法,计算上不可能找到具有相同的哈希输出的任何两个消息。 由于这些特性,散列也被称为消息摘要或数字指纹。人们能在一个大文档输出小散和使用哈希输出文档的数字指纹。然后,该数字指纹可用于确保该消息没有被其传输通过不安全信道期间篡改。此外,从数字指纹,这是不可能揭示原始邮件的内容。 截至目前,最常用的密码散列算法已经被消息摘要算法5(MD5)和安全散列算法1(SHA-1)。这两个都被认为是单向和强无碰撞散列算法。MD5提供128位输出,和SHA-1提供160位的输出。由于其尺寸较大,SHA-1通常被认为是更安全的,但在计算上更昂贵,比MD5。随着硬件和软件实现在当今的网络,性能差异通常不是一个问题。因此,SHA-1是一种用于在VPN部署使用的优选的散列算法。 消息认证码 消息认证码(MAC)是用于确保传输过程中消息的完整性的加密校验和。以产生MAC,则可以使用的加密算法,如数据加密标准(DES),或散列算法。散列通常比加密算法快很多,所以基于散列的MAC(HMAC)是最流行的方法。HMAC是一个加密散列函数。下面是如何工作的:为了生成消息M的HMAC,需要选择两个系统参数,散列函数H(通常MD5或SHA-1),并计算消息的K的HMAC密钥如下: HMAC(K,M)= H(K XOR OPAD,H(K XOR ipad的,M)) 其中OPAD是字符串0X5c和ipad是字符串0x36。 在密码系统,K用这里的关键在两个节点之间的密钥协商和建立过程正常产生。请注意,这两个级别的散列使一个HMAC功能不是简单的加密哈希函数安全得多。 图2 - 1示出了HMAC消息的发送者和接收者之间如何功能。 图2 - 1 HMAC MD5和SHA-1的安全性由一群中国密码专家,其中包括王小云的最近进行的研究表明,MD5和SHA-1是不是免费的碰撞,和算法已经发展到找出碰撞不是使用蛮力更快。例如,SHA-1具有160比特的输出,因此,如果散列280随机的消息,你会发现一对具有相同的散列输出消息。三名中国密码学家证明,他们可以找到在碰撞SHA-1与269操作,这比使用蛮力快2000倍。 Bruce Schneier在他的网络博客(http://www.schneier.com/blog/archives/2005/02/cryptanalysis_o.html)和由Eric Rescorla在http://www.rtfm.com/movabletype/archives/2004_08.html#001059。 这里是一个简短的总结: 攻击威胁通过散列算法的数字证书提供的不可否认性属性。 据认为,HMAC仍然对这种攻击是安全的。 目前的攻击是可行的以目前的技术远边缘。 这些研究结果推动行业向着开发更安全散列算法,比如SHA-256或其它加密方法。对SHA-2的更多细节,可以发现http://en.wikipedia.org/wiki/SHA-2。 加密 加密算法转移明文到密文。从哈希不同,加密算法需要加密和解密密钥。两种主要类型的加密算法存在: 对称加密:使用加密和解密相同的密钥。它也被称为密钥加密。对称算法一般用于将消息的内容进行加密。主要有两种类型的对称加密算法有:- 流密码,诸如RC4- 分组密码,诸如DES,三重DES(3DES)和高级加密标准(AES) 非对称加密:使用加密和解密不同的密钥。非对称加密也被称为公钥加密。非对称加密系统由两个计算相关联的键。一,为公众所知的领域,被称为公钥;另一种是只知道密钥对的拥有者。根据使用的公钥和私钥对,非对称算法可用于加密或认证的目的。图2 - 2示出的非对称算法的使用。考虑Alice和Bob,谁想要使用非对称算法进行安全通信的例子。对于加密的目的,爱丽丝会使用加密Bob的公钥的消息,并发送密文给Bob。一旦接收到密文,鲍勃,谁是对应私钥的唯一所有者,那么可以解密使用自己的私钥对消息。认证的目的,爱丽丝会加密(或签名)用她的消息自己的私有密钥。然后,其他人如Bob可以用Alice的公钥,这是签名私有密钥相匹配的唯一密钥验证消息的真实性。在现实世界中使用的加密系统非对称算法涉及到其他组件。我们在接下来的几节讨论。 因为对称算法快得多比非对称算法,数字证书或密钥管理更常用为比非对称算法的数据加密。的非对称算法的流行的例子是迪菲 - 赫尔曼(DH)的算法和的Rivest,Shamir和Adelman(RSA)。 图2 - 2 非对称算法的应用 RC4 RC4是Ron Rivest在1987年为RSA安全设计的,是目前应用最广泛的流密码。由于其速度和简单性,RC4已被部署在许多应用程序中,如SSL协议和有线等效隐私(WEP)协议,它们被用于保护无线网络流量。 作为一种流密码,RC4对明文数据进行加密,每次加密一个,方法是用明文对密钥流进行XORing with the keystream。通过伪随机数生成器传递加密密钥和初始化向量(IV)来生成密钥流。 对于SSL,大多数web浏览器支持使用两种不同密钥大小的RC4加密:RC4-40bit和RC4-128bit。较新的浏览器,如Internet Explorer 7.0和Firefox,已经开始支持更强的密码,如AES。 DES和3 DES 数据加密标准(DES)是迄今为止最广泛使用的对称加密算法。DES是一个64比特块密码的是一个8字节的数据块上的工作原理。输出密码块具有相同的8字节的长度。在解密侧,相同的算法进行反向施加有相同的密钥。由于具有奇偶校验位的要求,DES的有效密钥强度为56位。 为了加密超过DES块大小的消息,使用某种操作模式对各个密码块进行链接。操作方式多种多样,如电子密码本(ECB)、密码块链接(CBC)等。CBC模式是商业实现中常用的操作模式。在CBC模式下,密文的每个块都与下一个要加密的明文块同步,从而使所有的块都依赖于前一个块。第一个数据块是IV。CBC模式比ECB模式增加了更多的安全性,因为它额外的XOR步骤。 自20世纪70年代设计由IBM,DES算法已扣缴积极的密码分析在过去几年。然而,它的56位密钥长度太短,它已经成为了疲软与消费级系统的迅速增加计算能力的岁月。 3DES解决了DES密钥长度不足的问题。3DES使用三组密钥执行DES三次,密钥长度为168位。要执行3DES,常用的操作是加密-解密-加密(EDE)。也就是说,DES使用密钥1加密消息,使用密钥2解密消息,最后使用密钥3加密消息。 AES是用于SSL V3和传输层安全(TLS)加密选项之一。 AES 要更换老化的DES标准,在1997年走出叫来几个候选人如MARS,Twofish的,蛇,Rijndael算法和RC6,Rijndael算法为提交的高级加密标准(AES)的国家标准与技术研究院(NIST)国家研究所被选择作为最终标准。 AES也是一个块密码,一个128位的数据块上的工作,并具有128,192和256位的密钥大小。关于AES的更多信息,可以发现:http://en.wikipedia.org/wiki/Advanced_Encryption_Standard。 作为一种新的联邦标准,与3DES相比,AES的计算强度更小,加密能力更强,AES已迅速添加到供应商的实现中,并部署在VPN网络中。目前,许多厂商也支持AES硬件加速。AES是SSL v3和TLS的密码选项之一。 的Diffie-Hellman 1976年发布的Diffie-Hellman (DH)是第一个公开密钥算法。Diffie-Hellman是一个关键协议,使通信各方在没有任何已知秘密的情况下就共享秘密达成一致。Diffie-Hellman通常用于密钥交换和VPN隧道的建立阶段。Diffie-Hellman算法的工作原理如下: 通信各方同意两个系统参数:一个大素数p和发电机G。它们被选择为任意值V<p,存在一个值w ^这Gw ^国防部p=V。这个需求,G可以用来生成从1到?的所有数字p1。 每个通信方,说X和Y,生成私钥,X和ÿ,其中的每一个小于一个随机数p。计算相应的公钥XX和Yÿ,采用以下公式:- 党的X公共密钥:XX=GX国防部p- 党Ÿ公钥:Yÿ=Gÿ国防部p 在通信双方交换然后通过不安全的通道公钥。一旦接收到对方的DH公钥,每一方使用下列公式计算共享密钥(SS):党的X:SS =(Yÿ)X国防部p=Gyx国防部p党Y:SS =(XX)ÿ国防部p=Gxy国防部p 双方都有一个共同的秘密。 卫生署双方必须共享系统参数p和G,称为DH群参数。以下是几个常见的DH与不同的组p: 组1:768位模数 第2组:1024位模数 组5:1536钻头模数 请注意,在DH公开密钥交换过程中,没有任何身份验证过程的定义。这确保了通信双方都可以从预期的接受方的权利公钥。因此,DH是容易受到中间人攻击,其中攻击者可以截取该通信信道和欺骗通信各方的身份,以执行与分别一方X和Y,DH交换。因此,攻击者建立与X和Y两个共享秘密分开,并且可以使用这些共享秘密由DH秘密保护的两个通信方之间截距进一步的通信。通过鉴定的DH交换缓解此漏洞。 相关: 网络 123.4567 第1页 下一个 第1页共7页 IT薪资调查:结果在