端点鉴别、安全电子邮件、TLS

文章目录

  • 端点鉴别
    • 鉴别协议ap 1.0——发送者直接发送一个报文表明身份
    • 鉴别协议ap 2.0——ap1.0 的基础上,接收者对报文的来源IP地址进行鉴别
    • 鉴别协议ap 3.0——使用秘密口令,口令为鉴别者和被鉴别者之间共享的秘密
    • 鉴别协议ap 3.1——对秘密口令进行加密,但是容易收到回放攻击(Playback Attack)威胁
    • 鉴别协议ap 4.0
  • 安全电子邮件
    • 电子邮件的安全威胁
    • 安全电子邮件基本原理
      • 加密性
      • 发送方鉴别和报文完整性
      • 机密性、发送方鉴别和报文完整性
    • 安全电子邮件标准
      • PGP 标准(pretty good privacy,高质量保密)
      • PGP 的特点
      • PGP过程
  • 使TCP连接安全:TLS
    • 宏观描述
      • 握手
      • 密钥导出
      • 数据传输
      • TLS记录
    • 更完整的描述
      • TLS握手
        • 连接关闭

端点鉴别

端点鉴别

端点鉴别(end-point authentication)是一个实体经过计算机网络向另一个实体证明其身份的过程,这种鉴别应当在报文和数据交换的基础上,作为某鉴别协议的一部分独立完成。鉴别协议通常会在两个通信实体运行其他协议之前运行,鉴别协议首先建立相互满意的各方的标识;仅当鉴别完成之后,各方继续开始下面的工作。

鉴别协议ap 1.0——发送者直接发送一个报文表明身份

假设Alice要向Bob鉴别她自己的身份。
最简单的就是:Alice直接发送一个报文给Bob,说她就是Alice。
缺陷是Bob无法判断发送报文“I am Alice ”的人就是Alice,因为Trudy(入侵者)也可以发送这样的报文。
在这里插入图片描述
在这里插入图片描述

鉴别协议ap 2.0——ap1.0 的基础上,接收者对报文的来源IP地址进行鉴别

Alice说 “I am Alice ” ,并在她发送的IP数据包中包含了她的IP地址。
缺陷是Trudy可以生成一个分组,包括伪造的Alice的地址。
在这里插入图片描述
在这里插入图片描述

鉴别协议ap 3.0——使用秘密口令,口令为鉴别者和被鉴别者之间共享的秘密

Alice说 “I am Alice ” ,而且传送她的密码来证明。
口令为鉴别者和被鉴别者之间共享的秘密。比如Gmail、Telnet(远程终端协议)、FTP(文件传输协议)和许多服务都是使用口令鉴别。
缺陷是若Trudy窃听了Alice的通信,则可以得到Alice的口令。Trudy记录了Alice的分组,事后向Bob发送。
例子:
在这里插入图片描述

在这里插入图片描述

鉴别协议ap 3.1——对秘密口令进行加密,但是容易收到回放攻击(Playback Attack)威胁

完善鉴别协议ap 3.0 的下一个想法就是加密口令,通过加密口令,能够防止Trudy得知Alice的口令。假设Alice和Bob共享一个对称秘密秘钥K(A-B),则Alice可以加密口令,并向Bob发送其识别报文“ I am Alice ” 和加密的报文。Bob则解密口令,若口令正确,则鉴别了Alice。
虽然防止Trudy得知Alice的口令,缺陷是Bob受制于回放攻击,Trudy只需要窃听Alice的通信,并记录下该口令的加密版本,并向Bob回放该口令的加密版本,以假装她就是Alice。
在这里插入图片描述
在这里插入图片描述

鉴别协议ap 4.0

