SSL协议的工作流程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
非对称加密 对称加密
客户端和服务器访问流成
公钥私钥
生成的证书什么时候用
ssl加密(非对称加密)
下面的模拟https通信流程说明了这一特性的重要。
创建自我安全证书
本文介绍HTTPS的三种实现方法。
SSL协议的工作流程: 服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。 用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。
Secure socket layer([tag]SSL[/tag])协议最初由Netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装数字证书,或服务器证书就可以激活服务器功能了。对于Web信息传输通道的机密性及完整性,SSL是最佳的解决方案,目前所有的浏览器和Web服务器都支持SSL,采用SSL在技术上已经很成熟,互联网的安全敏感数据几乎都是由SSL通道传输的。
采用SSL技术和数字签名技术保证邮件的安全性,为了满足企业用户保护商业秘密的需求,提供了完善邮件加密和认证功能,采用SSL技术对邮件的存储和传输实施加密,保证邮件不被窃取和篡改;并且提供数字签名技术,以保证邮件的真实性。系统提供了从普通级到绝密级等多种保密等级,以满足不同环境下的保密需求。SSL协议是因特网通信标准,用来提供两个应用之间通信的保密,可信和身份认证。 SSL技术一般采用公开密钥技术,能够提供:信息加密服务,信息完整性服务,相互认证服务这三项服务。
加密一般分为三类,对称加密,非对称加密及单向散列函数。
对称加密:又分分组密码和序列密码。
分组密码是将明文按一定的位长分组,明文组经过加密运算得到密文组,密文组经过解密运算
(加密运算的逆运算),还原成明文组。
序列密码是指利用少量的密钥(制乱元素)通过某种复杂的运算(密码算法)产生大量的伪随机位流,用于对明文位流的加密。
解密是指用同样的
密钥和密码算法及与加密相同的伪随机位流,用以还原明文位流。
CBC(Cipher Block Chaining)模式这个词在分组密码中经常会用到,它是指一个明文分组在被加密之前要与前一个的密文分组进行异或运算。当加密算法用于此模式的时候除密钥外,还需协商一个初始化向量(IV),这个IV没有实际意义,只是在第一次计算的时候需要用到而已。采用这种模式的话安全性会有所提高。
分组密码的典型例子为DES,RC5,IDEA。
序列密码的典型例子为RC4。
公钥加密:
简单的说就是加密密钥与解密密钥不同,分私钥和公钥。这种方法大多用于密钥交换,RSA便是一个我们熟知的例子。
还有一个常用的称作DH,它只能用于密钥交换,不能用来加密。
单向散列函数:
由于信道本身的干扰和人为的破坏,接受到的信息可能与原来发出的信息不同,一个通用的办法就是加入校验码。
单向散列函数便可用于此用途,一个典型的例子是我们熟知的MD5,它产生128位的摘要,在现实中用的更多的是安全散列算法(SHA),SHA的早期版本存在问题,目前用的实际是SHA-1,它可以产生160位的摘要,因此比128位散列更能有效抵抗穷举攻击。
由于单向散列的算法都是公开的,所以其它人可以先改动原文,再生成另外一份摘要。解决这个问题的办法可以通过HMAC(RFC 2104),它包含了一个密钥,只有拥有相同密钥的人才能鉴别这个散列。