【Linux网络】Https【下】{CA认证/证书的签发与认证/安全性/总结}

news2024/10/5 18:30:35

文章目录

  • 1.引入证书【为方案五铺垫】
    • 1.1再谈https
    • 1.2SSL/TLS
    • 1.3CA机构
    • 1.4理解数字签名
    • 1.4继续铺垫
    • 1.5方案五
      • 服务端申请证书
      • 回顾一二三
      • 回顾方案四
      • 方案五过程
      • 寻找方案五的漏洞
      • 客⼾端对证书进⾏认证
  • 2.查看证书
    • 2.1查看浏览器的受信任证书发布机构
    • 2.2中间⼈有没有可能篡改该证书
    • 2.3为什么摘要内容在⽹络传输的时候⼀定要加密形成签名
  • 3.总结
  • 4.https一定是安全的吗
  • 5.应用层总结

1.引入证书【为方案五铺垫】

1.1再谈https

  1. HTTPS,全称Hypertext Transfer Protocol Secure,是一种在HTTP协议上加入了安全层(SSL/TLS)的协议。它通过传输加密和身份认证保证了传输过程的安全性,被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。
    HTTPS的特点主要包括:
    安全性:HTTPS通过SSL/TLS协议对数据进行加密和身份验证,确保数据在传输过程中的保密性和完整性。加密保护了敏感数据的机密性,防止被第三方截获和窃取;身份验证防止了中间人攻击,确保了通信双方的身份可信。
    可信性:HTTPS使用证书来验证服务器的身份。证书由可信任的证书颁发机构(CA)签发,包含了服务器的公钥和颁发机构的数字签名。客户端在与服务器建立连接时会验证证书的真实性和合法性,确保通信双方的身份可信。
    SEO优化:搜索引擎将HTTPS作为网站排名的一个重要指标。
    安全的Cookie传输:在HTTPS连接中,所有的Cookie都会通过加密的方式传输,防止被窃取和篡改。这对于保护用户的登录凭据和敏感信息非常重要。
    用户信任度提升:使用HTTPS协议可以提升用户对网站的信任度。
    HTTPS的工作原理主要基于SSL/TLS协议,通过数字证书、加密算法、非对称密钥等技术完成互联网数据传输加密,实现互联网传输安全保护。HTTPS在HTTP与TCP之间加入了一个加密/身份验证层,该层负责数据的加密和解密以及身份认证。
    HTTPS适用于任何需要保护数据安全和隐私的场景,如网络银行和电子商务网站、社交媒体平台、在线支付平台、医疗保健网站等。在这些场景中,HTTPS可以有效防止黑客通过网络监听和窃取用户信息,保护用户的敏感信息不被第三方获取。

  2. 之前我们讲过的四个方案,最后一个相对于完美的方案存在的问题是在这里插入图片描述,即没办法知道收到的这个信息是谁发来的,即对方身份的合法性。举例:日常生活中,警察蜀黍会在大街上查看一些看起来鬼鬼祟祟的人,目的是判断这个人是否是合法公民,身份证这个证件是第三方政府(不是你不是警察)颁发的证件,用来标识合法性。

1.2SSL/TLS

SSL(Secure Sockets Layer,安全套接层)和TLS(Transport Layer Security,传输层安全性协议)是用于在两个通信应用程序之间提供保密性和数据完整性的协议。它们主要工作在应用层和传输层之间,通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。

SSL/TLS协议的工作原理主要依赖于两个重要协议:握手协议和记录协议。握手协议负责协商加密算法、哈希算法、加密密钥,并帮助服务器和客户端相互验证。这个过程在应用程序的数据传输之前进行,并且通常包括四个步骤的握手过程。记录协议则建立在传输协议(如TCP协议)之上,对数据进行封装、压缩、加密等基本功能的支持。

SSL和TLS的关系非常密切。实际上,TLS是SSL的后续版本,它在1999年由IETF(互联网工程任务组)从SSL 3.0协议的基础上进行了标准化,并发布了TLS 1.0。TLS与SSL 3.0相比,在安全性方面进行了改进,并删除了SSL协议中存在的安全漏洞。之后,TLS又发布了多个版本,包括TLS 1.1、TLS 1.2等,每个版本都在安全性方面进行了进一步的提升。

总的来说,SSL/TLS协议是互联网通信中保障数据安全的重要协议,通过加密和身份验证技术,确保了数据在传输过程中的保密性和完整性。

