`

ssl与https(1)

    博客分类:
  • ssl
 
阅读更多

http://baike.baidu.com/link?url=qZpRHucOPHYS6sxrkLsiwPlPF1_aQI3bs_YKat3YOid-cvOsQVTMnFAtYpnod4R3
 
SSL(Secure Socket Layer  安全套接层),为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取及窃 听。
 
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
 
供服务
1)认证用户和服务器,确保数据发送到正确的客户机和服务器;
2)加密数据以防止数据中途被窃取;
3)维护数据的完整性,确保数据在传输过程中不被改变。
 

支持服务器类型
1. Tomcat 5.x
2. Nginx
3. IIS
4. Apache 2.x
5. IBM HTTP SERVER 6.0[1]
 

工作流程
服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;4)服务器回复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。

用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。
从SSL 协议所提供的服务及其工作流程可以看出,SSL协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。


 
分享到:
评论

相关推荐

    SSL及HTTPS配置文档

    SSL是一种协议,用于在互联网上建立安全的连接,而HTTPS则是HTTP协议与SSL/TLS(Transport Layer Security,SSL的后续版本)结合使用的结果,用于加密网页通信,保护用户的隐私和数据安全。 首先,我们要理解SSL...

    Tomcat中实现https安全连接与SSL配置

    https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置

    基于java的开发源码-SSL及HTTPS协议实例源码.zip

    基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发...

    Java中的SSL及HTTPS协议实例源码

    Java中的SSL(Secure Socket Layer)和HTTPS(Hypertext Transfer Protocol Secure)协议是网络通信安全的重要组成部分,尤其在处理敏感信息如用户登录凭证、支付数据等时,它们提供了必要的加密和身份验证机制。...

    SSL及HTTPS协议实例源码

    SSL(Secure Socket Layer)和HTTPS(Hypertext Transfer Protocol Secure)是互联网安全通信的重要协议,它们为网络数据传输提供了加密和身份验证机制。本资源包含了Java实现的HTTPS服务器和SSL服务器的源代码,有...

    springboot下配置SSL证书HTTPS访问

    SpringBoot 配置 SSL 证书实现 HTTPS 访问 SpringBoot 作为一个流行的 Java 框架, 提供了许多便捷的配置方式来实现 HTTPS 访问。HTTPS 是一种基于 SSL/TLS 加密的协议,用于确保数据在网络传输过程中的安全性。...

    Vue项目部署Nginx配置文件 SSL

    1. **基本配置**: - `server` 块:定义一个监听特定端口(通常是80)的服务器实例。 ```nginx server { listen 80; server_name yourdomain.com; # 替换为你的域名 } ``` 2. **Vue 项目静态文件服务**: -...

    禅道10.4的SSL配置

    1. **获取SSL证书**:首先,你需要从权威的证书颁发机构(如Let's Encrypt、Comodo、Verisign等)申请一个SSL证书。证书包含了服务器的公钥和颁发机构的信息,是建立HTTPS连接的基础。 2. **安装SSL证书**:在获得...

    C#:https访问Web服务器SSL认证项目实例

    即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP...

    Tomcat 配置SSL完美 https可以正常使用 小程序调用

    Tomcat 配置SSL完美 https可以正常使用 小程序调用Tomcat 配置SSL完美 https可以正常使用 小程序调用Tomcat 配置SSL完美 https可以正常使用 小程序调用

    delphi ssl库 IdSSLIOHandlerSocket1

    IdSSLIOHandlerSocket1会处理与服务器建立安全连接的所有细节,包括SSL握手、数据加密解密以及证书验证。 OpenSSL是SSL库的基础,它是一个强大的安全套接层密码库,包含各种主要的密码算法、常用的密钥和证书封装...

    nginx实现ssl之https改造(包含单机版以及负载均衡配置)

    二、制作与申请SSL证书1. 使用openssl生成私钥文件openssl genrsa -out server.key 20482. 生成CSR文件openssl req -new -key server.key -out server.csr3. 提交CSR给CA机构,购买SSL证书(如:Let's Encrypt、...

    SSL及HTTPS协议_world_java_https客户端_ssl_distancemiy_

    1. `javax.net.ssl.SSLServerSocket` 和 `javax.net.ssl.SSLSocket`:这两个类分别代表SSL服务器端和客户端的套接字,它们提供比普通Socket更高级别的安全保障。 2. `javax.net.ssl.SSLContext`:这是SSL/TLS的核心...

    SSL-Socket-Client_socket实现https_socketssl_SSLSOCKET_https_

    HTTPS是HTTP与SSL/TLS(Transport Layer Security,SSL的继任者)的结合,确保了用户和服务器之间的通信不被中间人攻击所窃取或篡改。 在原生的socket编程中实现SSL访问HTTPS,我们需要以下几个步骤: 1. **创建...

    Java中的SSL及HTTPS协议实例源码.rar

    SSL是一种用于在网络中建立安全连接的协议,而HTTPS则是HTTP协议与SSL/TLS(Transport Layer Security,SSL的后续版本)的结合,为HTTP提供了加密传输、服务器身份验证和消息完整性检查的能力。 SSL协议主要包含...

    nginx配置ssl实现https访问的步骤(适合新手)

    本文主要介绍了如何使用Nginx配置SSL以实现HTTPS访问,这对于初学者来说是一份非常实用的指南。首先,我们需要理解HTTPS的重要性,它通过SSL协议在HTTP基础上增加了数据加密和服务器身份验证,确保了数据传输的安全...

    nginx+tomcat8 ssl使用https访问

    1. **生成SSL证书**: - 首先,我们需要一个SSL证书来验证服务器的身份。`gencert.sh`文件很可能是一个脚本,用于生成自签名证书或申请权威CA(证书颁发机构)的证书。自签名证书用于测试环境,而生产环境通常需要...

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    这个实例主要涉及如何配置HttpClient来忽略SSL(Secure Socket Layer)验证,这对于在开发和测试环境中处理自签名证书或未认证的服务器非常有用。以下将详细介绍HttpClient的使用以及如何进行SSL验证的忽略。 首先...

Global site tag (gtag.js) - Google Analytics