当前位置: 首页 > wzjs >正文

做网站税点推广代运营公司

做网站税点,推广代运营公司,修改网站的备案主体,上海市质量工程建设管理协会网站目录 1.前言 2.正文 2.1状态码 2.2HTTP与HTTPS的关系 2.3SSL协议 2.3.1对称加密 2.3.2非对称加密 2.3.3中间人攻击 2.3.4校验机制 2.3.4.1证书 2.3.4.2数字签名 1. 数字签名的生成过程 2. 数字签名的验证过程 2.4TLS协议(握手过程) 3.小结…


目录

1.前言

2.正文

2.1状态码

2.2HTTP与HTTPS的关系

2.3SSL协议

2.3.1对称加密

2.3.2非对称加密

2.3.3中间人攻击

2.3.4校验机制

2.3.4.1证书

2.3.4.2数字签名

1. 数字签名的生成过程

2. 数字签名的验证过程

2.4TLS协议(握手过程)

3.小结


1.前言

哈喽大家好吖,今天继续来给大家网络原理相关方面的讲解,主要内容包括状态码以及HTTPS中加密的全过程,让我们开始吧。

2.正文

2.1状态码

想必大家都遇到过这个画面:

这个耳熟能详的“404”,就是状态码啦。

状态码(HTTP与HTTPS互通)是服务器与客户端通信的“语言”,用3位数字直观反馈请求结果。它不仅是开发调试的核心工具,也是优化用户体验和排查问题的关键线索。

HTTP状态码https://baike.baidu.com/item/http%e7%8a%b6%e6%80%81%e7%a0%81/5053660


HTTP状态码按首位数字分为5类:

类别范围含义核心逻辑
1xx100-199信息性状态请求已被接收,需客户端继续操作
2xx200-299成功响应请求被正确处理并返回预期结果
3xx300-399重定向资源位置变化,需客户端跳转
4xx400-499客户端错误请求语法错误或权限不足
5xx500-599服务器错误服务器无法完成合法请求

在我前面SpringMVC的博文中,状态码为我们的调试工作发挥了举足轻重的作用,下面我们介绍几个比较重要的状态码。

 2xx:成功响应:

  • 200 OK
    默认成功状态,适用于GET、POST等请求。
    常见误区:

    • POST请求成功后,部分开发者误用200而非201(资源已创建)。

    • 删除操作成功后,建议返回204(无内容)而非200。

  • 201 Created
    场景:资源创建成功(如提交表单生成新订单)。
    响应头要求:必须包含 Location 字段指向新资源地址。

  • 204 No Content
    场景:请求成功但无需返回内容(如删除资源、提交无返回的表单)。
    技术细节:响应体必须为空,浏览器不会刷新页面。


4xx:客户端错误:

  • 400 Bad Request
    通用错误:请求语法错误(如JSON格式错误、缺少必填参数)。
    开发技巧:后端应返回具体错误信息(如 { "error": "Invalid email format" })。

  • 401 Unauthorized
    未认证:需身份验证(如未登录用户访问个人中心)。
    响应头要求:必须包含 WWW-Authenticate 字段定义认证方式。

  • 403 Forbidden
    无权限:身份已认证,但无权访问资源(如普通用户访问管理员页面)。
    与401的区别:401是“未证明身份”,403是“身份已知但权限不足”。

  • 404 Not Found
    资源不存在:URL路径错误或资源已被删除。
    SEO影响:过多404错误会降低网站排名,建议配置自定义404页面引导用户。

  • 429 Too Many Requests
    限流防护:客户端请求频率过高(如API防刷机制)。
    响应头要求:应包含 Retry-After 告知重试时间。


5xx:服务器错误:

  • 500 Internal Server Error
    通用服务端错误:代码异常(如未捕获的Exception、数据库连接失败)。
    开发建议:记录详细日志(如错误堆栈、请求参数),避免直接返回原始错误给客户端。

  • 502 Bad Gateway
    网关错误:代理服务器(如Nginx)无法从上游服务器(如Node.js)获取响应。
    常见原因:上游服务崩溃、防火墙拦截、请求超时。

  • 503 Service Unavailable
    服务不可用:服务器临时过载或维护(如电商大促时流量激增)。
    优化方案:返回 Retry-After 头,配合负载均衡和熔断机制。

  • 504 Gateway Timeout
    网关超时:代理服务器等待上游响应超时。
    排查方向:检查后端服务性能、数据库查询效率、网络延迟。


 2.2HTTP与HTTPS的关系

通俗理解:

HTTP(HyperText Transfer Protocol):

一种明文传输协议,数据在客户端与服务器之间以未加密形式传输,如同寄送明信片,内容对所有人可见

HTTPS(HTTP Secure):

HTTP的安全升级版,通过 SSL/TLS协议 对传输内容加密,如同将明信片装入防拆封的保险箱


横向对比HTTP与HTTPS协议:

1)数据传输安全性:

  • HTTP:数据以明文传输,容易被窃听、篡改。
  • HTTPS:通过 SSL/TLS 协议对数据进行加密传输,提供数据机密性和完整性保障。

2)端口号:

  • HTTP:默认使用端口 80。
  • HTTPS:默认使用端口 443。

3)性能:

  • HTTP:无加密过程,连接建立速度稍快。
  • HTTPS:基于 HTTP上又加了SSL(Secure Sockets Layer)或TLS(Transport Layer Security)协议来实现的加密传输,加解密过程增加了计算开销,握手时间较长,但现代硬件和协议优化已使性能差距减小。 

下文我们就要展开本文的重中之重,加密的全过程了。 


2.3SSL协议

2.3.1对称加密

定义:

对称加密是一种加密方式,加密和解密使用同一个密钥。就像用同一把钥匙锁门和开门,只有持有钥匙的人才能操作。

具体步骤

  • 客户端与服务器通过TLS握手协商出一个会话密钥(Session Key)。
  • 双方使用该密钥对HTTP报文进行对称加密传输。
  • 会话结束后密钥销毁,下次连接生成新密钥。

 对称加密效率较高,但相反的安全性不足:


2.3.2非对称加密

定义

非对称加密使用一对数学关联的密钥

  • 公钥(Public Key):公开给所有人,用于加密数据(如同信箱的投递口)

  • 私钥(Private Key):严格保密,用于解密数据(如同信箱的专属钥匙)

核心特性

  1. 公钥加密 → 私钥解密:任何人都能用公钥加密数据,但只有私钥持有者能解密。

  2. 私钥签名 → 公钥验签:私钥可生成数字签名,公钥可验证签名真实性。

对称加密,成本是比较高的,不适合加密大量的数据。大量的业务数据仍然通过对称密钥来加密
对称密钥,如果数据量小则通过非对称加密的方式来传输 。

当前的场景有三个密钥:

  1. 客户端生成的对称密钥。
  2. 服务器生成的公钥,可以给所有设备告知。
  3. 服务器生成的私钥,只有自己知道 。

上述这样的流程存在重大安全隐患,黑客可以通过特殊手段,来获取到对称密钥~~ 破坏后续传输的安全性~那就是中间人攻击 。


2.3.3中间人攻击

定义

中间人攻击(Man-in-the-Middle Attack, MITM)指攻击者秘密介入通信双方之间,窃听、拦截甚至篡改数据,而通信双方对此毫无察觉。

核心原理

  1. 伪装身份:攻击者伪造通信一方的身份(如伪装成服务器或路由器)。

  2. 劫持通信:将双方的流量引导至攻击者控制的节点。

  3. 操纵数据:解密、查看或修改数据后转发给真实接收方。

通俗理解

  • 正常通信:A → 快递员 → B

  • 中间人攻击:A → 伪装成快递员的黑客 → B

虽然服务器私钥并没有被黑客获取,但请求与相应都被黑客一览无余,所以为了安全,引入了一些校验机制,其中包括证书与数字签名。 


2.3.4校验机制

在HTTPS通信中,校验机制需解决两个核心问题:

  1. 身份真实性:确保通信的服务器是合法的(防止中间人伪造)。

  2. 数据完整性:确保传输的证书和数据未被篡改。

解决方案

  • 证书 → 证明服务器身份

  • 数字签名 → 验证证书的合法性

2.3.4.1证书

一个标准的证书包含以下关键信息:

