一文让你全面了解WLAN的WPA3安全技术

Wi-Fi安全加密的演进下图所示,当前最新的加密方式是WPA3。WPA3对现有网络提供了全方位的安全防护,增强了公共网络、家庭网络和802.1X企业网的安全性。

WPA3的核心为对等实体同时验证方式(Simultaneous Authentication of Equals, SAE),即通信双方利用本地私钥和对方传输的公钥计算出密钥信息,并根据该密钥信息计算出各自的哈希值,交互给对方验证,完成认证后,最终为每个用户每次连接生成唯一的PMK。接下来将重点介绍WPA3 SAE协议交互过程。

1. SAE协议

SAE的握手协议又称为蜻蜓(Dragonfy)协议,蜻蜓协议的核心算法是迪菲 一 赫尔曼密钥交换(Diffe-Hellman Key Exchange, DHKE)协议,该协议是美国密码学家惠特菲尔德·迪菲和马丁·赫尔曼在1976年合作发明并公开的,它被广泛用于多种计算机通信协议中,比如SSH、VPN、HTTPS等,堪称现代密码基石。在介绍SAE协议之前,下面先简单介绍迪菲一赫尔曼密钥交换协议。

1.1 迪菲 — 赫尔曼密钥交换协议

迪菲 — 赫尔曼密钥交换协议用到了数学上原根和离散对数两个概念,本节先介绍这两个数据概念,在此基础上,进一步介绍迪菲 — 赫尔曼密钥交换生成过程以及安全缺陷。

1.1.1 迪菲 — 赫尔曼密钥交换协议成功过程

下图给出了迪菲一赫尔曼密钥交换生成过程,具体步骤如下:

1.1.2 迪菲 — 赫尔曼密钥交换协议安全缺陷

下图给出了公钥替换攻击过程:

1.2 SAE协议交互流程

SAE协议的密钥交互方式如下图所示,其本质也是一个基于离散对数计算困难的原理,这一点与迪菲 — 赫尔曼密钥交换协议非常类似。相对于迪菲一赫尔曼密钥交换协议,其改进主要体现在以下三个方面:

  • 对于原根进行保护;
  • 密钥生成算法改进;
  • 生成密钥双方验证;

2. WPA3 SAE

为了解决WPA2遭受离线字典攻击的问题,IEEE 802.11协议组在2018年推出了WPA3协议用于升级WPA2,其中SAE(Simultaneous authentication of equals)这个原本用于Mesh协议中的对等认证协议最终被确立用来由password产生PMK。SAE的好处是它所基于的数学原理,有不可逆性。让我们先来看看整个WPA3 SAE加密的流程是什么样的。

WPA3相比于WPA2,生成PMK的方法发生了改变,需要先通过密码生成PWE,然后经过对等加密后才能生成PMK,接着进行四次握手,那么相比于WPA2生成PMK的方法,为什么WPA3会更安全呢,这一切都是因为非对称加密,椭圆曲线加密方程的数学性质决定的,关于椭圆曲线加密方程,大家可以自行上网百度,这里就不花太多时间了。

这里大家只需要知道一点结论,在椭圆曲线上可以找到两个点,满足P = k*G,我们可以通过k乘以G点,得到P点,但是即使我们知道P点和G点的坐标,但是却不能通过P/G得到k。即椭圆加密曲线满足加法和乘法,但是不满足减法和除法,这也就是我们整个SAE加密的数学理论。

就像我们上图所示的那样,PWE就是曲线上的G点,经过双方协商出来的K就是曲线上的另一个点P,其中u1*v1就是的k,由于数学性质,决定u1*v1很难被推算出来。这样攻击者只能通过不断的尝试密码,这样被攻破的时间也大大被加长。但是,通过整个流程我们之前在commit message中的v1和u1都是在每次协商的时候随机生成的,所以如果密码出错,再试下一次密码的时候,v1和u1又发生了变化,所以即便再尝试了n次后,好不容易找到了正确的密码,生成的TK和你想破解的用户的TK也会不一样,这样即便你缓存了所有的数据包,也解不出来。能解出来的数据包也只是之后的数据,这样也就保证了之前的数据,也就是所谓的前向保护。