失败情形是由于Bob无法区分Alice的初始鉴别报文和后来入侵者回放的Alice的初始鉴别报文所导致的。也就是说,Bob 无法分辨 Alice 是否是活跃的(即当前是否还在连接的另一端),或者他接收到的报文是否就是前面鉴别Alice时录制的回放。
可以联想到TCP三次握手协议需要处理相同的问题。此处,我们可以采用同样的思路来进行身份验证。
不重数(Nonce):是在一个协议的生存期中只使用一次的数。也就是说,协议一旦使用了一个 nonce,就不会再使用该数字。ap 4.0 协议使用 nonce 的方式如下:
1、Alice向Bob发送信息 “ I am Alice ”。
2、Bob选择一个不重数 R,并将这个值发送给Alice。
3、Alice使用她与Bob共享的对称秘密密钥K(A-B)来加密这个不重数,然后把加密之后的不重数发回给Bob。由于Alice知道密钥,并用它加密一个值,Bob就知道收到的报文是Alice产生的。这个不重数用于确认Alice是活跃的。
4、Bob解密收到的报文,若解密得到的不重数等于Bob发送给Alice的那个不重数,则可以鉴别Alice的身份。
过程简单概括如下:
被鉴别者向鉴别者发送报文表明身份。
鉴别者选择一个不重数发送给被鉴别者。
被鉴别者用私钥加密不重数发送给鉴别者。

在这里插入图片描述

在这里插入图片描述

安全电子邮件

电子邮件的安全威胁

电子邮件的安全威胁:
(1)电子邮件的内容是公开的和可获取的。
(2)邮件在网络上反复复制,传输路径不确定,易遭到窃取、篡改、假冒甚至破坏。
电子邮件的安全需求:
1、机密性——只有真正的接收方才能阅读邮件。
2、完整性——电子邮件在传输过程中不被修改。
3、认证性——信息的发送者不被假冒。
4、抗抵赖性——发信人无法否认发过电子邮件。

安全电子邮件基本原理

加密性

Alice用对称秘钥Ks加密 明文邮件m,生成Ks(m)。同时用Bob的公钥加密Ks 得到KB+(Ks)。把加密邮件Ks(m) 和 加密秘钥KB+(Ks) 形成一个包发送给Bob。Bob可以根据私钥KB-得到秘钥Ks,再用Ks解密 Ks(m)得到解密报文m。
在这里插入图片描述

发送方鉴别和报文完整性

报文完整性用报文摘要,身份认证用数字签名。
Alice用散列函数对报文生成散列值H,得到报文摘要,Alice用私钥KA-对散列值进行签名,得到数字签名。把初始报文(未加密)和该数字签名级联起来生成一个包,发送给Bob。
Bob通过Alice公钥KA+解密数字签名,得到报文摘要。如果能解密成功,就证明了是Alice所发,否则无法用Alice公钥解密。
Bob用相同散列函数对明文 m 计算,如果摘要相同,证明没被篡改。

在这里插入图片描述

机密性、发送方鉴别和报文完整性

Alice生成一个预备包,包含她的初始报文和该报文数字签名过的散列。Alice把这个预备包看作一个报文,按照加密性那的步骤发送这个报文,即生成一个新包发送给Bob。
Bob收到这个包后,首先应用根据私钥KB-得到秘钥Ks,再用Ks解密 Ks(m)得到解密报文m。通过Alice公钥KA+解密数字签名,得到报文摘要。如果能解密成功,就证明了是Alice所发,否则无法用Alice公钥解密。Bob用相同散列函数对明文 m 计算,如果摘要相同,证明没被篡改。
Alice期望提供保密、发送者认证与报文完整性。
Alice私钥用于签名,身份认证;Bob共用用于加密的对称秘钥,传输对称秘钥。对称秘钥用于加密、解密报文。

在这里插入图片描述

安全电子邮件标准

1、PEM(privacy enhanced mail,增强型邮件保密)标准

  • 在邮件标准格式上增加加密、认证和密钥管理 ;
  • 依赖一个既存的、完全可操作的 PKI,发展被限制;
  • PEM 像一个 OSI 标准,PGP 像一个 Internet 软件包;
    2、PGP(pretty good privacy,高质量保密)标准
  • 符合 PEM 的绝大多数规范,但不要求存在PKI;
  • 创造性结合公钥加密的方便和对称加密的高速度;
  • 数字签名和密钥管理机制设计巧妙;
  • 不仅功能强大,速度快,而且源代码公开;
    3、S/MIME 标准
    S/MIME:secure/multipurpose Internet mail extensions —— 安全/多用途因特网邮件扩展
  • 并非只能用于邮件传输,任何支持 MIME 的传输机制都可使用,如 HTTP;
  • 对电子邮件最有效,因为必须保证邮件本身安全;
  • 认证机制依赖于层次结构的 CA(Tree of Trust);
  • 证书格式采用 X.509 规范,但支持的厂商比较少;

