开发者社区> 玄学酱> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如何利用HackRF分析无线电信号,解读无线语言

简介: 本文讲的是如何利用HackRF分析无线电信号,解读无线语言,HackRF是一款价值300美元的SDR的USB外部供电设备,除了基本的供电功能外,还具有1MHz至6Ghz的信号频率,TX/RX以及每秒2000万个采样的8位正交样本。
+关注继续查看
本文讲的是如何利用HackRF分析无线电信号,解读无线语言

如何利用HackRF分析无线电信号,解读无线语言

HackRF是一款价值300美元的SDR的USB外部供电设备,除了基本的供电功能外,还具有1MHz至6Ghz的信号频率,TX/RX以及每秒2000万个采样的8位正交样本。支持的操作范围涵盖了研究人员可能感兴趣的大量RF频谱, 1MHz至6 GHz频段包括了AM无线电,航空无线电,导航,短波广播,电视,FM收音机,蓝牙,手机网络, GPS,Wi-Fi(2.4Ghz和5Ghz)以及各种卫星通信。此外,HackRF提供了传输该频段内的任何信号的能力,或者你也可以通过FCC访问未经许可的通信设备及频段。由于电磁频谱受到严格控制,所以安装HackRF需要特定的软件工具包,比如GNU Radio,GrOsmoSDR和Gqrx。安装完后可以使用Gqrx来查看光谱瀑布图。下图就是一个在HackRF上捕获的FM无线电信号:

如何利用HackRF分析无线电信号,解读无线语言

在这个FM信号中,内部波形是模拟数据,而外部2个波形是数字数据。这些数字数据条就是高清无线电,用于传输音频和数据。根据推测,这可能是一个电台节目的信号或是Youtube上的一段视频,模拟中心波形为360p,数字高清广播条(Radio bar)为1080p。虽然美国的FM收音机在88.1 – 108.1 MHz之间运行,但AM收音机的工作频率为540 – 1600 kHz。FM会增加或减少一定带宽内波的频率,以0或1表示,而AM则会改变波的强度,以0或1表示:

如何利用HackRF分析无线电信号,解读无线语言

这两种形式的调制具有不同的特性,因此非常适合于不同类型的运行。在对AM信号进行解码的同时,解码器只会看到一个频率,并解析波形大小变化以收集数据。FM解码器将查看中心频率和带宽(窄带或宽带),并将该范围内的变化解析为数据。手动扫描频谱,你将会发现许多信号。要做一些粗略的信号分析,可以使用sigidwiki。

Wi-Fi信号约2.4Ghz

如何利用HackRF分析无线电信号,解读无线语言

未知信号〜322 Mhz

如何利用HackRF分析无线电信号,解读无线语言

未知信号〜292 Mhz

如何利用HackRF分析无线电信号,解读无线语言

以下是捕获的一个汽车钥匙信号〜433Mhz。

hackrf_transfer -r key_signal.cs8 -f 433700000 -s 8000000

通过这个捕获的信号,可以确定其指定.scc为文件扩展名。由于该工具没有任何自动检测功能,所以它使用文件扩展名来翻译数据。在这种情况下,我们会为I/Q数据提供复杂的8位有符号整数。车钥匙信号的前导码是稳定的数据流,可以向接收者显示出实际正在被接受的数据。

前导码部分

如何利用HackRF分析无线电信号,解读无线语言

传输部分

如何利用HackRF分析无线电信号,解读无线语言

结束部分

如何利用HackRF分析无线电信号,解读无线语言

在另一个名为baudline的工具中也显示出了相同的数据,你可以看到完整的传输。

如何利用HackRF分析无线电信号,解读无线语言




原文发布时间为:2017年6月8日
本文作者:xiaohui 
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
C语言入门(十)函数
C语言入门(十)函数
9 0
『C语言』深度走入取整 & 4种函数
⒈trunc - 0向取整 ⒉floor -地板取整 ⒊ceil-无穷大取整 ⒋round-四舍五入
14 0
【算法】1365. 有多少小于当前数字的数字(多语言实现)
给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。 以数组形式返回答案。
32 0
0001 c语言 整数求和
0001 c语言 整数求和
65 0
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
36 0
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
38 0
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
【C 语言】二级指针作为输入 ( 指针数组 | 复杂指针解读 )
35 0
《C语言点滴》一导读
C语言的书林林总总,数不胜数,其中不乏《C Programming Language》1这样的Bible级经典白皮书,也不乏《C陷阱与缺陷》2、《C Programming FAQs》3这样的工程师枕边必备。
1435 0
ORACLE 数字算法的C语言实现
先来研究NUMBER类型的数字回推算法 类型 ,符号/指数位 [数字1,数字2,数字3,......,数字20] 1、长度类型没什么号说的 2、符号位,这个需要说一下 The sign bit, which is the high order bit (128...
761 0
C语言的几种取整方法
C语言的几种取整方法 来源:http://blog.sina.com.cn/s/blog_4c0cb1c001013ha9.html 1、直接赋值给整数变量。如: int i = 2.5; 或 i = (int) 2.5; 这种方法采用的是舍去小数部分 2、C/C++中的整数除法运算符“/”本身就有取整功能(int / int),但是整数除法对负数的取整结果和使用的C编译器有关。
2442 0
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
20683
文章
438
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载