http与https

来源:互联网 发布:mac上前端开发软件 编辑:程序博客网 时间:2024/06/01 07:50

我们知道网络OSI模型的七个层次:

其中TCP/IP和UDP协议属于传输层,而基于TCP协议的应用层协议有HTTP,HTTPS,FTP,SMTP,Telnet,POP3,Finge,NNTP,IMAP4等等;基于UDP的应用层协议有TFTP、SNMP与DNS等等。

这里主要说一下HTTP和HTTPS协议的关联,其余的以后会补充。

大多数人都知道的是HTTPS协议是HTTP协议的安全模式,是以安全为目标的HTTP通道。但是为什么HTTPS会更安全呢?

是因为HTTPS在HTTP下加入了SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

关于SSL:

SSL 位于 TCP/IP 协议与各种应用层协议之间,应用层数据不再直接传递给传输层,而是传递给 SSL 层,SSL 层对从应用层收到的数据进行加密,并增加自己的 SSL 头。SSL 协议分为两层,由多个子协议组成,分别是:
1、TLS记录协议:建立在可靠的传输协议(如TCP)之上。
2、TLS握手协议、警报协议、修改密码规范协议:建立在记录协议之上。

详细可参见:http://www.jianshu.com/p/9b645c558456

HTTP与HTTP区别主要有如下四点:

1、https协议需要到ca(Certificate Authority)申请证书,一般免费证书很少,需要交费。
2、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

关于HTTP的补充说明:

1、HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
2、HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
3、HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

原创粉丝点击