协议-Airkiss
- 电脑硬件
- 2025-09-16 23:06:01

是什么? 设备 A 与外界没有建立任何实质性连接,可以称之为信息孤岛。设备 B 通过路由 或者直接 将 Wifi 的 ssid 与密码 UDP广播 传递给 A
为什么? 解决将无线网络的 ssid 与密码传输到设备难题
怎么做? 芯片自带AT指令开启Airkiss功能 AT\r\n AT+CWMODE=1\r\n AT+CWSTARTSMART=3\r\n #设置配置参数3,SmartConfig功能支持ESP-TOUCH以及AirKiss
核心本质 UDP包的广播与监听9bits Length字段的编码
前导码
解决问题
多个AP不知道哪个信道同一信道海量UDP包同时发送UDP广播包需要封装,与最后SNAP包存在差异前导域-差异值
在发送链路层数据之前,需要先发送400ms覆盖8个信道的前导域前导域由4个字节组成 固定为{1,2,3,4}求得差异值,才能解析出实际的信息数据举个例子
接受方通过监听,在链路层截获802.2 SNAP格式的前导数据包,其Length字段的值分别为53,54,55,56,那差异值就能确定为53-1=52。之后接收方接收到数据之后都用SNAP包的Length字段值减去52,即能得到实际的信息数据链路层LLC数据格式
监听SNAP格式数据包
启用 Wi-Fi 芯片的混杂模式监听空间中的无线信号由于操作系统的限制,,发送方只能改变Length字段进行信息传递![[Pasted image 20250302173412.png]]
字段长度(字节)含义DMAC6目的MAC地址。SMAC6源MAC地址。Length2指后续数据的字节长度,但不包括CRC检验码。DSAP1目的服务访问点,若后面类型为IP帧值设为0x06。SSAP1源服务访问点,若后面类型为IP帧值设为0x06。Ctrl1该字段值通常设为0x03,表示无连接服务的IEEE 802.2无编号数据格式。SNAP-ID5由OUI和Type两部分组成。OUI33字节的组织唯一标识符(Organizationally Unique Identifier),其值通常等于MAC地址的前3字节,即网络适配器厂商代码。Type2标识以太网帧所携带的上层数据类型。Data44~1498负载。CRC4用于帧内后续字节差错的循环冗余检验(也称为FCS或帧检验序列)。整体架构
magic code field
Length是 Data Length
在信息传输之前
先对AP进行扫描,通过获取的beacon可以得知无线环境中所有非隐藏AP的ssid、rssi以及信道。在传输过程中
接收方先从magic code field中获取目标AP ssid 的crc8值,然后再和事先扫描所得到的ssid的crc8值进行比对,如果发现相同值,那么在接下来的接收过程中接收方就不用再接收ssid信息prefix code
Length是发送密码长度sequence header
数据以4为粒度进行划分,每4个数据组成一个sequence
以sequence为单位进行数据的发送
每个sequence都由sequence header字段和data字段组成
从sequence index 开始到本 sequence data 结束所有数据的 crc8 的低 7 位值(最高位需补 0)
data
数据内容
随机数的作用是 当数据接收方连上AP之后,立即发送以该随机数为内容的UDP广播包当发送方收到该广播包后就能确认接收方已经准确接收到所有数据抓包解析 使用安信可提供的工具,抓包罢了不用真正输入真是ssid,毕竟仅仅是广播使用wireshark
前导码
手机192.168.100.3 发出的UDP包 很明显 data 长度Length 1 2 3 4 满足前导域条件magic code field
20组prefix code
8 位密码CRC 0XC2sequence header
第一个Index 数据0x31 0x32 0x33 0x34 对应ascii 前四位密钥1234 第二个Index 数据0x35 0x36 0x37 0x38 对应ascii 前四位密钥5678 第三个 sequence header a8 82 包后置随机数 0x01ssid 应该是108-3第四个 sequence header f0 83
文档链接说明
参考文档 breezetemple.github.io/2019/01/04/airkiss/
参考文档 Airkiss协议详解.pdf
参考文档 Radiotap、Prism 和 802.11 帧格式分析 |
协议-Airkiss由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“协议-Airkiss”
 
               
               
               
               
               
               
               
               
   
   
   
   
   
   
   
   
   
   
   
  