https提供安全的web通讯

https提供安全的web通讯
1.原理部分:
1)了解加密算法:
加密算法的分类:对称加密和非对称加密
a.对称加密:加密和解密使用同一个密钥,优点是速度快,缺点是密钥的共享困难。典型的对称加密算法有
DES/AES/RC5/3DES等。
b.非对称加密:生成一个秘密对(公钥和私钥),加密过程中可以是私钥加密公钥解密;也可以是公钥加密私钥解密;一般
情况下私钥由服务器保存,公钥共享给客户端,采用公加私解的方式。它的特征是不论你得到公钥还是私钥都是无法逆推密
钥对的另一半,这保证了密钥的安全性。缺点是加密速度极慢,不适合加密数据量大的流量。典型的非对称加密算法有
RSA/DSA.
如何选择加密算法?
如果选择对称加密,密码的共享(传输)过程不安全;如果选择非对称加密,加密速度慢。
一个完美的解决方案:
用对称加密的密钥用于加密数据,用户非对称加密来保护对称加密的密钥,实现又快又安全的数据加密。保证了数据的私密
性。

2)证书服务器:CA
在上述方案中还存在这样一个问题:如何确认公钥是由真正的密钥对拥有者所共享(传输)的。解决该问题的方案是证书认
证,CA服务器提供证书认证服务。
证书认证的过程:
a.服务器生成密钥对(公钥和私钥)和认证请求,
b.CA服务器根据认证请求为服务器颁发根证书,
c.服务器获取根证书并共享给客户机,客户导入根证书.
d.通讯过程中,客户机依据根证书确认公钥的合法性.
证书服务器分为:公共证书服务器(如微软、google等)和企业自建的私有证书服务器(openssl实现)。证书认证服务器提
供了数据的不和否认性。

3)数字签名:HASH
在上述的方案中,依然还存在一个问题:无法判断数据在传输过程中的完整性(是否被篡改过)。
典型的HASH算法:MD5,SHA1,SHA256,SHA512等。

服务器使用HASH算法对所需传输的数据进行hash计算的出一串数字,并将这串数字公布,数据从服务器上传输到客户机后,
客户机使用相同的hash算法计算hash值,如果和服务器公布的数字签名一致,则数据没有被篡改,反之亦然。这样就保证了
数据的完整性。

4)了解https的工作原理:
https(Hypertext Transfer Protocol over Secure Socket Layer),即http下加入了SSL,端口默认为443.
SSL:安全套接字层,是netscape公司设计的主要用于安全传输。
https通讯过程:
a.客户端请求https链接(通过https://实现),服务端返回证书(携带了公钥、证书的颁发机构、选择一组加密算法和HASH算法等信息)给客户端。
b.客户端收到证书后:验证证书的合法性,生成随机密码(使用协商好的对称加密算法)并使用公钥加密,使用约定的HASH计算握手消息并使用随机密码对消息进行加密。
c.客户端将由公钥加密的随机密码和由随机密码加密过的HASH数字签名发给服务器。
d.服务器(网站)收到随机密码和数字签名后:用私钥解密得到随机密码,用随机密码解密得到数字签名,用数字签名验证握手消息的完整性。并使用随机密码加密一段握手消息发给客户端(浏览器)。
e.浏览器解密握手并计算握手hash,确保数据的完整性。之后的通信数据使用随机密码进行加密(对称算法)。

2.

时间: 2024-08-06 12:27:48

https提供安全的web通讯的相关文章

JavaScript之Web通讯

web通信,一个特别大的topic,涉及面也是很广的.因最近学习了 javascript 中一些 web 通信知识,在这里总结下.文中应该会有理解错误或者表述不清晰的地方,还望斧正! 一.前言 1. comet技术 浏览器作为 Web 应用的前台,自身的处理功能比较有限.浏览器的发展需要客户端升级软件,同时由于客户端浏览器软件的多样性,在某种意义上,也影响了浏览器新技术的推广.在 Web 应用中,浏览器的主要工作是发送请求.解析服务器返回的信息以不同的风格显示.AJAX 是浏览器技术发展的成果,

Step by Step 配置使用HTTPS的ASP.NET Web应用[转载]

原创地址:http://www.cnblogs.com/jfzhu/p/4064654.html 转载请注明出处 有关HTTPS.SSL以及SSL证书的工作原理,参见 <HTTPS那些事(一)HTTPS原理> <HTTPS那些事(二)SSL证书> <HTTPS那些事(三)攻击实例与防御> 本文将演示如何在IIS中配置一个HTTPS的ASP.NET Web Application. (1)打开Internet Information Services (IIS) Mana

在Salesforce中调用外部系统所提供的的Web Service

这里需要提供外部service所对应的WSDL文件(Salesforce只支持从本地上传),并且提供的WSDL文件有如下两点要求: 1):wsdl 文件只能有一个binding,Salesforce是不支持多个binding的 2):wsdl 文件要包含所有的schema信息,Salesforce是不支持external schema的import的 接下来便是具体的操作步骤: 1):按照此目录 Setup --> Build --> Develop --> Apex Classes 找