1.3CA机构

  1. CA认证,即电子认证服务,是指为电子签名相关各方提供真实性、可靠性验证的活动。CA机构,即Certificate Authority(证书授权机构)或称为CA中心,是负责发放和管理数字证书的权威机构,作为身份认证的有效凭据。
    CA认证的原理是通过第三方认证机构对数字证书的发放和管理,确保数字证书的真实性和可信度。CA认证的过程主要包括证书申请、申请审核、身份验证和证书发放几个环节。数字证书是包含用户公钥、用户身份信息以及CA机构的数字签名,用来确保证书的真实性和不可篡改性。
    在CA认证中,用户首先向CA提交证书申请,包括提供个人或组织的身份信息和相关证明材料。然后,CA对用户的身份和提供的信息进行验证,这通常包括核实用户的身份证件、企业注册文件等。一旦验证通过,CA会使用自己的私钥对用户的公钥进行签名,生成数字证书。数字证书包含了用户的公钥、证书的有效期、CA的签名等信息。最后,CA将签发的数字证书发送给申请者,申请者可以将证书安装到自己的设备中,以便进行加密通信或进行身份验证。
    CA机构在网络安全中起到了重要的作用,可以有效防止信息被篡改和伪造,保护用户的隐私和数据安全。同时,用户可以通过验证数字证书的真实性,来确认通信对方的身份和可信度,从而建立起安全可靠的通信环境。
    在这里插入图片描述
  2. CA认证
    服务端在使用HTTPS前,需要向CA机构申领一份数字证书,数字证书里含有证书申请者信息、公钥信息等。服务器把证书传输给浏览器,浏览器从证书里获取公钥就行了,证书就如身份证,证明服务端公钥的权威性。
    在这里插入图片描述

证书可以理解成是一个结构化的字符串,里面包含了以下信息:

证书发布机构
证书有效期
公钥
证书所有者
签名

需要注意的是:

申请证书的时候,需要在特定平台生成,会同时生成一对儿密钥对儿,即公钥和私钥。这对密钥对儿就是用来在网络通信中进行明文加密以及数字签名的。其中公钥会随着CSR文件,一起发给CA进行权威认证,私钥服务端自己保留,用来后续进行通信(其实主要就是用来交换对称秘钥)。

CSR在线生成工具

在这里插入图片描述

在这里插入图片描述
输入信息后会给出你的私钥和CSR文件(包含公钥)。形成CSR之后,后续就是向CA进行申请认证,不过一般认证过程很繁琐,网上有各种提供证书申请的服务商,如果有需要,直接找平台帮忙解决就行

1.4理解数字签名

在这里插入图片描述

签名的形成是基于非对称加密算法的,注意,目前暂时和https没有关系,不要和https中的公钥私钥搞混了。

1.4继续铺垫

上篇提到 前四个方案不完美的原因是

在这里插入图片描述

  1. 客户端无法验证第一次“服务端”发来的公钥确实是服务端发来的
  2. 客户端无法验证公钥是正确的
  3. 总结:客户但无法验明对方的身份!
  4. 我们前面的所有铺垫 都是在讲 如何能够验明一个人的身份!

证书的申请

在这里插入图片描述

1.5方案五

服务端申请证书

当服务端申请CA证书的时候,CA机构会对该服务端进⾏审核,并专⻔为该⽹站形成数字签名,过程如下:

  1. CA机构拥有⾮对称加密的私钥A和公钥A’
  2. CA机构对服务端申请的证书明⽂数据进⾏hash,形成数据摘要
  3. 然后对数据摘要⽤CA私钥A’加密,得到数字签名S
    服务端申请的证书明⽂和数字签名S 共同组成了数字证书,这样⼀份数字证书就可以颁发给服务端了

回顾一二三

在这里插入图片描述

回顾方案四

在这里插入图片描述

方案五过程

  1. 设CA自己的公钥为A,私钥为A‘。服务端自己的公钥为S,私钥为S‘。客户端自己的对称密钥X。
  2. 客户端向服务端发起请求 请求CA证书 服务端给客户端自己的CA证书 证明自己的身份
  3. 客户端对证书的明文数据用MD5算法形成数据摘要m,对数字签名用A解密形成数据摘要n,比对mn是否相等,相等说明服务端身份合法。提取证书中明文数据中服务端的公钥S。对X用S加密发送给服务端。服务端接收到后用S’解密获取X,之后双方用X加密交流。