PGP 标准(pretty good privacy,高质量保密)

可在各种平台(Windows、UNIX等)免费运行,还可用于普通文件加密及军事目的,所用算法被证实为非常安全:
1、公钥加密算法 RSA、DSS 和 Diffie-Hellman;
2、对称加密算法 IDEA、3DES 和 CAST-128;
3、散列算法 SHA-1。

PGP 的特点

1、使用散列函数对邮件内容签名,保证信件内容不被篡改;
2、使用公钥和对称加密保证邮件内容机密且不可否认;
3、公钥的权威性由收发双方所信任的第三方签名认证;
4、事先不需要任何保密信道来传递对称的会话密钥。

PGP过程

1、对报文用SHA-1摘要;
2、对摘要RSA加密,用Alice的私钥,形成签名;
3、把前面和 报文m一起压缩;
4、压缩后,进行DES加密,DES用到了对称秘钥;
5、对称秘钥用Bob的公钥加密;
6、把压缩和 对称秘钥加密结果 用Base64 编码,编码后发送。
在这里插入图片描述

使TCP连接安全:TLS

SSL(Secure Socket Layer),即安全套接字层,是对 TCP 的强化。HTTPS 使用 SSL,而 HTTP 不使用。
SSL 通过采用机密性、数据完整性、服务器鉴别和客户鉴别来强化 TCP。
SSL 使 TCP 安全了,所以它能被应用于运行在 TCP 之上的任何应用程序。
如何增强TCP,提供包括保密性、数据完整性和端点认证在内的安全服务,这个增强版的TCP通常被称为传输层安全(TLS)。这个协议的早期版本和类似版本是SSL版本3。自从其诞生以来,SSL及其继任者TLS已经得到了广泛的部署。TLS被所有流行的Web浏览器和Web服务器支持,并且被Gmail和几乎所有的互联网商务网站(包括亚马逊、eBay和淘宝)使用。实际上,如果曾经使用信用卡在互联网上购买过任何东西,浏览器和服务器之间的通信几乎可以肯定地是通过TLS进行的。(可以通过浏览器的URL以https:而不是http开头来判断TLS正在被使用。)

以一个典型的互联网商务场景,理解TLS的需求:Bob正在网上冲浪,来到了Alice公司的网站,该网站正在销售香水。Alice公司的网站显示了一个表格,Bob应该在其中输入他想要的香水类型和数量、他的地址和他的支付卡号码。Bob输入这些信息,点击提交,并期望通过普通邮寄收到他购买的香水;他还期望在他的下一个支付卡对账单中收到他订单的费用。这一切都听起来不错,但如果不采取安全措施,Bob可能会遇到一些惊喜。

  • 如果不使用保密性(加密),入侵者可以拦截Bob的订单并获得他的支付卡信息。入侵者随后可以以Bob的名义进行购买。
  • 如果不使用数据完整性,入侵者可以修改Bob的订单,让他购买比他想要的多十倍的香水。
  • 最后,如果不使用服务器认证,服务器可以显示Alice公司的著名标志,而实际上该站点由Trudy维护,她伪装成Alice公司。在收到Bob的订单后,Trudy可以拿走Bob的钱并逃跑。或者Trudy可以通过收集Bob的姓名、地址和信用卡号码来实施身份盗窃。

TLS通过增强TCP的保密性、数据完整性、服务器认证和客户端认证来解决这些问题。TLS通常用于保护在HTTP上进行的交易的安全。然而,由于TLS保护TCP,它可以被任何运行在TCP上的应用程序使用。TLS提供了一个简单的应用程序编程接口(API)与套接字,这与TCP的API类似且类似。当应用程序想要使用TLS时,应用程序包括SSL类/库。如图所示,尽管从技术上讲TLS位于应用层,但从开发人员的角度来看,它是一个传输协议,提供增强了安全服务的TCP服务。

