戊子仲秋
Golang后端
·2024-02-01
#学习# #阅读# #闲聊# 备战暑期实习 Day215 1. 随便聊聊时间~ 太感动了,谢谢球友昨天的鼓励,我感觉好多了,现在又活蹦乱跳了,2 月的第一天过的很开心,这个月的开头不错~ 今天没有什么想说的东西,毕竟是随便聊聊,不随便就不聊了 2. 美食分享时间~ 今天中午吃了一顿咖喱鱼排饭,很好吃,饱食度回复 50 点,开心值回复 30 点,san 值回复 10 点,评价:如果可以,我明天还想吃一次这家店的咖喱 唯一可惜的就是忘记拍照了,如果明天再吃一顿就拍来分享一下 3. 每日一道面试题~ 问题: HTTPS 建立过程是怎么样的? 回答: 首先客户端要和服务端先进行 TCP 三次握手建立 TCP 连接。接下来,会进行 TLS 四次握手: 1)第一次 TLS 握手:客户端首先会发一个 Client Hello 消息,消息里面有客户端使用的 TLS 版本号、支持的密码套件列表、客户端生成的随机数,这个随机数是用来后面生成对称密钥元素之一。 2)第二次 TLS 握手:当服务端收到客户端的消息后,会返回 Server Hello 消息给的客户端,消息里面有服务器确认的 TLS 版本号、密码套件、服务端生成的随机数,接着服务端为了证明自己的身份,会发送服务器使用的证书(Server Certificate) 给客户端,这个消息里含有数字证书(服务器注册在 CA 机构的时候,CA 的私钥对服务端的公钥的加密,生成数字证书给服务端)。随后,服务端发了 Server Hello Done 消息,目的是告诉客户端,我已经把该给你的东西都给你了,本次握手完毕。 3)然后是 校验证书:客户端收到服务端的数字证书的时候,会对校验服务端的证书,如果证书是合法的,客户端会用 CA 机构的公钥解密数字证书拿到服务端的公钥。 4)第三次 TLS 握手:客户端再次生成一个随机数,用服务端的公钥加密后,并这个加密后的随机数传给服务端。服务端收到后,用服务端的私钥解密得到客户端的第二个随机数。到这里,服务端和客户端双方都有 3 个随机数,双方根据已经得到的三个随机数,会根据算法生成对称密钥。生成完对称密钥后,客户端会发一个消息告诉服务端开始使用对称加密方式发送消息,并且还会对之前所有发送的数据做个摘要,再用对称加密加密一下,让服务器做个验证,验证对称密钥是否可用,以及之前握手信息是否有被中途篡改。 5)第四次 TLS 握手:服务器也是同样的操作,发送消息告诉客户端开始用对称加密方式发送消息,并且也会对数据做个摘要,并用对称密钥加密一下,让客户端做个校验,如果双方都验证加密和解密没问题,那么 TLS 四次握手正式完成了。 最后,就可以用对称密钥加解密 HTTP 请求和响应了。 4. 读书分享时间~ 今天在快乐打游戏,明日方舟的新春活动更新了,今年讲的的“农”(图一) 明日方舟是我最喜欢的游戏,没有之一,我喜欢他讲的故事~ 【你听见那一方水土的心跳,它怀抱中的湿润与温热。】 【你嗅闻香火与饴糖,沿着绵延数里的水渠,在高粱秆中疯长。】 【你触到被双手举起的城市,白玉的,钢铁的,比土地更加年轻的躯体。】 【你见她走来,种子从指缝间落下,没入一个百年,与下一个百年的土壤。】 【为何还站在田垄上,难道大荒茫茫,不是你日夜耕耘的家乡?】 【——《戊子 · 凛冬手记》】 今天的闲聊就到这里啦~ 谢谢你能看到这里呀~ 我们明天的闲聊不见不散~~~
0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
下载 APP