转载请注明出处:http://blog.csdn.net/Righthek 谢谢!

还是用手机来举例,扫描完成后,我们会选择想要加入的WIFI热点。此时,大部分都会弹出一个输入密码的窗口,当然也有不用输入密码的。这个过程叫做:认证(Authentication)。

有时觉得搞技术的真累,当我们辛辛苦苦地在网上找资料学习新技术时,当我们渐渐掌握这门技术之后,才发现该技术对自己来说是新的,但是对现时来说,已经过时并且被遗弃了!所以说……Shit!

由于网上大量讲解WIFI技术的资料在认证方面都是侧重讲WEP加密方式。但是,时至今日,WEP已经属于石器时代的技术了,而且破解方法满天飞。虽然现在无线路由器都保留WEP加密方式,但是当你进行设置时,它会用红字提醒你:

注意:您选择的WEP加密经常在老的无线网卡上使用,新的802.11n不支持此加密方式。所以,如果您选择了此加密方式,路由器可能工作在较低的传输速率上。建议使用WPA2-PSK等级的AES加密。

看到没?现在的802.11n协议已经不支持WEP加密方式了,更何况最新的802.11ac。所以本文侧重讲解现当代正在使用的WPA/WPA2加密方式,特别是倾向于家庭网络的WPA-PSK/WPA2-PSK。

无线网络所使用的媒介是经过特殊编码与调制过的无线电波链路。它是众所周知的开放标准,只要对无线传输有所研究和了解的人,都可以在无线覆盖范围内发送和接收信号。因此对数据的拦劫和非法灌注是多么的简单!

由于无线网络的最大缺陷就是安全性,进行身份认证是必须的,同时认证的连接工作也必须予以加密,以防未经授权的使用者访问。

早期的IEEE802.11定义了两种认证方式:

(1)开放系统认证(OpenSystem authentication);

(2)共享密钥认证(SharedKey authentication)。

开放系统认证是IEEE802.11默认的认证方式,实质上并没有做认证。连接无线网络时,基站并没有验证工作站的真实身份。认证过程由以下两个步骤组成:第一,工作站发送身份声明和认证请求;第二,基站应答认证结果,如果返回的结果是“successful”,表示两者已相互认证成功。

共享密钥认证依赖于WEP(Wired Equivalent Privacy,有线等效加密)机制,而上文已经提到WEP渐渐被淘汰,我们就不讲解了,接下来侧重讲解与我们家庭无线网络息息相关的WPA-PSK/WPA2-PSK认证机制。当我们进入无线路由器设置界面,打开无线安全设置,就会看到以下信息,如图1。WPA(Wi-Fi Protected Access)是WIFI联盟制定的安全性标准,WPA2是第二个版本。PSK(PreShared Key)叫做预共享密钥。WPA-PSK/WPA2-PSK主要是针对个人或家庭网络等,对安全性要求不是很高的用户。而WPA /WPA2是针对企业的,对安全性要求很高的用户,在WPA/WPA2选项中,大家可以看到它比WPA-PSK/WPA2-PSK多了一个Radius服务器,这个就是认证服务器。而对我们家庭网络来说,适合选择WPA-PSK/WPA2-PSK选项,因为我们不需要认证服务器。现有我们来详细分析WPA-PSK/WPA2-PSK认证机制。

图1 WPA-PSK/WPA2-PSK、WPA/WPA2

1、WPA-PSK

WPA-PSK(Wi-Fi ProtectedAccess,Wi-Fi保护访问)是WiFi联盟推出的标准,它是为兼容原有的WEP硬件产品,所以它采用的模式是:

WPA-PSK = PSK + TKIP + MIC

PSK:PreShared Key,预共享密钥。

TKIP:Temporal KeyIntegrity Protocol,临时密钥完整性协议。

MIC:Message IntegrityCode,消息完整性校验码。

TKIP的开发目的是为了提高原有的基于WEP硬件的安全性,因此它和WEP一样都是采RC4加密算法,同时保留了WEP的基本结构和操作方式。TKIP是一种过渡的加密协议,现已被证明安全性不高。因此,我们就不去详细的讲解了。

2、WPA2-PSK

WPA2是在802.11i颁布之后,WIFI联盟随即推出的最新无线安全标准,它遵循802.11i标准,以下是它采用的模式:

WPA2-PSK= PSK + AES + CCMP

PSK:PreShared Key,预共享密钥,它是一种802.11身份验证方式,以预先设定好的静态密钥进行身份验证,此密钥必须手动进行传递,即是我们的手机连接WIFI热点时需要输入的密码。

AES:Advanced EncryptionStandard,高级加密标准。AES是美国NIST制定的替代DES的分组加密算法。AES具有优秀的密钥扩展方案,灵活的密钥生成算法。算法对内存要求极低,即使在限制较大的环境中也能获得很好的性能。分组和密钥被设计成可以在三种长度中自由选择的形式,AES具有128、192、256位的密钥。802.11规定CCMP中的AES使用的是128位密钥,它的加密块大小也是128位。

CCMP:Counter modewith Cipher-block chaining Message authentication code Protocol,计数器模式及密码块链消息认证码协议。它是基于高级加密标准(AES)的CCM(CTR with CBC-MAC)模式。CCM是一种通用的模式,它可以使用在任何成块的加密算法中。CCM模式使用CTR(Counter Mode)提供数据保密,并采用密码块链信息认证码(Cipher-Block Chaining with Message Authentication Code,CBC-MAC)来提供数据认证和完整性服务。

CCMP加密时由以下四个输入项组成:

(1)明文(Plaintext MPDU);

(2)临时密钥(TK);

(3)封包编号(PN);

(4)密钥标识符(KeyId);

CCMP的加密和解密过程如图2、图3。

