Android开发知识学习——HTTPS

文章目录

定义

  • HTTP Secure / HTTP over SSL / HTTP over TLS

  • SSL:Secure Socket Layer -> TLS Transport Layer Security

  • 定义:在HTTP之下增加的一个安全层,用于保障HTTP的加密传输

  • 本质:在客户端和服务器之间用非对称加密协商出一套对称密钥,每次发送信息之前将内容加密,收到之后解密,达到内容的加密传输

  • 为什么不直接用非对称加密?

    非对称加密由于使用了复杂了数学原理,因此计算相当复杂,如果完全使用非对称

    加密来加密通信内容,会严重影响网络通信的性能

HTTPS连接

  1. 客户端请求建立TLS连接
  2. 服务器发回证书
  3. 客户端验证服务器证书
  4. 客户端信任服务器后,和服务器协商对称密钥
  5. 使用对称密钥开始通信

HTTPS 连接建立的过程

  1. Client Hello 请求建立信息

  2. Server Hello 服务端把消息发回客户端

  3. 服务器证书 信任建立

  4. Pre-master Secret 算出Master Secret算出对称加密用的密钥

  5. 客户端通知:将使用加密通信

  6. 客户端发送:Finished

  7. 服务器通知:将使用加密通信

  8. 服务器发送:Finished

课后题

1.【单选题】HTTPS 的消息传输为什么要用对称加密,而不是非对称加密?

A. 因为对称加密更安全

B. 因为对称加密性能更好

C. 因为非对称加密的历史太短,不是所有服务器都兼容非对称加密

答案: B

答案解析:HTTPS 的消息传输使用对称加密而不是非对称加密,主要是因为对称加密的性能更好。非对称加密虽然安全性更高,但由于其算法复杂度较高,导致加密和解密的速度较慢。相比之下,对称加密的算法简单,加密和解密的速度更快,可以更好地满足 HTTP 协议对消息传输的实时性要求。因此,在 HTTPS 中使用对称加密可以更好地保障消息传输的效率和安全性。

2.【单选题】HTTPS 连接建立过程中,证书的作用在于?

A. 让客户端确信和自己通信的对象确实是自己认为的对象

B. 让客户端确信自己访问的网站不是非法网站

C. 让客户端确信自己的计算机是足够安全的,没有被入侵

答案: A

答案解析:HTTPS 连接建立过程中,证书的主要作用是让客户端确信和自己通信的对象确实是自己认为的对象。证书是由权威的第三方机构颁发的,包含了服务器的公钥和相关信息,其中包含证书颁发机构(CA)、主题、公钥、有效期等。客户端在建立 HTTPS 连接时,会首先获取服务器证书,通过验证证书的合法性和有效性来确认服务器的身份。因此,证书在 HTTPS 连接建立过程中起着至关重要的作用,可以确保通信的安全性和可信度

3.【多选题】HTTPS 的连接建立过程的证书验证这一步,主要是验证证书的哪些内容?

A. 证书的合法性

B. 证书持有方近期无犯罪史

C. 证书持有方近期无网络犯罪史

D. 证书的 Host 归属与客户端期望的一致性

答案: A、D

答案解析:HTTPS 的连接建立过程的证书验证这一步,主要是验证证书的以下内容:

A. 证书的合法性:证书是否由权威的第三方机构颁发,是否在有效期内。

D. 证书的 Host 归属与客户端期望的一致性:证书是否与客户端期望访问的网站或服务相关联。

B和C选项关于证书持有方的犯罪史与网络犯罪史的内容并不属于HTTPS连接建立过程中证书验证的主要内容。

相关推荐
扶风ff1 小时前
练题簿在线免费刷题:创建个人任务,把刷题、听题和模考目标放到每天的学习中
开发语言·javascript·学习·小程序
Smoothcloud润云1 小时前
GPU服务器租用实例DNS与HTTPS下载排障实战
大数据·运维·服务器·人工智能·https·gpu算力
SatanII2 小时前
MySQL 数据库学习总结|理论 + SQL 实训完整笔记
数据库·学习·mysql
~kiss~2 小时前
LangGraph 之 Human-in-the-loop,人机协作/在环
学习
陈年老古董2 小时前
Hive 分区表学习笔记:语法、操作、二级分区与动态分区
hive·笔记·学习
li星野2 小时前
The 3 Common Tenses — Notes & Supplements
学习
小弥儿2 小时前
GitHub今日热榜 | 2026-10-09:PS5 移植登顶,AI 创作工具占三席
人工智能·学习·开源·github
网络小江2 小时前
上网第四十八课:抓包实战入门——Wireshark 读懂第一个包
网络协议
全栈道3 小时前
AI 时代,软件开发应该如何学习
人工智能·学习
墨香幽梦客3 小时前
SSL/TLS握手过程全拆解:从ClientHello到Finish的关键步骤与性能优化
网络协议·性能优化·ssl