在这里插入图片描述

宏观描述

首先描述一个简化版的TLS,这将能够从宏观上理解TLS的原因和方法。将这个简化版的TLS称为“类-TLS”。在描述了类-TLS之后,将在下一个子节中描述真正的TLS,填补细节。类-TLS(和TLS)有三个阶段:握手、密钥导出和数据传输。现在描述这三个阶段,用于客户端(Bob)和服务器(Alice)之间的通信会话,Alice拥有一个私钥/公钥对和将她的身份与其公钥绑定的证书。

握手

在握手阶段,Bob需要(a)与Alice建立TCP连接,(b)验证Alice确实是Alice,(c)向Alice发送一个主密钥。这个密钥将被Alice和Bob用来生成他们需要的所有对称密钥进行TLS会话。这三个步骤如图所示。注意,一旦TCP连接建立,Bob向Alice发送一个hello消息。Alice随后用她的证书响应,其中包含她的公钥。因为证书已经由CA认证,Bob知道证书中的公钥属于Alice。Bob然后生成一个主密钥(MS)(这只用于这个TLS会话),用Alice的公钥加密MS以创建加密的主密钥(EMS),并将EMS发送给Alice。Alice用她的私钥解密EMS以获得MS。在这个阶段之后,Bob和Alice(没有其他人)都知道这个TLS会话的主密钥。
在这里插入图片描述

密钥导出

原则上,MS此时已由Bob和Alice共享,可以被用作所有后续加密和数据完整性检查的对称会话密钥。然而,通常认为更安全的做法是,Alice和Bob各自使用不同的加密密钥,并且对于加密和完整性检查使用不同的密钥。因此,Alice和Bob都使用MS生成四个密钥:

  • EB ,从Bob发送到Alice的数据的会话加密密钥
  • MB ,从Bob发送到Alice的数据的会话MAC密钥,其中MAC是标准化的哈希消息认证码(MAC)
  • EA ,从Alice发送到Bob的数据的会话加密密钥
  • MA,从Alice发送到Bob的数据的会话MAC密钥

Alice和Bob各自从MS生成这四个密钥。这可以通过简单地将MS分成四个密钥来完成。在密钥导出阶段结束时,Alice和Bob都有四个密钥。两个加密密钥将用于加密数据;两个MAC密钥将用于验证数据的完整性。

数据传输

现在Alice和Bob共享相同的四个会话密钥(EB、MB、EA和MA),他们可以开始通过TCP连接安全地相互发送数据。由于TCP是字节流协议,一个自然的方法将是TLS在传输中加密应用数据,然后将加密的数据在传输中传递给TCP。但我们并不想等到整个TCP会话结束时才验证Bob发送的所有数据的完整性!
为了解决这个问题,TLS将数据流分成记录,为每个记录附加MAC以进行完整性检查,然后加密该“ 记录+HMAC”。为了创建MAC,Bob将记录数据和密钥MB输入到哈希函数中。为了加密“ 记录+HMAC”这个包,Bob使用他的会话加密密钥EB。然后这个加密包被传递给TCP以通过互联网传输。尽管这种方法非常有效,但在提供整个消息流的数据完整性方面仍然不是无懈可击的。特别是,假设Trudy是一个中间女人,并且有能力在Alice和Bob之间发送的TCP段流中插入、删除和替换段。例如,Trudy可以捕获Bob发送的两个段,反转段的顺序,调整TCP序列号(这些序列号没有加密),然后将两个反转顺序的段发送给Alice。假设每个TCP段恰好封装了一个记录,让我们现在看看Alice将如何处理这些段。

  1. 在Alice中运行的TCP会认为一切正常,并将两个记录传递给TLS子层。
  2. Alice中的TLS将解密这两个记录。
  3. Alice中的TLS将使用每个记录中的HMAC来验证这两个记录的数据完整性。
  4. 然后TLS将两个记录的解密字节流传递给应用层;但由于记录的反转,Alice接收到的完整字节流将不在正确的顺序中!

