C++爬虫原理(九):Https和Http的区别
Https : (Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司(Netscape)进行,并内置于其浏览器Netscape Navigator中,提供了身份验证与加密通讯方法。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面.
HTTPS它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。SSL使 用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X。509数字认证,如果需要的话用户可以确认发送者是谁。
Http : ( HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法,现在已经发展为Http1.1,Http1.2协议.
Https 和 Http的区别:
http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议 http和https使用的是完全不同的连接方式用的端口也不一样:前者是80,后者是443。
http的连接很简单,是无状态的 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全 HTTPS解决的问题.
一般来说强制Https协议的网站会越来越多,搜索引擎巨头Google,也开始公开支持并优先推广展现Https网站,因为能给客户带来更好的安全性。facebook,推特,youtube,企业站,网银等都是强制支持Https协议的,所以从技术角度,我们必须且要支持Https协议的爬虫。
爬虫编程的区别:
在http协议建立连接的时候,连接完毕,开始SSL协议建立完毕即可!开发工具依赖OpenSSL。非常方便好使。不过SSL比http耗资源。下篇会简单介绍SSL编程的实现。
整理 :cplusplus.me 资料来源 :百度百科 & 互联网 & Http 1.1 -1.2协议说明 & OpenSSL