方案五与方案四的区别:

方案四的S是直接发给客户端的,导致客户端无法验明S的合法性。
方案五的S是通过证书发给客户端的,这样能验明吗?接下来我们开始破解这种方案!

寻找方案五的漏洞

在这里插入图片描述

  1. 设定中间人M,公钥M,私钥M‘
  2. M对证书的明文数据修改,客户端对明文数据计算出的摘要和签名计算出的摘要不同,该方法不行!
  3. M对摘要修改,客户端对明文数据计算出的摘要和签名计算出的摘要不同,该方法不行!【实际上M只对摘要修改没实际意义】
  4. M对明文和摘要都修改,使得客户端对明文数据计算出的摘要和签名计算出的摘要相同,这样可以吗?不可以!客户端对签名解密时只会用CA的公钥,M对摘要修改后,用自己的M’加密,但是客户端对签名解密时只会用CA的公钥!此时客户端发现签名无法解密,意识到证书被修改了!即所有的浏览器都内置了CA的公钥,只会用CA的公钥对签名解密,这令一程度上赋予了CA机构权力==》面子是别人给的!
  5. M把整个证书替换,M要想有证书,必须用自己的真实信息【域名/申请者】去申请,风险太高!其次,如果M真申请了,M就是一个合法机构,那么它就可以直接获取浏览器的请求数据了,为什么还要大费周章?此时合法的M如果用浏览器发来的数据做一些非法行为,这就是网络警察的工作了。同时,世界上没有两个完全相同的域名,如果真有人这么做了,浏览器在访问abc.com时显示的确实bca.com,浏览器是能看出来的!实际上存在一些伪网站,用和真的网站w相似的域名去申请证书,做的网站样式也和w相同,然后接收到浏览器的请求后,自己再向w发起请求,然后把w发来的响应再返回浏览器,这也是网络警察的工作!

客⼾端对证书进⾏认证

当客⼾端获取到这个证书之后, 会对证书进⾏校验(防⽌证书是伪造的).
• 判定证书的有效期是否过期
• 判定证书的发布机构是否受信任(操作系统中已内置受信任的证书发布机构).
• 验证证书是否被篡改: 从系统中拿到该证书发布机构的公钥, 对签名解密, 得到⼀个 hash 值(称为数
据摘要), 设为 hash1. 然后计算证书明文数据的 hash 值, 设为 hash2. 对⽐ hash1 和 hash2 是否相等. 如果相等, 则说明证书是没有被篡改过的

2.查看证书

2.1查看浏览器的受信任证书发布机构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2中间⼈有没有可能篡改该证书

  • 中间⼈篡改了证书的明⽂
    • 由于他没有CA机构的私钥,所以⽆法hash之后⽤私钥加密形成签名,那么也就没法办法对篡改后
    的证书形成匹配的签名
    • 如果强⾏篡改,客⼾端收到该证书后会发现明⽂和签名解密后的值不⼀致,则说明证书已被篡改,
    证书不可信,从⽽终⽌向服务器传输信息,防⽌信息泄露给中间⼈

2.3为什么摘要内容在⽹络传输的时候⼀定要加密形成签名

常⻅的摘要算法有: MD5 和 SHA 系列

以 MD5 为例, 我们不需要研究具体的计算签名的过程, 只需要了解 MD5 的特点:
• 定⻓: ⽆论多⻓的字符串, 计算出来的 MD5 值都是固定⻓度 (16字节版本或者32字节版本)
• 分散: 源字符串只要改变⼀点点, 最终得到的 MD5 值都会差别很⼤.
• 不可逆: 通过源字符串⽣成 MD5 很容易, 但是通过 MD5 还原成原串理论上是不可能的.
正因为 MD5 有这样的特性, 我们可以认为如果两个字符串的 MD5 值相同, 则认为这两个字符串相同

理解判定证书篡改的过程: (这个过程就好⽐判定这个⾝份证是不是伪造的⾝份证)