这个问题的解决方案,你可能已经猜到了,就是使用序列号。TLS如下所示。Bob维护一个序列号计数器,它从零开始,并且对于他发送的每个TLS记录都会增加。Bob实际上并不在记录本身中包含序列号,但是当他计算HMAC时,他将序列号包含在HMAC计算中。因此,HMAC现在是数据加上HMAC密钥MB加上当前序列号的哈希。Alice跟踪Bob的序列号,允许她通过在HMAC计算中包含适当的序列号来验证记录的数据完整性。这种使用TLS序列号的方法防止了Trudy进行例如重新排序或重放报文段等中间人攻击。

TLS记录

TLS记录(以及almost-TLS记录)如图所示。记录由类型字段、版本字段、长度字段、数据字段和HMAC字段组成。注意,前三个字段没有被加密。
类型字段指示记录是握手消息还是包含应用程序数据的消息。它也用于关闭TLS连接。接收端的TLS使用长度字段从传入的TCP字节流中提取TLS记录。版本字段是自解释的。
在这里插入图片描述

更完整的描述

TLS握手

SSL不强制Alice和Bob使用特定的对称密钥算法或特定的公钥算法。相反,TLS允许Alice和Bob在握手阶段,在TLS会话开始时,就密码算法达成一致。此外,在握手阶段,Alice和Bob相互发送不重数,这些nonce用于创建会话密钥(EB、MB、EA和MA)。实际TLS握手的步骤如下:

  1. 客户端发送它支持的密码算法的列表,连同一个客户的不重数。
  2. 从列表中,服务器选择一个对称算法(例如AES)和一个公钥算法(例如具有特定密钥长度的RSA),以及HMAC算法(MD5或SHA-1)以及HMAC密钥。它将它的选择,以及证书和服务器不重数返回给客户。
  3. 客户验证证书,提取服务器的公钥,生成一个前主密钥(PMS),用服务器的公钥加密PMS,并将加密的PMS发送给服务器。
  4. 使用相同的密钥派生函数(由TLS标准指定),客户和服务器独立地从PMS和不重数计算主密钥(MS)。然后MS被分割以生成两个加密和两个HMAC密钥。此外,当选择的对称密码使用CBC(如3DES或AES)时,从MS中为连接的两侧各获得两个初始化向量(IV)。此后,客户端和服务器之间发送的所有消息都被加密和认证(使用HMAC)。
  5. 客户端发送所有握手消息的HMAC。
  6. 服务器发送所有握手消息的HMAC。

最后两步保护握手免受篡改。为了看到这一点,观察在步骤1中,客户端通常提供一个算法列表——有些强,有些弱。这个算法列表以明文发送,因为加密算法和密钥尚未达成一致。作为中间人的Trudy可以删除列表中的更强算法,迫使客户端选择一个弱算法。为了防止这种篡改攻击,在步骤5中,客户端发送其发送和接收的所有握手消息的HMAC。服务器可以将这个HMAC与其接收和发送的握手消息的HMAC进行比较。如果存在不一致,服务器可以终止连接。类似地,服务器发送其看到的握手消息的HMAC,允许客户端检查不一致性。
你可能会想知道为什么在步骤1和2中有nonce。序列号难道不足以防止段重放攻击吗?答案是是的,但它们本身并不能防止“连接重放攻击”。考虑以下连接重放攻击。假设Trudy嗅探了Alice和Bob之间的所有消息。第二天,Trudy伪装成Bob,向Alice发送了与前一天Bob向Alice发送的完全相同的消息序列。如果Alice不使用nonce,她将对前一天发送的完全相同的消息序列做出响应。Alice不会怀疑任何有趣的业务,因为她接收到的每条消息都将通过完整性检查。如果Alice是一个电子商务服务器,她将认为Bob正在下第二个订单(完全相同的东西)。另一方面,通过在协议中包含一个nonce,Alice将为每个TCP会话发送不同的nonce,导致两天的加密密钥不同。因此,当Alice从Trudy接收到播放回放的TLS记录时,记录将无法通过完整性检查,伪造的电子商务交易将不会成功。总之,在TLS中,nonce用于防御“连接重放攻击”,序列号用于防御在正在进行的会话期间重放单个数据包。

连接关闭