2.1 Side Channel攻击破解PWE

虽然SAE的整个过程看起来没有什么可以下手的机会,但是百密一疏,把密码映射到椭圆曲线上过程却留下了可乘之机,即找到PWE点的过程是不够安全的。我们先来看下把密码映射到椭圆曲线上的方法是怎么做的:

Looping方式生成PWE

最初的WPA3方法寻找PWE的方法是通过不断进行hash(password || MAC1 || MAC2)来寻找PWE, 但是为了迷惑攻击者,需要固定进行40次,就是说如果PWE的x坐标在40次中提前被找到了,也会先被存起来,然后生成了一个随机值,然后用这个随机值替代password进行剩下的hash运算。

这个过程,就会发现用密码和随机值进行hash运算的时间会不同,这样就留给了黑客通过计算两者的时间差来寻找密码的过程。所以这也就是IETF组织一直没有用SAE作为任何正式的加密协议的原因。但是通过时间差来计算密码,这种事想想还是很难的,至少我到现在也没弄清楚这是个怎样的操作。所以,WPA3协议的制定者尽管在协议制定之初就收到了警告,但他也认为这是种只存在于理论上的攻击方式,依旧按照原方案进行了协议的制定。所以这也就出现了协议被推出了一年后被打脸的情况。于是,H2E应运而生。

2.2 H2E

H2E是Hash to Element的缩写,即采用直接进行hash的方法找到PWE。虽然依然是在椭圆曲线上,但是椭圆曲线需要满足特定的条件,这个特定的方程被叫做SSWU。H2E方法生成PT:

由PT生成PWE:

由于hash运算只进行一次,所以通过时间差进行攻击的路也被堵上了,目前看总算安全了。

3. 总结

综合来看,我们的密码演变从WPA2开始到WPA3 R3,发生了不少变化:

  • WPA2: Password -> PMK -> PTK
  • WPA3 v1: Password -> PWE -> PMK -> PTK
  • WPA3 r3: Password -> PT -> PWE -> PMK -> PTK

虽然目前看,加密方法总算安全了,但是密码学从来都不是一个一成不变的学科,如果有一天新的攻击方法出现,那么我们的加密方法就又不得不升级了。

  • 23
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LVS(Linux Virtual Server)是一种基于 Linux 系统的负载均衡集群技术,它主要用于将网络流量分发到多个服务器上,以提高系统的可靠性、可扩展性和性能。 LVS 集群一般包括四个组件:调度器(LVS 调度器)、前端服务器(负载均衡器)、后端服务器(真实服务器)和存储服务器(用于共享数据)。首先,调度器接收来自客户端的请求,然后根据配置的调度算法(如轮询、加权轮询、最小连接数等)将请求分发到多个前端服务器。前端服务器接收到请求后,通过相应的负载均衡算法将请求转发到后端的真实服务器上进行处理。在整个过程中,存储服务器用于存放共享的数据,以确保所有的真实服务器都能获取到相同的数据,并提供一致的服务。 LVS 集群的优点是能够提高网站的稳定性和可靠性,当某一台服务器出现故障时,调度器会自动将请求分发到其他可用的服务器上,从而保证服务的连续性。同时,LVS 集群还能够通过增加前端服务器和后端服务器的数量来提高系统的性能和吞吐量,以满足不断增长的用户需求。 在实际应用中,LVS 集群需要合理配置,包括选择合适的调度算法、调整每台服务器的权重、选择适当的硬件设备等。此外,还需要及时监控集群的运行状态,及时发现和解决故障,以确保整个系统的正常运行。 总的来说,LVS 负载均衡集群是一种强大而高效的集群技术,能够帮助企业提高系统的可靠性和性能,是现代互联网应用中不可或缺的重要组成部分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值