假设我们的证书只是⼀个简单的字符串 hello, 对这个字符串计算hash值(⽐如md5), 结果为
BC4B2A76B9719D91
如果 hello 中有任意的字符被篡改了, ⽐如变成了 hella, 那么计算的 md5 值就会变化很⼤.
BDBD6F9CF51F2FD8
然后我们可以把这个字符串 hello 和 哈希值 BC4B2A76B9719D91 从服务器返回给客⼾端, 此时客⼾端如何验证 hello 是否是被篡改过?
那么就只要计算 hello 的哈希值, 看看是不是 BC4B2A76B9719D91 即可.
但是还有个问题, 如果⿊客把 hello 篡改了, 同时也把哈希值重新计算下, 客⼾端就分辨不出来了呀.所以被传输的哈希值不能传输明⽂, 需要传输密⽂.对证书明⽂(这⾥就是“hello”)hash形成散列摘要,然后CA使⽤⾃⼰的私钥加密形成签名,将
hello和加密的签名合起来形成CA证书,颁发给服务端,当客⼾端请求的时候,就发送给客⼾端,中间⼈截获了,因为没有CA私钥,就⽆法更改或者整体掉包,就能安全的证明,证书的合法性。
最后,客⼾端通过操作系统⾥已经存的了的证书发布机构的公钥进⾏解密, 还原出原始的哈希值, 再进⾏校验

为什么签名不直接加密,⽽是要先hash形成摘要?

• 缩⼩签名密⽂的⻓度,加快数字签名的验证签名的运算速度

如何成为中间⼈

ARP欺骗:在局域⽹中,hacker经过收到ARP Request⼴播包,能够偷听到其它节点的 (IP, MAC)
地址。例, ⿊客收到两个主机A, B的地址,告诉B (受害者) ,⾃⼰是A,使得B在发送给A 的数据包
都被⿊客截取
• ICMP攻击:由于ICMP协议中有重定向的报⽂类型,那么我们就可以伪造⼀个ICMP信息然后发送给局域⽹中的客⼾端,并伪装⾃⼰是⼀个更好的路由通路。从⽽导致⽬标所有的上⽹流量都会发送到我们指定的接⼝上,达到和ARP欺骗同样的效果
• 假wifi && 假⽹站等

3.总结

在这里插入图片描述

HTTPS ⼯作过程中涉及到的密钥有三组.
第⼀组(⾮对称加密): ⽤于校验证书是否被篡改. 服务器持有私钥(私钥在形成CSR⽂件与申请证书时获得), 客⼾端持有公钥(操作系统包含了可信任的 CA 认证机构有哪些, 同时持有对应的公钥). 服务器在客⼾端请求时,返回携带签名的证书. 客⼾端通过这个公钥进⾏证书验证, 保证证书的合法性,进⼀步保证 证书中携带的服务端公钥权威性。
第⼆组(⾮对称加密): ⽤于协商⽣成对称加密的密钥. 客⼾端⽤收到的CA证书中的公钥(是可被信任的)给随机⽣成的对称加密的密钥加密, 传输给服务器, 服务器通过私钥解密获取到对称加密密钥.
第三组(对称加密): 客⼾端和服务器后续传输的数据都通过这个对称密钥加密解密.

其实⼀切的关键都是围绕这个对称加密的密钥. 其他的机制都是辅助这个密钥⼯作的.

第⼀组⾮对称加密的密钥是为了让客⼾端拿到第⼆组⾮对称加密的公钥
第⼆组⾮对称加密的密钥是为了让客⼾端把这个对称密钥传给服务器.

4.https一定是安全的吗

https(Hypertext Transfer Protocol Secure)本身是为了提供安全的通信而设计的,它通过在HTTP协议上增加了一层加密(通常是SSL/TLS),以确保在客户端和服务器之间传输的数据是加密的、完整的,并且数据在传输过程中没有被篡改。然而,仅仅使用https并不意味着通信绝对安全,因为安全性是一个多层次、多方面的概念。