Step by Step 配置使用HTTPS的ASP.NET Web应用

原创地址:http://www.cnblogs.com/jfzhu/p/4064654.html 转载请注明出处 有关HTTPS.SSL以及SSL证书的工作原理,参见 <HTTPS那些事(一)HTTPS原理> <HTTPS那些事(二)SSL证书> <HTTPS那些事(三)攻击实例与防御> 本文将演示如何在IIS中配置一个HTTPS的ASP.NET Web Application. (1)打开Internet Information Services (IIS) Mana

https-配置使用HTTPS的ASP.NET Web应用

有关HTTPS.SSL以及SSL证书的工作原理,参见 <HTTPS-HTTPS原理> <HTTPS-SSL证书> <HTTPS-攻击实例与防御> 本文将演示如何在IIS中配置一个HTTPS的ASP.NET Web Application. (1)打开Internet Information Services (IIS) Manager (2)创建一个Self-Signed Certificate A self-signed certificate is an ident

源码提供!Android即时通讯和sns开源项目汇总

博客原地址: Android即时通讯和sns开源项目汇总 这是一个整理即时通讯(IM)和社交系统(SNS)优秀开源项目的文档,项目上传github欢迎提交更新. github地址:https://github.com/CameloeAnthony/Perfect_IM_SNS 一 即时通讯和社交系统平台 1 环信(推荐) 2 阿里百川 云旺 3 融云 4 OpenSNS -- #二 基于环信的即时通讯开源项目 数据整理自环信官网,网络数据和github.更多信息请参考环信官方网站和ImGeek

WebSocket 一场Web 通讯革命悄然来临——Node.js摸石头系列之五

转自: http://www.cnblogs.com/hsxixi/archive/2011/12/24/2300641.html 从这回开始,我们来搭建一个简单的聊天室.因为 http 协议是无状态的,搭建聊天室这样的事从来都让人觉得疙疙瘩瘩的不是那么顺理成章.如果不使用 flash.applet 等浏览器插件的话,我们需要定期轮询服务器来获取大家的聊天信息.这造成了一定的延迟和大量的网络通讯. 不过,随着 HTML5 的浮出水面,这一情况有望彻底改观了.在 HTML5 的众多特性中,有一个总

web通讯长连接与长轮询

基于HTTP的长连接,是一种通过长轮询方式实现"服务器推"的技术,它弥补了HTTP简单的请求应答模式的不足,极大地增强了程序的实时性和交互性. 一.什么是长连接.长轮询? 用通俗易懂的话来说,就是客户端不停的向服务器发送请求以获取最新的数据信息.这里的“不停”其实是有停止的,只是我们人眼无法分辨是否停止,它只是一种快速的停下然后又立即开始连接而已. 二.长连接.长轮询的应用场景 长连接.长轮询一般应用与WebIM.ChatRoom和一些需要及时交互的网站应用中.其真实案例有:WebQQ

https经过ngxin在web服务器收到http请求

一. 问题描述: nginx代理nexus的时候页面不全,部分https地址自动转成http了,使用方案四解决的 浏览器输入https://www.mysite.com,后台通过request.getScheme()获取到的确实http而不是https,通过request.getRequestURL()拿到的也是http://www.mysite.com 分析原因:因为nginx+tomcat部署web服务,tomcat接受到的请求都是来自于nginx的http请求.浏览器请求https是外网域