今日头条一面:十道经典面试题解析芬芬细雨

本文介绍了HTTP状态码、HTTPS原理、TCP连接状态、虚拟内存与物理内存的区别,以及Eureka服务注册与发现机制。重点讲解了HTTPS的公钥、数字证书、TLS/SSL加密过程,以及TCP的三次握手和四次挥手,帮助理解网络通信的安全性和可靠性。
摘要由CSDN通过智能技术生成

有位朋友面试了宇宙条后端方向。整理了这几道面试真题以及答案,如有错误,欢迎大家指出哈。金九银十冲刺,面试的小伙伴加油呀。

1.http请求头里,expire和cache-control字段含义,说说HTTP状态码
1.1 expire和cache-control字段含义

  • Cache-Control是HTTP/1.1的头字段,用来区分对缓存机制的支持情况,请求头和响应头都支持这个属性。通过它提供的不同的值来定义缓存策略。主要有public、private、no-cache等值。
  • expires是http1.0的头字段,过期时间,如果设置了时间,则浏览器会在设置的时间内直接读取缓存,不再请求。

1.2 常见HTTP状态码

2.https原理,数字签名,数字证书。
2.1 https 原理

  • HTTPS = HTTP + SSL/TLS,即用SSL/TLS对数据进行加密和解密,Http进行传输。
  • SSL,即Secure Sockets Layer(安全套接层协议),是网络通信提供安全及数据完整性的一种安全协议。
  • TLS,即Transport Layer Security(安全传输层协议),它是SSL 3.0的后续版本。

  1. 用户在浏览器里输入一个https网址,然后连接到server的443端口。
  2. 服务器必须要有一套数字证书,可以自己制作,也可以向组织申请,区别就是自己颁发的证书需要客户端验证通过。这套证书其实就是一对公钥和私钥。
  3. 服务器将自己的数字证书(含有公钥)发送给客户端。
  4. 客户端收到服务器端的数字证书之后,会对其进行检查,如果不通过,则弹出警告框。如果证书没问题,则生成一个密钥(对称加密),用证书的公钥对它加密。
  5. 客户端会发起HTTPS中的第二个HTTP请求,将加密之后的客户端密钥发送给服务器。
  6. 服务器接收到客户端发来的密文之后,会用自己的私钥对其进行非对称解密,解密之后得到客户端密钥,然后用客户端密钥对返回数据进行对称加密,这样数据就变成了密文。
  7. 服务器将加密后的密文返回给客户端。
  8. 客户端收到服务器发返回的密文,用自己的密钥(客户端密钥)对其进行对称解密,得到服务器返回的数据。

2.2 数字签名,数字证书
了解过Https原理的小伙伴,都知道数字证书这玩意。为了避免公钥被篡改,引入了数字证书,如下:

数字证书构成

  • 公钥和个人信息,经过Hash算法加密,形成消息摘要;将消息摘要拿到拥有公信力的认证中心(CA),用它的私钥对消息摘要加密,形成数字签名.
  • 公钥和个人信息、数字签名共同构成数字证书。

3.tcp连接client和server有哪些状态,time_wait状态
3.1 tcp 连接
tcp连接时,客户端client 有SYN_SENDESTABLISHED状态,服务端server有SYN_RCVDESTABLISHED状态。

开始客户端和服务器都处于CLOSED状态,然后服务端开始监听某个端口,进入LISTEN状态

  • 第一次握手(SYN=1, seq=x),发送完毕后,客户端进入 SYN_SEND 状态
  • 第二次握手(SYN=1, ACK=1, seq=y, ACKnum=x+1), 发送完毕后,服务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值