以下是https可能不是绝对安全的一些原因:

  1. 中间人攻击(Man-in-the-Middle, MITM):尽管https使用了加密,但如果攻击者能够成功地执行中间人攻击(例如,通过伪造证书或控制网络中的某个节点),他们仍然可能能够窃取或篡改数据。
    证书问题:如果服务器使用的SSL/TLS证书不是由受信任的证书颁发机构(CA)签发的,或者证书已经过期或被吊销,那么客户端可能会收到警告,并且通信可能不是安全的。
  2. 弱加密算法或密钥:如果服务器使用的加密算法过时或密钥长度不够长,那么它可能容易受到暴力破解或其他类型的攻击。
    不安全的实现:即使https本身很安全,但如果服务器或客户端的实现中存在安全漏洞,那么整个通信也可能变得不安全。
  3. 应用程序级别的漏洞:https只保护在传输层上的数据。如果应用程序本身存在安全漏洞(例如,SQL注入、跨站脚本攻击等),那么即使使用了https,攻击者仍然可能能够利用这些漏洞来窃取或篡改数据。
  4. 用户行为:用户的行为也可能影响安全性。例如,如果用户点击了来自不受信任来源的链接或下载了恶意软件,那么他们的设备或数据可能会受到威胁。
  5. 之前讲的中间人绞尽脑汁都是为了盗取客户端的信息(X),但是如果客户端就是中间人转而攻击服务器呢?即 中间人把浏览器内置的CA公钥保存一份 模拟浏览器向服务端发起请求,然后生成对称密钥M之后用M和服务端进行交流。如果想更安全的话,就考虑服务端对自己的信息做一下二次加密—了解即可
    因此,虽然https是一个很好的起点,但确保通信的安全性需要采取更多的措施,包括使用受信任的证书颁发机构签发的有效证书、使用强加密算法和长密钥、定期更新和修补软件漏洞、以及教育和培训用户采取安全的在线行为等。

5.应用层总结

应用层属于用户层 原因是不同用户有特定的需求:协议的定制 序列反序列 加密与解密 安全级别 ;
如果加密算法被攻破了,可以升级;但是如果应用层在内核,我们就需要升级内核,这是不合适的!即各种各样的需求放在用户层,这些东西无法统一,让那些用户自己搞!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1667402.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nodeJs用ffmpeg直播推流到rtmp服务器上

总结 最近在写直播项目 目前比较重要的点就是推拉流 自己也去了解了一下 ffmpeg FFmpeg 是一个开源项目,它提供了一个跨平台的命令行工具,以及一系列用于处理音频和视频数据的库。FFmpeg 能够执行多种任务,包括解封装、转封装、视频和音频…

中霖教育:税务师考试可以申请免试吗?

符合下列相应条件之一的,可报名参加税务师职业资格考试: 1.取得经济学、法学、管理学学科门类大学本科及以上学历(学位);或者取得其他学科门类大学本科学历,从事经济、法律相关工作满1年。 2.取得经济学、法学、管理学学科门类大学专科学历…

【HCIP学习】BGP选路、过滤及属性

一、BGP路由选路原则(13条) 1、首先丢弃下一跳(NEXT_HOP)不可达的路由; 2、优选Preferred-value值最大的路由;默认为0; Preferred-value:定义:首选项。 属性值&#…

windows系统安装Ubuntu子系统

安装前先在 控制面板 中打开 程序与功能选项 ,点击 启用或关闭Windows功能: 勾选 适用于 Linux的Windows子系统 和 虚拟机平台 、 Hyper-v 。 重启电脑后再 Microsoft Store Windows应用商店 中下载合适的Ubuntu版本。 运行Ubuntu程序,如出现…

在xAnyLabeling中加载自己训练的yolov8s-obb模型进行半自动化标注

任务思路: 先使用xAnyLabeling标注一部分样本,训练出v1版本的yolov8-obb模型,然后加载yolov8-obb模型到xAnyLabeling中对其余样本进行半自动化标注。节省工作量。 任务流程: 1.准备xAnyLabeling标注工具 下载代码,…

[Flutter GetX使用] Getx路由和状态管理-GetController使用过程中的踩坑记录

文章目录 问题 - Get.find() 报错!原因总结A:路由和控制器设计a1:项目中的Get路由aa1.项目路由结构aa2.本项目路由的注意点: B: GetController的冷知识C: 总结来看D: 一些参考资料 问题 - Get.find() 报错! 刚接触Getx, 遇到 Get.find()确找不到, 进而报错的问题, 一时间有点没…

零基础学MySQL

1. 零基础学MySQL 1.1 数据库简介 1.1.1 数据库三层结构 1. 所谓安装Mysql数据库,就是在主机安装一个数据库管理系统(DBMS),这个管理程序可以管理多个数据库。DBMS(database manage system) 2. 一个数据库中可以创建多个表,以保存数据(信息)。 3. 数据…

OpenCompass 大模型评测实战学习笔记