图2  CCMP加密过程

图3  CCMP解密过程

下面让我们来看看CCMP帧封装格式,如图4。MAC Header是明文(Plaintext MPDU)原封不动传递过来的,该MAC Header符合802.11MAC标准帧格式。CCMP扩展了原始的MPDU长度到16个octet(注:在网络术语中,用octet表示8 bits),包括8 octets的CCMP头部和8 octets的MIC。CCMP头部由PN、ExtIV、KeyID组成。PN是48位的代表6个octets的数组,在PN中,PN5是最重要的的,PN0是重要性最低的。Data(PDU)是我们需要传输的数据。MIC(Message Integrity Code)是消息完整性检验码,它是针对一组欲保护数据计算出来的散列值,用以防止数据遭人篡改。FCS(Frame Check Sequence)是帧检验序列,处于802.11网络帧的尾部,用来侦测数据是否损坏,若接收端所计算出的FCS与帧中记载的FCS值不同,则可推断出该帧已经损坏并将其丢弃。

图4  CCMP帧封装格式

转载请注明出处:http://blog.csdn.net/Righthek 谢谢!

wifi网络接入原理(中)——认证Authentication相关推荐

  1. wifi网络接入原理(下)——关联Association

    认证完成后,下一步就是关联(Association). 工作站与基站进行关联,以便获得网络的完全访问权.关联属于一种记录(record keeping)过程,它让分布式系统(Distribution ...

  2. wifi网络接入原理(上)——扫描Scanning

    查看全文 http://www.taodudu.cc/news/show-5969586.html 相关文章: <蓝桥杯备赛>CT117E嵌入式竞赛板LCD驱动库的使用(带完整源码) 庆国 ...

  3. .net中的认证(authentication)与授权(authorization)

    注:这篇文章主要给新手看的,老手们可能会觉得没啥营养,就请绕过吧. "认证"与"授权"是几乎所有系统中都会涉及的概念,通俗点讲: 认证(authenticati ...

  4. 浅谈Wi-Fi渗透--原理篇

    浅谈Wi-Fi渗透–原理篇 在这个手机比人多的移动时代,无线网络Wi-Fi遍布每个角落,殊不知隐藏其中的风云涌动 广义上无线网络应用类型如下,今天的文章就聚焦于 WLAN的一种无线局域网技术--Wi- ...

  5. MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN

    在Membership系列的最后一篇引入了ASP.NET Identity,看到大家对它还是挺感兴趣的,于是来一篇详解登录原理的文章.本文会涉及到Claims-based(基于声明)的认证,我们会详细 ...

  6. 园区/厂区怎么实现wifi上网短信认证

    园区/厂区WiFi短信认证说明 对外来者来说,为了网络安全,接入企业的无线网自然要进行身份认证,以便进行监控和管理.对无线网络进行管控,为WiFi热点加上密码,确实是可以防止蹭网事件的发生.有效避免带 ...

  7. MVC5 - ASP.NET Identity登录原理-Claims-based认证和OWIN

    目录 ASP.NET Identity登录原理 什么是Claims-based(基于声明)的认证 ASP.NET 下的 Claims-based认证实现 到底什么是OWIN 问题引入: 为什么要解耦服 ...

  8. MVC5_Identity登录原理 - Claims-based认证和OWIN

    MVC5_Identity登录原理 - Claims-based认证和OWIN 废话少说,我们直接切入正题.在上一篇从Membership到ASP.NET Identity,我们已经给了一个简单的实例 ...

  9. Openstack组件实现原理 — Keystone认证功能

    前言 Keystone实现始终围绕着Keystone所实现的功能来展开,所以在理解其实现之前,建议大家尝试通过安装Keystone这一个过程来感受Keystone在Openstack架构中所充当的角色 ...

最新文章

  1. 如何查看某个ABAP user针对某个authorization object的assignment status
  2. 数据库技术:数据存储和查询知识笔记
  3. 在以下说法错误的是_外行人对翡翠有哪些错误认知?行家给你最精准的答案
  4. Es6学习笔记(7)----数组的扩展
  5. openpyxl 绘制饼形图_好享学丨快速上手Pythonmatplotlib 箱线图绘制,学术人必备
  6. Lucene 全文搜索解析
  7. 30岁菜鸟涛学习VB.net 第八天
  8. 2021年甘肃省中职生高考成绩查询,甘肃2021年中专生怎么参加普通高考
  9. 深度学习实战 Tricks —— 梯度消失与梯度爆炸(gradient exploding)
  10. Social Media附加价值开发的四大模式
  11. 关于LSF的高级用法
  12. async的waterfall
  13. 备考系统集成项目管理工程师经验
  14. Mysql:Got error 28 from storage engine
  15. 粗粒度和细粒度的区别
  16. 大众 mib android auto,【图】加入互联基因 体验大众第二代MIB多媒体_汽车之家
  17. mcinabox运行库下载_mcinabox启动器下载直装版-mcinabox运行库下载v1.1.3 安卓版-2265手游网...
  18. 【唐老狮】C#——转义字符
  19. ChatGPT还在2G冲浪?新模型「youChat」:我已能够解说2022世界杯
  20. python英文词云代码_Python 词云 【中/英】小白简单入门教程

热门文章

  1. Altium Designer布局布线时元器件移动
  2. 质因子分解(Java)
  3. 股票和期权的区别是什么?
  4. http劫持软件、怎么应对这样的 HTTP 劫持
  5. 实际场景架构图实例及详细说明
  6. python yaml PyYaml入门
  7. maven关闭检验_Maven常用命令:
  8. java tcp门禁_门禁控制器的TCP/IP协议功能
  9. GPS-NMEA解析代码
  10. 【LOJ#10115,tyvj1473】校门外的树(第3次升级)