- 博客(402)
- 资源 (65)
- 收藏
- 关注
原创 802.11协议笔记(二)——PHY物理层的帧格式(802.11b)
这篇文章主要介绍下图中layer1物理层的内容前面有介绍,MPDU进入PLCP层以后,它的名字就换成了PSDU,PSDU加上前导码和PLCP头部以后,就形成了PPDU。在传输的过程中,发送端通过向接收端发送PLCP前导码来提醒对方。前导码是一序列0/1比特串,用于同步即将发生的传输。在802.11-2007 协议中有定义三种类型的前导码格式:the Long PPDU format,
2016-11-20 21:24:15 50927 1
原创 802.11协议笔记(一)——基本概念
首先简单回顾一下IOS模型的7层结构:Layer 7: ApplicationLayer 6: PresentationLayer 5: SessionLayer 4: TransportLayer 3: NetworkLayer 2: Data-Link LLC sublayer MAC sublayerLayer
2016-11-20 11:17:35 20590 7
转载 Vim 复制粘贴探秘
Vim作为最好用的文本编辑器之一,使用vim来编文档,写代码实在是很惬意的事情。每当学会了vim的一个新功能,就会很大地提高工作效率。有人使用vim几十年,还没有完全掌握vim的功能,这也说明了vim的强大。而这样何尝不是一件好事呢,只要有的学习,就有的提高。最近使用Vim来写博客,发现在Vim中粘贴Python代码后,缩进就全乱了。仔细研究了以下,原来是自动缩进的缘故,于是做如下设置:
2016-11-04 17:40:19 477
原创 在windows下使用Cygwin模拟unix环境,并安装apt-cyg,repo等工具
前面有一篇文章整理在windows下使用vim+git+ctags等工具查看代码,感觉挺方便的,但是在模拟unix开发环境的时候局限很大,特别是在涉及到编译以及调试的时候很难开展,所以找到了Cygwin这个比较综合的模拟软件, cygwin是windows平台上运行的unix模拟环境,它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作
2016-10-16 21:19:04 24510
原创 无线局域网安全(四)————身份认证之4路握手
前面我们了解了三种加密方式,WEP、TKIP和CCMP,他们分别使用不同的算法给需要传送的MSDU进行加密以后,封装在MPDU中进行传送,然后在接收端对数据进行解密,以达到安全完整传送数据的目的。不管使用哪种加密方式,这都是在STA完成了身份认证以后进行的动作,也就是说在确认了STA获得足够的权限以及拥有正确的密钥以后才能进行安全的、完整的、受保护的的通信。那么对于一个新接入的STA,我们怎么知道
2016-10-13 18:58:42 18656 6
原创 无线局域网安全(三)————CCMP加密
Counter Mode with Cipher-Block Chaining Message Authentication Code Protocol(CCMP)CCMP加密在802.11i修正案中定义,用于取代TKIP和WEP加密。CCMP使用AES快加密算法取代WEP和TKIP的RC4流算法,它也是WAP2指定的加密方式,因为AES加密算法是和处理器相联系的,所以旧的设备中可以支持WEP
2016-10-06 12:14:08 21536
原创 无线局域网安全(二)————TKIP加密
Temporal Key Integrity Protocol (TKIP) 临时秘钥完整性协议TKIP是用来解决WEP容易被破解而提出的临时性加密协议,它并不是802.11推荐的强制加密协议, 简单来说,TKIP主要是用来加强WEP加密,这个升级主要体现在算法上,这一点很重要,为什么这么说呢?因为使用TKIP加密,并不需要进行硬件的升级,也就是说只要你的硬件支持WEP加密,那么同时也能够支持
2016-10-02 15:06:41 21837 6
原创 无线局域网安全(一)———WEP加密
这篇文章是关于无线局域网加密的第一篇文章,所以先对无线局域网的加密做一个简单的概述。其实我们平常在使用wifi的时候,往往会用到的加密方式主要有WEP(pre-RSNA), WPA(TKIP), WPA2(CCMP-AES), 如果有个别对安全要求比较高的也会使用企业级加密(802.1x). 在最新的802.11-2010标准中,有明确的支持新的无线设备应该抛弃WEP和WPA加密方式,而且必须
2016-09-29 12:21:47 18313 1
原创 怎么使用macbook抓取无线报文
怎么使用macbook抓取无线报文1. 打开终端2. 找到airport的路径 #:cd / ; find . –name airport –print3. 为了方便,创建一个软链接#: ln –s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resou
2016-09-09 16:48:22 5553
原创 怎么在windows下使用vim + git 查看管理代码?
怎么在windows环境下使用vim查看代码 ? 怎么在windows下使用git版本管理工具 ?在网上搜索会搜出个种各样的推荐,有人推荐直接下载一个windows下的vim安装包,或者有人推荐使用source insight,notpad++, sublime, ultraedit 或其他IDE工具等等,但是我尝试了使用这些工具查看代码以后,感觉都不顺手,后来才发现自己习惯了linux环境,用L
2016-08-25 14:53:55 2509
原创 hostapd wpa_supplicant madwifi详细分析(十四)——完结篇
注:这篇文章不谈技术查看了一下《hostapd wpa_supplicant madwifi详细分析》系列文章,断断续续更新到现在,发现中间的持续时间都快要两年了。记得那时候刚毕业到公司,组长叫我看项目的无线部分代码,自己稀里糊涂的看了一个月,组长问我:vap是怎么创建的?sta和AP是怎么建立连接的?wds是怎么工作的?WPS中PIN和PUSHBUTTON的区别是什么?我们DUT中几
2016-08-07 17:26:22 3994 3
原创 hostapd wpa_supplicant madwifi详细分析(十三)——EAPOL(802.1X-2004/IEEE Std 802.1X-2010)
这篇文章主要介绍EAPOL,关于它的详细定义可以到802.1X-2004/IEEE Std 802.1X-2010两个文档里面查询。如果有阅读前面一篇文章,应该会了解EAPOL在局域网中是用来为EAP服务的,它主要用来装载EAP数据包,完成802.1x的认证过程。EAPOL也工作在LLC层,现在我们来了解一下。一、总概1.使用范围为了让无线局域网中的设备能够安全的连接通信,802.
2016-08-07 16:05:46 5799
原创 怎么使用CSDN的git仓库(code.csdn.net)
今天使用了一下CSDN的git仓库,做个简单的记录,虽然和githup有一定的差距,但是用来存放一些个人的东西还是够用了。但是CSDN的git仓库有几个地方我还是很喜欢的:1.国内服务器,访问起来会比较快2.可以使用QQ邮箱,这一点github是办不到的,这个邮箱用习惯了3.虽然没有github那样有各种丰富的资源,但是该有的管理功能都有了,而且提供了2G的个人空间,也是极好的
2016-08-07 11:59:12 5959
原创 hostapd wpa_supplicant madwifi详细分析(十二)——EAP(RFC3748)及EAP状态机分析(RFC4137)
wpa_supplicant/hostapd程序里面的核心部分,应该要算它的状态机了,前面分析了WPS的实现过程,但是在看代码的时候,不管是加密部分还是WSC部分,都绕不过它的状态机,它就像路上的一块石头,如果不搬开它,很难继续往下走。下面是wpa_supplicant 模块结构图,红线部分是状态机模块,它就像一个桥架在那里,如果左边进来的的数据想要到右边去实现加密或者解密,就必须经过这座桥,而且
2016-07-28 15:02:14 6137
原创 hostapd wpa_supplicant madwifi详细分析(十一)——wps原理及实现 三
这篇文章主要整理一下关于WSC的边边角角,对一些比较重要且前面没有解释清楚的一些概念做一些补充,如果对前面两篇文章理解比较清楚,可以略过。
2016-07-03 12:17:07 11179
转载 802.11n能够提供600M最大速率的由来
802.11n能够提供600M最大速率的由来无线WiFi技术能够达到的最大速率主要受到编码方式、调制方式、无线频宽等关键指标的影响,作为当前主流的无线WiFi技术,802.11n的最大理论速率能够达到600M,和传统的802.11a/g相比提升了10倍以上。那么哪些关键技术的运用对802.11n的速率提升起到了作用,而这些技术又分别提升了多大量级的速率呢?要搞清楚这个问题,首先还是以802.11g的
2016-07-01 17:24:31 16605
原创 hostapd wpa_supplicant madwifi详细分析(十)——wps原理及实现 二
前面对WPS交互过程有了大概的了解,现在了解一下WPS交互时帧的格式以及每个帧所携带的信息。 WPS使用802.1x和EAP传输in-band注册协议的交互信息,这些信息里面都会携带大端排序的attributes字段。这个协议都会和一个自定义的EAP method相对应。WPS不需要AP支持RADIUS,也不要求网络内包含一个认证服务器,事实上,很多具有WPS功能的AP只支持802.1x使用WPS
2016-07-01 15:48:01 13642 1
转载 基于SHA-256的HMAC文件校验器
HMAC即带密钥的HASH函数,用它产生的报文鉴别码(MAC)可以实现报文鉴别。这里我将其做成一个软件,用于对文件的合法性进行校验。以下我先简单介绍软件相关背景知识再介绍其代码实现。 一、背景知识简介 有时候进行通信的双方基于安全的考虑需要对对方发过来的消息进行校验,以确定消息是未经第三方修改过的。这种校验可以这样进行:双方共同约定一个密钥(即
2016-07-01 09:51:46 2589
转载 HMAC算法安全性浅析
HMAC算法安全性浅析 1 引言 2004年8月17日在美国加州圣巴巴拉召开的国际密码学会议(Crypto’2004)上,来自中国山东大学的王小云教授做了破译MD5、HAVAL-128、 MD4和RIPEMD算法的报告。报告结束时,与会者长时间起立鼓掌致敬,这在密码学会议上是少见的盛况。 然而,更让密码学界震惊的是,2005年2月15日,在美
2016-06-30 22:55:20 13876
原创 Diffie-Hellman(迪菲-赫尔曼)秘钥交换
https://www.captainbed.net/lee244868149/Diffie-Hellman算法是Whitefield Diffie和Martin Hellman在1976年公布的一种秘钥交换算法,它是一种建立秘钥的方法,而不是加密方法,所以秘钥必须和其他一种加密算法结合使用。这种秘钥交换技术的目的在于使两个用户安全的交换一个秘钥一遍后面的报文加密。Diff...
2016-06-30 15:58:18 57968 2
转载 十大注定要被淘汰的安全技术
你是否曾有过这样的经历:启动软盘上的写入保护开关,以防止启动病毒和恶意覆写;关闭调制解调器,以防止黑客在晚上打来电话;卸载ansi.sys驱动,以防止恶意文本文件重新排布键盘,让下一次敲击直接格式化你的硬盘;检查autoexec.bat和config.sys文件,以确认没有恶意条目通过插入它们进行自启动。 时过境迁,上述情况如今很难见到了。黑客们取得了进步,技术替代了过时的方式。有的时
2016-06-30 13:46:02 2475
转载 openwrt minidlna config
MiniDLNAMiniDLNA is a lightweight DLNA/UPnP media server. The MiniDNLA daemon serves media files (music, pictures, and video) to clients on a network.Installationroot@OpenWrt:~# opkg u
2016-06-22 17:30:44 4470
原创 hostapd wpa_supplicant madwifi详细分析(九)——wps原理及实现 一
这篇文章基于《Wi-Fi Simple Configuration Technical Specification Version 2.0.5》文档, 更详细的内容请直接参考文档,这里只将自己的想法做一些简单的记录。一、WSC的三种实现 WSC(wifi simple configuration),一看这名字就知道这个协议是用来偷懒用的,所以我将它翻译为“快速接入无线网”协议,这
2016-06-15 09:51:44 25178 16
原创 hostapd wpa_supplicant madwifi详细分析(八)——wpa_supplicant的配置文件
距离上一篇文章的更新已经将近半年了,这半年忙项目忙得几乎没有什么时间给自己积累一些东西,也没什么心思转到这边来写点东西,当一个项目放到自己身上的时候,发现并不像开发一个模块或一个功能那么简单,涉及方方面面,各种琐碎的的事情会占据大量的时间,各个功能之间的交互等等。 前面写的关于hostapd的文章都太浅显了,一般都没怎么涉及到具体的功能,只是简单的分析了一下代码的流程,然而对于实际的功能开
2016-05-29 09:34:43 8852
转载 windows bat脚本编写
Windows .bat 脚本简单用法介绍:一.简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。 语法: echo [{on│off}] [message] Sample:@echo off / echo hello world 在实际应用中我们会把这条命令和重定向符号(也称为管道符号
2016-05-19 08:39:53 990
转载 CSS reset的重新审视 – 避免样式重置
CSS reset的重新审视 – 避免样式重置一、CSS reset(CSS重置)的历史根据淘宝射雕的叙述,最早的一份CSS reset来自Tantek 的undohtml.css,很简单的代码,Tantek 根据自己的需要,对浏览器的默认样式进行了一些重置。其余一些有名的CSS reset如业界领袖Eric Meyer的reset,或是Tripoli Reset。CSS
2016-04-30 20:47:28 602
转载 C语言正则表达式详解 regcomp() regexec() regfree()详解
标准的C和C++都不支持正则表达式,但有一些函数库可以辅助C/C++程序员完成这一功能,其中最著名的当数Philip Hazel的Perl-Compatible Regular Expression库,许多Linux发行版本都带有这个函数库。C语言处理正则表达式常用的函数有regcomp()、regexec()、regfree()和regerror(),一般分为三个步骤,如下所示:
2016-01-21 08:34:03 6550
转载 sscanf 函数使用
sscanf编辑sscanf() - 从一个字符串中读进与指定格式相符的数据。swscanf()- 用于处理宽字符字符串,和sscanf功能相同。外文名sscanf类 别数据输入解 释字符串中读进相符的数据处 理宽字符字符串头文件#include目录1名称2头文件3返回值4说明5支持集合操作6例子
2016-01-20 20:41:58 1622
原创 (7)uboot详解——初始化SDRAM
(7)uboot详解——初始化SDRAM在开始这篇文章之前,我们先回顾一下(1)uboot详解——板子刚上电时都干了些什么,不管板子是从nandflash启动还是从norflash启动,它的开始代码都不是在SDRAM中运行的,要么在stepping stone中运行,要么在norflash中运行,但是stepping stone的4k片上内存显然是不够的,而且norflash可读不可写的特
2016-01-03 16:35:11 13277 2
原创 (6)uboot详解——关闭缓存和mmu
uboot详解——关闭缓存和mmu当设置完时钟分频以后,uboot就会执行cpu_init_crit汇编函数,这个函数的主要作用就是关闭缓存和mmu,然后调用lowlevel_init函数进行系统总线的初始化。为什么启动的时候,需要关闭缓存和mmu呢?我们先了解一下他们的作用。缓存是主存(内存)和CPU通用寄存器之间设置的一个高速的、容量相对较小的存储器,把正在执行的指令地址附近的
2016-01-01 11:49:09 6358
原创 (2.3)QCA atheros 无线配置命令——Beacon配置参数
参数命令格式DAOL描述ampdudensityget_ampdudensityiwpriv athNampdudensityMPDU_density 设置MPDU的精度,默认值是6#iwpriv ath0 ampdudensity 6#iwpriv ath0
2015-12-24 17:32:11 6360
原创 (2.2)QCA atheros 无线配置命令——iwpriv关联和ACL
参数命令格式DAOL描述addmacdelmacgetmacmaccmdget_maccmdiwpriv athN addmacmacaddriwpriv athN delmacmacaddriwpriv athN maccmdcmdYY这个参数用
2015-12-24 15:50:23 3821
原创 (2.1)QCA atheros 无线配置命令——iwpriv聚合和ANI参数
1. iwpriv参数这部分将说明iwpriv每一层对应的参数,包括radio层和协议层,注意,有一些参数在这两层之间是重复的,所以当要设置重复的参数的时候,建议将radio层的参数覆盖协议层的参数,带宽模式的参数(HT20/40)和一些其他参数将应用于radio层。如果radio层的参数改变了,那么所有连接到对应wifiN接口上的VAPs都将受到影响。使用iwpriv命令时,所有的参数都有
2015-12-24 15:49:53 4284
原创 (5.3)uboot详解——PWM定时器(番外)
这篇文章是一些拓展内容,如果想了解uboot的启动过程,可以先跳过本章,如果需要掌握一些编写裸机程序或者内核与计时器相关的驱动的知识,可以了解一下。PWM定时器1.概述脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中——
2015-12-24 15:31:02 2819
原创 (1)QCA atheros 无线配置命令——iwconfig (athN)
AP驱动的命令行工具是由一系列无线工具组成的,他们可以用来修改无线驱动的环境变量。1.1 无线工具无线工具接口用来Linux下配置和操作WLAN接口的。这些工具是开源的,同时也需要驱动的指定的IOCTL接口的支持,QCA的WLAN驱动可以很好的与这些开源无线工具兼容,甚至在使用时不用做任何修改,任何一个高于28版本的无线工具都可以很好的配置qca atheros 的无线驱动。无线工具使
2015-12-09 14:17:00 6260
原创 shell命令收集
1.比较两个文件的时间戳可以用test的-nt选项, 比如 [ file1 -nt file ] && echo "file1 is newer than file2" ,然而 -ot 与之相反2.虚拟机 设置 选项 共享文件夹 mount -t vmhgfs .host:/ /mnt/hgfs/
2015-12-09 09:31:02 863
原创 (5.1)uboot详解——时钟分频
(5)uboot详解——时钟分频如果cpu是计算机的大脑,电流是计算机的血液,那么时钟则是计算机的心脏,时钟频率决定了处理器运算的快慢,它的每一次“跳动”都驱动着处理器不停的执行命令。不同的是,人的各个部位心率是一样的,但计算机却有多个频率,而且每个部位可能有不同的频率,比如“大脑”有一个频率,“手“有一个频率,“脚”使用的是另外一个频率,这样就产生了两个问题:怎么产生这些不同的频率?处理器怎
2015-11-22 10:53:28 4487
原创 (4.3)uboot详解——异常和异常向量
(4.3)uboot详解——异常和异常向量前面两节分析了外部中断和内部中断相关的内容,这篇文章对处理器的异常情况作一个总结。可以参考第二片文章(处理器工作模式),ARM处理器有七种工作模式,除了用户模式和系统模式以外,其他5中模式都是异常模式。人们都会生病,生病时我们可以依靠我们的免疫系统恢复过来,计算机也会“生病”,它“生病”的时候就会进入异常工作模式,依靠异常处理程序让cpu恢
2015-11-20 15:10:11 4430 3
原创 (4.2)uboot详解——外部中断(GPIO)
看ARM 处理器的芯片原理图,除了一些特殊的外接功能引脚外,GPIO引脚占了绝大部分。GPIO是General Purpose Input Output (通用输入/输出),外设都是连接到这些引脚上面的,所以可以简单的说,我们想让一个处理器实现什么样的功能,直接依赖于对GPIO寄存器的操作。
2015-11-13 09:01:02 4676 1
sed awk讲解资料全集
2015-06-11
精通UNIX Shell脚本编程 第二版 免费 包含脚本文件
2015-06-11
netcat-0.7.1.tar.gz
2014-09-04
GitHubSetup
2014-08-31
Linux Shell脚本攻略
2014-08-25
80211r的无线局域网漫游技术的研究与实现
2018-07-01
Linux内核精髓-精通Linux内核必会的75个绝技 完整版
2017-03-19
TCP IP详解卷1:协议 原书第2版 压缩二
2017-03-19
Linux设备驱动开发详解:基于最新的Linux 4.0内核 高清完整.pdf版下载
2017-03-12
windows-use-vim-ctags-and-git
2016-08-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人