大模型开源开放评测体系 “司南” (OpenCompass2.0),用于为大语言模型、多模态模型等提供一站式评测服务。其主要特点如下: 开源可复现:提供公平、公开、可复现的大模型评测方案 全面的能力维度:五大维度设计,提供 70…

iLogtail 社区开源之夏活动来了!

作者:玄飏 在这个充满活力的夏日,随着阳光一同灿烂的是开源精神的光辉与创新的火花。iLogtail 社区高兴地宣布,我们正式加入开源之夏 2024 的行列,诚邀每一位怀揣梦想与激情的学生开发者,共同开启一场探索技术前沿、贡…

2024年,Web开发新趋势!

随着我们迈入新的一年,现在正是审视2024年网页开发领域开始流行哪些趋势的绝佳时机。回顾2023年的一系列更新,以下是来年一些热门话题的概览。 自主托管有回归的趋势 近些年,自主托管一直是网页开发者和公司托管其应用程序的默认方式。开发…

【本地部署及云化部署】

文章目录 本地部署及云化部署介绍 文章目录 文章目录一、本地部署模式二、云化部署模式总结 一、本地部署模式 需建设专业化机房,系统应用、前端软件全部安装到本地服务器上。需要专业的IT、网络安全、DBA、电气化工程师进行维护。近些年勒索病毒安全事件频发&am…

【MySQL】SQL基本知识点DML(2)

目录 1.DML添加数据 2.DML-修改数据 (1)改​编辑 (2)删​编辑​编辑 3.DQL-基本查询 (1)查询多个字段​编辑​编辑​编辑 (2)设置别名 (3)去重操作 4…

跟TED演讲学英文:Teachers need real feedback by Bill Gates

Teachers need real feedback Link: https://www.ted.com/talks/bill_gates_teachers_need_real_feedback Speaker: Bill Gates Date: May 2013 文章目录 Teachers need real feedbackIntroductionVocabularyTranscriptSummary后记 Introduction Until recently, many teach…

云动态摘要 2024-05-12

给您带来云厂商的最新动态,最新产品资讯和最新优惠更新。 最新优惠与活动 [免费试用]即刻畅享自研SaaS产品 腾讯云 2024-04-25 涵盖办公协同、营销拓客、上云安全保障、数据分析处理等多场景 云服务器ECS试用产品续用 阿里云 2024-04-14 云服务器ECS试用产品续用…

汽车IVI中控开发入门及进阶(十七):IVI的功耗管理

汽车人机界面(HMI)系统旨在使驾驶员能够在不分心的情况下与车辆互动。HMI可以通过触摸板、按钮或语音系统在人和机器之间建立更自然的互动。对连接解决方案、低成本HMI软件和增强的用户体验(UX)的需求不断增加,使得平视显示器(HUD)、后座娱乐系统、基于转向的控制、仪表…

Sass深度解析:性能优化的秘密

首先,这篇文章是基于笔尖AI写作进行文章创作的,喜欢的宝子,也可以去体验下,解放双手,上班直接摸鱼~ 按照惯例,先介绍下这款笔尖AI写作,宝子也可以直接下滑跳过看正文~ 笔尖Ai写作:…

文件相关api

File 代表操作系统的文件对象,它提供了定位文件位置,获取文件中的信息,创建文件,删除文件等,但不能读写内容。 构造器: public File(String pathname) 根据文件路径,创建文件对象。(只会根据…

JeeSite 平台 Spring Boot 3 体验版发布,一个 Java 快速开发平台

引言 是时候为 Spring Boot 3 做准备了,2018年2月 Spring Boot 进入 2.0 时代,距今已经 5 年了。2022 年 11 月 Spring Boot 3.0 正式发布,它将基于 Spring Framework 6.0,并且需要 Java 17 版本,同时它也将是 Jakart…

YOLOv5改进 | 注意力机制 | 通道和空间的双重作用的CBAM注意力机制

在深度学习目标检测领域,YOLOv5成为了备受关注的模型之一。本文给大家带来的是通道和空间的双重作用的CBAM注意力机制。文章在介绍主要的原理后,将手把手教学如何进行模块的代码添加和修改,并将修改后的完整代码放在文章的最后,方…

Kafka效率篇-提升效率三板斧

kafka在效率上做了很多的努力。最初的一个使用场景是处理网页上活跃的数据,它往往有非常大的体量,每个页面都能产生数十条写入。而且我们假设每条消息都会被至少一个消费者消费(通常是多个),因此,我们努力让…