词条 | SSL安全证书 |
释义 | 什么是SSL安全证书?Secure socket layer(SSL)协议最初由Netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装数字证书,或服务器证书就可以激活服务器功能了。 通俗点说SSL证书可以实现2个基本功能: 数据传输加密我们通常的互联网访问、浏览都是基于标准的TCP/IP协议,内容以数据包的形式在网络上传递。由于数据包内容没有进行加密,任何截获数据包的人都可以取得其中的内容。那么数据包中如果传递的是用户名、密码或其他个人隐私资料就很容易被别人窃取。 SSL可以在用户使用的客户端(如:浏览器)和服务器之间建立一个加密的通道,所有在网络上传输的数据都会先进行加密,当传输到目的地以后再进行解密,这样传输过程中即时数据包被截获,也很难破解其中的内容。 服务器身份证明目前,仿冒网站已经成为互联网使用中的严重威胁,仿冒者可以制作一个与真实网站完全一样的界面,并且采用相似的域名引导用户访问。如:真实的某某银行网址为www.XXX.xxx。 而仿冒者使用了一个相似的域名:www.0XXX.xxx,字母i换成了数字1,如果使用者不加注意,很容易上当。一旦在仿冒网站的使用过程中输入了帐号密码等信息,就会被仿冒网站记录,进而被冒用,威胁用户的帐户安全。 SSL服务器证书可以有效地证明网站的真实身份、使用的域名的合法性,让使用者可以很容易识别真实网站和仿冒网站。现在的SSL服务器证书在申请的时候都会通过严格的审查手段对申请者的身份进行确认,用户在访问网站的时候可以看到证书的内容,其中包含网站的真实域名、网站的所有者、证书颁发组织等信息。浏览器也会给出相应的安全标识,让访问者可以放心使用。 SSL安全性SSL技术提供了身份认证服务,信息加密服务和数据的完整性服务等3项服务以达到高安全性。 1.用户和服务器的合法性认证 2.加密数据以隐藏被传送的数据 SSL协议所采用的加密技术既有对称密钥加密技术,也有非对称密钥加密技术。 3.保护数据的完整性 采用Hash函数和机密共享的方法来提供信息的完整新服务,建立客户机与服务器之间的安全通道,使所有经过SSL协议处理的业务在传输过程中能全部完整准确无误的到达目的地 通过以上叙述,SSL协议提供的安全信道有以下三个特性: 1.数据的保密性 信息加密就是把明码的输入文件用加密算法转换成加密的文件以实现数据的保密。加密的过程需要用到密匙来加密数据然后再解密。没有了密钥,就无法解开加密的数据。数据加密之后,只有密匙要用一个安全的方法传送。加密过的数据可以公开地传送。 2.数据的一致性 加密也能保证数据的一致性。例如:消息验证码(MAC),能够校验用户提供的加密信息,接收者可以用MAC来校验加密数据,保证数据在传输过程中没有被篡改过。 3.安全验证 加密的另外一个用途是用来作为个人的标识,用户的密匙可以作为他的安全验证的标识。SSL是利用公开密钥的加密技术(RSA)来作为用户端与服务器端在传送机密资料时的加密通讯协定。 SSL使用HTTPS协议来对消息进行加密和签名,使用SSL证书来对服务进行身份验证。 实现机制SSL安全机制是依靠数字证书来实现的。:用户与IIS服务器建立连接后,服务器会把数字证书与公用密钥发送给用户,用户端生成会话密钥,并用公共密钥对会话密钥进行加密,然后传递给服务器,服务器端用私人密钥进行解密,这样,用户端和服务器端就建立了一条安全通道,只有SSL允许的用户才能与IIS服务器进行通信。 具体过程如下:1.Client Hello:客户端将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息(如加密算法和能支持的密钥大小)发送到服务器。 2.Server Hello:服务器将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送给客户端 3.Certificate(可选):服务器发一个证书或一个证书链到客户端,证书链开始于服务器公共钥匙并结束于证明权威的根证书。该证书用于向客户端确认服务器的身份,该消息是可选的。如果配置服务器的SSL需要验证服务器的身份,会发送该消息。多数电子商务应用都需要服务器端身份验证。 4.Certificate Request(可选):如果配置服务器的SSL需要验证用户身份,还要发出请求要求浏览器提供用户证书。 多数电子商务不需要客户端身份验证,不过,在支付过程中经常需要客户端身份验证。 5.Server Key Exchange(可选):如果服务器发送的公共密钥对加密密钥的交换不是很合适,则发送一个服务器密钥交换消息。 6.ServerHelloDone:通知客户端,服务器已经完成了交流过程的初始化。 7.Certificate(可选):客户端发送客户端证书给服务器。仅当服务器请求客户端身份验证的时候会发送客户端证书 8.Client Key Exchange:客户端产生一个会话密钥与服务器共享。在SSL握手协议完成后,客户端与服务器端通信信息的加密就会使用该会话密钥。如果使用RSA加密算法,客户端将使用服务器的公钥将会话密钥之后再发送给服务器。服务器使用自己的私钥对接收的消息进行解密得到共享的会话密钥。 9.Certificate Verify:如果服务器请求验证客户端,则这消息允许服务器完成验证过程。 10.Change cipher spec:客户端要求服务器在后续的通信中使用加密模式 11.Finished:客户端告诉服务器已经准备好安全通信了。 12.Change cipher spec:服务器要求客户端在后续的通信中使用加密模式 13.Finished:服务器告诉客户端它已经准备好安全通信了。SSL握手完成的标志 14.Encrypted Data:客户端和服务端在安全信道上进行加密信息的交流 当上述动作完成之后,两者的资料传送就会加密。发送时信息用会话密钥加密形成一个数据包A,对称密钥用非对称算法加密形成另一个数据包B,再把两个包一起发送。接收的过程域发送正好相反,先用非对称算法打开对称密钥的加密包B,获得会话密钥,然后再用会话密钥解密数据包A,获取发送过来的信息原文。会话密钥还被描述为对称密钥,或“共享秘密”。具有对称密钥很重要,因为它减少了事务双方所需执行的计算量。如果每个消息都要求对 Nonce 和哈希进行新的交换,那么性能将会下降。因此,SSL 的最终目标是使用允许消息在通信双方之间自由流动的对称密钥,同时具有更高程度的安全和效率。 HTTPS安全超文本传输协议HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议,它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的完全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。。 https是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,https的安全基础是SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。 限制: 它的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持. 一种常见的误解是“银行用户在线使用https:就能充分彻底保障他们的银行卡号不被偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者尝试窃听数据于传输中。 商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。