在某个时候,Bob或Alice将想要结束TLS会话。一种方法是让Bob通过简单地终止底层TCP连接来结束TLS会话——即,让Bob向Alice发送一个TCP FIN段。但这样的简单设计为截断攻击设置了舞台,Trudy再次进入正在进行的TLS会话中间,并提前用TCP FIN结束会话。如果Trudy这样做,Alice会认为她收到了Bob的所有数据,而实际上她只收到了部分数据。解决这个问题的方法是在类型字段中指示记录是否用于终止TLS会话。(尽管TLS类型是以明文发送的,但它在接收器处使用记录的HMAC进行认证。)通过包含这样一个字段,如果Alice在没有收到关闭TLS记录的情况下收到TCP FIN,她就会知道有些有趣的事情发生了。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑技巧:Everything 1.5 版本重大更新​支持拼音搜索+全文搜索

目录 一、软件介绍 二、主要更新亮点 更快的搜索速度和拼音搜索 全文搜索功能 智能推荐功能 增强的过滤选项 改进的用户界面 更好的多语言支持 增强的安全性和隐私保护 三、总结 Everything 作为一款备受推崇的文件搜索工具,以其卓越的性能和简洁的用户界…

element左侧导航栏

由element组件搭建的左侧导航栏 预览: html代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>首页</title><style> /*<!-- 调整页面背景颜色-->*/body{background-colo…

Datax可视化工具Datax-web安装部署

文章目录 一、Datax-web官网二、Datax-web介绍 1、Datax-web概述2、架构图3、系统环境要求4、特性支持 三、安装部署 1、环境准备2、Datax-web安装包准备 一、Datax-web官网 github&#xff1a;Datax-web gitee: Datax-web 二、Datax-web介绍 1、Datax-web概述 DataX Web…

node-js Express中间件

中间件介绍 什么是中间件 中间件其本质就是一个回调函数&#xff0c;可以像路由一样访问请求对象&#xff08;request&#xff09;和响应对象&#xff08;response&#xff09;。中间件的作用是什么 通过函数封装公共操作&#xff0c;简化代码中间件类型 - 全局中间件 - 路由中…

【数学】矩阵的逆与伪逆 EEGLAB

文章目录 前言matlab代码作用EEGLAB 中的代码总结参考文献 前言 在 EEGLAB 的使用中&#xff0c;运行程序时出现了矩阵接近奇异值&#xff0c;或者缩放错误。结果可能不准确。RCOND 1.873732e-20 的 bug&#xff0c;调查 EEGLAB 后发现是 raw 数据的问题。 matlab代码 A_1 …

TCP 的三次握手与四次挥手

TCP 的三次握手与四次挥手 TCP 协议&#xff0c;使用 TCP 的三次握手建立连接&#xff0c;使用四次挥手断开连接。 我们先看看基本的计算机网络中的TCP连接建立和断开的过程。 1.HTTP 三次握手 HTTP 的三次握手过程如下&#xff1a; 第一次握手&#xff08;SYN&#xff09;…

解锁前端开发速度的秘密武器【Vite】

在前端开发的江湖中&#xff0c;有人偏爱 Webpack 的强大与稳定&#xff0c;有人钟情于 Rollup 的轻量与高效。而 Vite&#xff0c;这个后来居上的工具&#xff0c;却以“极致的快”和“极简的易”赢得了开发者的芳心。众所周知万事都有缘由&#xff0c;接下来我们就来深度剖析…

【动态库.so | 头文件.hpp】基于CMake与CMakeList编写C++自定义库

前言 最近比较忙&#xff0c;其他系列教程得等到年后一起更&#xff01;请大家多多包涵&#xff01;&#xff01;相信各位在配置C环境和各类库的时候一定经常看到如下小连招 git clone https://github.com/opencv/opencv.git cd opencv mkdir build && cd build cma…

前端编辑器JSON HTML等,vue2-ace-editor,vue3-ace-editor

与框架无关 vue2-ace-editor有问题&#xff0c;ace拿不到&#xff08;brace&#xff09; 一些组件都是基于ace-builds或者brace包装的 不如直接用下面的&#xff0c;不如直接使用下面的 <template><div ref"editor" class"json-editor"><…

SpringMVC框架——入门

目录 一、三层框架和MVC 1. 三层架构 2. MVC模型 二、SpringMVC入门案例 1. SpringMVC的概述 2. SpringMVC的入门程序 3. 入门案例的执行过程分析 4. RequestMapping注解 一、三层框架和MVC 1. 三层架构 开发服务器端程序&#xff0c;一般都基于两种形式&#xff0c;一…

港口智慧应急管理平台:应急先锋,港航卫士

在风云变幻的港航世界&#xff0c;安全是永恒的基石。港口智慧应急管理平台宛如一位无畏的先锋&#xff0c;以智能化、数字化、信息化为利刃&#xff0c;借助 AI 与大数据的神奇力量&#xff0c;为港口保驾护航。 传统应急管理往往在事故发生后被动响应&#xff0c;而此平台却…

Prime2_解法二:openssl解密凭据

Prime2_解法二&#xff1a;openssl解密凭据 本博客提供的所有信息仅供学习和研究目的&#xff0c;旨在提高读者的网络安全意识和技术能力。请在合法合规的前提下使用本文中提供的任何技术、方法或工具。如果您选择使用本博客中的任何信息进行非法活动&#xff0c;您将独自承担全…

恢复删除的文件:6个免费Windows电脑数据恢复软件

数据恢复软件可帮助您从众多存储设备中恢复损坏或删除的数据。您可以使用这些文件恢复软件来检索文件、文档、视频、图片等。这些应用程序支持多种标准文件格式&#xff0c;如 PNG、RTF、PDF、HTML、JPG、MP3 等。 经过超过 75 小时的研究&#xff0c;我分析了 25 最佳免费数据…

爬虫自动化之drissionpage+SwitchyOmega实现随时切换代理ip

本文介绍了如何使用DrizzlePage进行爬虫自动化,并重点讲解了首次启动时设置代理IP以及通过SwitchyOmega插件实现随时切换代理IP的方法。 安装一次,后面调用就不会再去安装了 下载地址:https://github.com/FelisCatus/SwitchyOmega/releases 这两个文件随便那个都可以,下载…

今天你学C++了吗?——C++中的类与对象(日期类的实现)——实践与知识的碰撞❤

♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨ 个…

kafka进阶_4.kafka扩展

文章目录 一、Controller选举二、Kafka集成2.1、大数据应用场景2.1.1、Flume集成2.1.2、Spark集成2.1.3、Flink集成 2.2、Java应用场景(SpringBoot集成) 三、Kafka常见问题3.1、Kafka都有哪些组件&#xff1f;3.2、分区副本AR, ISR, OSR的含义&#xff1f;3.3、Producer 消息重…

Flink Python作业快速入门

Flink Python快速入门_实时计算 Flink版(Flink)-阿里云帮助中心 import argparse # 用于处理命令行参数和选项&#xff0c;使程序能够接收用户通过命令行传递的参数 import logging import sysfrom pyflink.common import WatermarkStrategy, Encoder, Types from pyflink.data…

前端(五)css属性

css属性 文章目录 css属性一、字体属性二、文本属性三、背景属性四、盒子模型 一、字体属性 font-weight&#xff1a;文字粗细&#xff0c;在100到900之间&#xff0c;normal(400),bord(700),inherit(继承父类) font-style&#xff1a;文字风格&#xff0c;normal表示正常(默认…

nginx反向代理(负载均衡)和tomcat介绍

nginx的代理 负载均衡 负载均衡的算法 负载均衡的架构 基于ip的七层代理 upstream模块要写在http模块中 七层代理的调用要写在location模块中 轮询 加权轮询 最小连接数 ip_Hash URL_HASH 基于域名的七层代理 配置主机 给其余客户机配置域名 给所有机器做域名映射 四层代理…

ansible自动化运维(二)playbook模式详解

相关文章ansible自动化运维&#xff08;一&#xff09;简介及清单,模块-CSDN博客ansible自动化运维&#xff08;三&#xff09;jinja2模板&&roles角色管理-CSDN博客ansible自动化运维&#xff08;四&#xff09;运维实战-CSDN博客 一.Ansible中的playbook模式 Playbo…