字段作用
Subject(主体)证书持有者的信息(如域名、组织名称)
Public Key服务器的公钥(用于加密数据或验证签名)
Issuer(颁发者)签发证书的权威机构(CA,如Let's Encrypt、DigiCert)
有效期证书的有效起止时间

证书颁发流程:

  1. 生成密钥对:服务器生成公钥和私钥。

  2. CSR(证书签名请求):服务器向CA提交包含公钥、域名等信息的CSR文件。

  3. CA验证身份:CA通过DNS记录、文件验证或邮件验证确认申请者对域名的控制权。

  4. 签发证书:CA用私钥对证书内容签名,生成最终证书。

先讲解完证书的概念,到下文数字签名介绍完后会讲解客户端拿到证书和数字签名会做些什么 


2.3.4.2数字签名

数字签名,本质上是一个校验和。

1. 数字签名的生成过程

  • 计算哈希值:对证书内容(除签名外)使用哈希算法生成摘要。

  • 私钥加密哈希值:CA用私钥对哈希值加密,生成数字签名。

2. 数字签名的验证过程

  • 解密签名:浏览器用CA的公钥解密签名,得到哈希值H1。

  • 重新计算哈希值:对收到的证书内容计算哈希值H2。

  • 比对哈希值:若H1=H2,则证书未被篡改;否则判定为伪造证书。

如果校验和一样,则说明收到的数据是原始数据。

验证逻辑

  • 只有CA的私钥能生成合法签名 → 签名合法则证书可信。

  • 哈希值匹配 → 证书内容未被篡改。

客户端如何确保拿到的 pub2是公证机构的 pub2,而不是黑客伪造的 pub2 呢??
pub2就不是通过网络传输的,而是操作系统中内置的~(安装好系统,系统就内置了一系列知名公正机构的公钥)只要安装正版系统,不是黑客搞的盗版系统就可以信任 pub2 是正确合法的~

如果黑客想要直接修改证书中的公钥为自己的公钥,此时就会导致客户端计算的校验和和解密出来的原始校验和就对不上。
此时客户端就会报错,浏览器就会弹出一个红色的页面,告诉你该网站不安全,是否要继续访问。


2.4TLS协议(握手过程)

概念

TLS(Transport Layer Security)是SSL的继任者,用于在互联网上建立加密通信通道,解决三大核心问题:

  1. 保密性:数据加密传输(防窃听)。

  2. 完整性:数据未被篡改(防篡改)。

  3. 真实性:验证通信方身份(防伪装)。

握手流程解析:

  1. 客户端发送 ClientHello 消息给服务器,包含客户端支持的 SSL/TLS 版本、加密套件列表以及一个随机数(Client Random)
  2. 服务器响应 ServerHello 消息,包含服务器选定的 SSL/TLS 版本、加密套件以及另一个随机数(Server Random)
  3. 服务器发送证书(Certificate)给客户端,证书包含服务器的公钥以及由受信任的证书颁发机构(CA)签名的数字证书。
  4. 如果服务器需要客户端认证,则请求客户端证书(Client Certificate Request)。
  5. 服务器发送 ServerHelloDone 消息,表示握手的初步消息已经发完。
  6. 客户端验证服务器证书,如果证书有效,它会生成一个预主密钥(Pre-Master Secret),并使用服务器的公钥加密这个预主密钥,把它发送给服务器。
  7. 服务器使用私钥解密预主密钥,客户端和服务器使用约定好的算法计算出主密钥(MasterSecret)。
  8. 客户端发送 ChangeCipherSpec 消息,表示后续的通信将使用协商好的密钥和加密算法。
  9. 客户端发送 Finished 消息,包含使用主密钥计算的握手消息摘要,以确认握手的完整性。
  10. 服务器发送 ChangeCipherSpec 消息,也表示后续通信将使用协商好的密钥和加密算法.。
  11. 服务器发送 Finished 消息,包含使用主密钥计算的握手消息摘要,双方握手完成,后续通信开始使用对称加密进行。

(部分内容参考面试鸭)

握手过程中的安全机制

1. 防中间人攻击

  • 证书验证:确保服务器公钥未被伪造。

  • 签名验证:Server Key Exchange消息中的参数由服务器私钥签名。

2. 前向保密(Perfect Forward Secrecy, PFS)

  • 原理:每次会话使用临时密钥(如ECDHE),即使长期私钥泄露,历史通信仍安全。

  • 启用条件:使用ECDHE密钥交换算法。

3. 防重放攻击

  • 随机数(Client/Server Random):确保每次会话密钥唯一。

  • Finished消息:验证握手过程完整性。

3.小结

今天的分享到这里就结束了,喜欢的小伙伴点点赞点点关注,你的支持就是对我最大的鼓励,大家加油!

http://www.dtcms.com/wzjs/13125.html

相关文章:

  • 京津冀协同发展调研报告seo工资待遇怎么样
  • 用php做网站的方法广州网站运营专业乐云seo
  • 营销型网站建设专家产品推广网站
  • 玉林做绿化苗木网站的是哪个单位域名注册 万网
  • 网站设计的实例网站开发流程
  • 搜不到自己的网站seo基础知识考试
  • 专门做羽毛球的网站b站推广渠道
  • 常州网站建设要多少钱黄冈seo顾问
  • 把别人的图片拿来做网站找培训机构的app
  • 有网站开发经验怎么写简历香港疫情最新情况
  • 网站公司一站式服务小米市场营销案例分析
  • 有教做桥梁质检资料的网站吗网络推广引流有哪些渠道
  • 如何升级网站后台长沙网络营销顾问
  • 网站排名优化培训电话2023最近爆发的流感叫什么
  • 网站建设的含义优化网站链接的方法
  • 北京做网站公司 seo江苏seo和网络推广
  • 网站怎么推广和应用网站推广的主要方法
  • 开放平台是干什么的裤子seo关键词
  • 西宁做网站的公司捌君博力请免费无代码开发平台
  • 怎么样让百度收录网站网络广告营销案例有哪些
  • 网站开发技术项目sem优化
  • 太原云建站模板优化seo教程技术
  • 怎么用自己主机做网站百度客服中心电话
  • 网站的维护与更新永久免费无代码开发平台网站
  • 西安专业网站建设windows优化大师功能
  • 有什么推广网站西安seo服务
  • 电子商务网站开发开题报告衡水网站seo
  • 网站建设制作设计公司广安网站seo
  • 免费的微网站制作seo点击排名软件哪里好
  • dw6做网站水果网络营销策划书