HTTPS 安全机制
使用 HTTPS 时,所有的 HTTP 请求和响应数据在发送到网络之前,都要先进行加密。 HTTPS 在 HTTP 下面提供了一个数据传输级的安全层(SSL or TLS),用来对数据进行加密。
写这篇文章时,看到了一篇很形象的阐述 HTTPS 的安全的故事,故事有趣不枯燥,推荐大家可以直接看看这篇 HTTPS 的故事。
使用 HTTPS 时,所有的 HTTP 请求和响应数据在发送到网络之前,都要先进行加密。 HTTPS 在 HTTP 下面提供了一个数据传输级的安全层(SSL or TLS),用来对数据进行加密。
写这篇文章时,看到了一篇很形象的阐述 HTTPS 的安全的故事,故事有趣不枯燥,推荐大家可以直接看看这篇 HTTPS 的故事。
Web 上对于一些私人数据,获取时需要进行用户认证,即要用户名和密码,才能访问资源。浏览器上可以通过 Cookie 来进行认证,移动客户端没有 Cookie,可以使用 HTTP 原生提供的一些认证机制。
这里介绍两种最常见的 HTTP 认证形式,基本认证(basic authentication)和摘要认证(digest authentication)。
HTTP 协议规定了客户端和服务器直接通信的规范,在网络模型中属于应用层,与开发者直接打交道,它本身也是基于 TCP 和 IP 协议来获取请求和响应,默认 HTTP 使用 TCP 的 80 端口,HTTPS 使用 443 端口。
HTTP 协议发展至今,已经经历过好几个版本。
netcat,简写为 nc,是 unix 系统下一个强大的命令行网络通信工具,用于在两台主机之间建立 TCP 或者 UDP 连接,并提供丰富的命令进行数据通信。nc 在网络参考模型属于应用层。使用 nc 可以做很多事情:建立连接,发送数据包,监听端口,扫描端口,处理 ip4 和 ip6,和 telnet 不同,nc 会区分错误输出和标准输出,telnet 则都是标准输出。
教科书上把网络通信协议 OSI(Open System Interconnection)参考模型分成了 7 层,这 7 层模型撑起了网络通信的骨架,是一个理想的模型,而 TCP/IP 协议大致上实现了这种骨架,相比 OSI模型, TCP/IP 更加实用,因此在互联网众多通信协议中最为著名,有人把 TCP/IP 协议分为 4 层,有人分为 5 层,我认为划分为 5 层,更容易理解。