zigbeeAES加密实验
更新时间:2024-06-11 20:35:01 阅读量: 综合文库 文档下载
4.8对网络传输内容用AES加密
AES(The Advanced Encryption Standard)是美国国家标准与技术研究所用于加密电子数据的规范。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。AES是一个新的可以用于保护电子数据的加密算法。明确地说,AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16 字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据 的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations )和替换(substitutions)输入数据。
Z-stack 对Zigbee2007提供了全面的支持,功能之强大,性能稳定、安全性高。 CC2530 硬件支持128bit 的AES 加密算法,在协议栈中为了避开相同设备的干扰,和防止被其他设备监听,就必须采用这个技术将数据加密来提高数据的安全性。
4.8.1 实验目的与器材
1)实验目的
本实验将利用Z-Stack2007协议栈构建一个简单的无线传感网络,对网络上传输的数据用AES进行加密,并且通过抓包软件对加密之前和之后的数据进行分析对比。 2)实验器材
? 3个CC2530开发模块(1个终端节点,1个协调器,1个抓包节点);
4.8.2 实验原理与步骤
本实验以SensorDemo为实例程序,说明如何对传输的数据进行AES加密。 1)实验原理
AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16 字节)分组加密和解密数据。Z-STACK中采用的是128bit的加密方式,并且在协议栈中实现了AES加密算法。因此,如果需要对数据进行加密,仅需要在协议栈的配置文件中提供一个密钥,并且使能AES加密即可。通过观察发现,加密后数据的长度和原始数据的长度是相关的。例如,当原始数据长度为1~15字节时,加密后的数据所对应的长度相同;当原始数据长度为16~31字节时,加密后的数据所对应的长度相同,以此类推。 2)实验步骤 1.创建密钥
Z-STACK协议栈在配置文件f8wConfig.cfg定义了密钥:
/* Default security key. */
-DDEFAULT_KEY=\0x06, 0x08, 0x0A, 0x0C, 0x0D}\
所以用户只需要修改-DDEFAULT_KEY的值就可以定义自己使用的密钥。 2. 将ZGlobals.c 中的uint8 zgPreConfigKeys = FLASE;修改为TRUE;
如果这个值为真,那么默认的密钥必须在每个节点程序的配置文件中配置。如果这个值为假,那么默认的密钥只需配置到协调器设备当中,并且通过协调器节点发送给其他的节点。
// If true, preConfigKey should be configured on all devices on the network // If false, it is configured only on the coordinator and sent to other // devices upon joining.
uint8 zgPreConfigKeys = TRUE;
3. 将f8wConfig.cfg 文件中设置为-DSECURE=1使能AES加密
/* Set to 0 for no security, otherwise non-0 */ -DSECURE=1
最后,到这里整个加密过程结束,值得注意的是,如果使用了加密算法后,网络中所有的设备都需要开启这个算法,而且各个设备中的KEY必须相同。否则后果是很严重的,这会导致你的网络不能正常通讯,因为没有加密的数据或者相同KEY加密,这些数据网络是不认识的,根本就不会传到网络层。
加密算法开启以后,如果你需要修改代码,就必须改变你的KEY,或者是擦除一次你的flash,否则会出现不可逾期的错误,而且没有规律。通常的做法是擦除flash一次,这样可以保证和整个网络的KEY相同。
4.8.3 实验结果
为了能截取到经过AES加密过的网络传输内容,下面需要三个节点进行实验:一个协调器,一个终端,一个抓包。下面为网络抓包后的结果,网络传输内容为“Y”,其十六进制表示为“59”。
由于加密过程仅作用在各层的“有效数据段”中,所以只注重每层的数据段。 1)终端,协调器都没加密
终端,协调器都没加密时,mac层数据如图4-8-1所示
图4-8-1终端,协调器都没有加密时,mac层抓包的数据
终端,协调器都没加密时,网络层数据如图4-8-2所示
图4-8-2终端,协调器都没有加密时,网络层抓包的数据
终端,协调器都没加密时,应用层数据如图4-8-3所示
图4-8-3终端,协调器都没有加密时,应用层抓包的数据
2) 终端,协调器都加密.:
终端,协调器都加密时,mac层数据如图4-8-4所示
图4-8-4终端,协调器都加密时,mac层抓包的数据
终端,协调器都加密时,网络层数据如图4-8-5所示
图4-8-5终端,协调器都加密时,网络层抓包的数据
终端,协调器都加密时,应用层数据如图4-8-6所示
图4-8-6终端,协调器都加密时,应用层抓包的数据
3) MAC层有效数据分析如图4-8-7所示。
图4-8-7 MAC层有效数据分析
4) 网络层有效数据段分析如图4-8-8所示。
图4-8-8网络层有效数据段分析
5) 应用层有效数据段分析如图4-8-9所示。
图4-8-9应用层有效数据段分析
通过分析以上的报文可以得出如下的结论:在进行加密之后,应用层的负载变为了加密后的格式,如上图所示。之后,加上网络层的帧头和相应的控制字段。交付给MAC层,MAC层再加上自己的帧头和控制字段将该数据包发送出去。因此,如果通信双方的密钥不同或者某方未使能加密,则无法进行通信,终端节点根本就无法与协调器建立连接,从而,达到了数据保护的目的。
经过测试,还发现了关于AES配置的如下规律:
1. 若通信双方的任意一方未使能-DSECURE=1,则无法终端节点无法加入协调器的网络。 2. 若zgPreConfigKey=FALSE,无论双方设定的密钥(即DEFAULTKEY)是否相同,都可
以进行通信,因为当zgPreConfigKey=FALSE时,整个加密的配置都将由协调器节点控制,并且由协调器发送给其他的终端节点或路由节点。
3. 若zgPreConfigKey=TRUE,如果双方设定的密钥不同,则无法进行通信。
问题1:当设置zgPreConfigKey=FALSE时,理论上密钥由协调器节点发送给每个终端节点,你能否通过抓包观察这个过程?
问题2:若zgPreConfigKey=FALSE,这样的加密过程是否是安全的?
问题3:当双方设置的密钥不同时,为什么不能进行通信?你能否通过抓包解释这一现象? 问题4:加密算法在协议栈的那一层实现?你是否可以使用自己的加密算法对数据进行加
密?
问题5:当数据量过大时,对数据的加密和解密是否会影响到整个网络的效率?
正在阅读:
zigbeeAES加密实验06-11
学车考试倒桩移库技巧图解01-07
压铸机生产公司及压铸行业名录(最全)上03-31
追逐梦想的力量_初一作文02-23
全氟聚醚应用研究 - 图文04-04
跳水05-24
期末大作业06-08
利用双卡尔曼滤波算法估计电动汽车用锂离子动力电池的内部状态08-17
马庄于氏资料整理10-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 加密
- zigbeeAES
- 实验
- 启东市圆陀角化工有限公司年提纯26.5吨电子级三氯氧磷(超净高纯
- 四川电大毕业设计2(范文) - 图文
- 2017年山东省济南市市中区中考数学一模试卷(解析版)
- 最新部编人教版九年级上册21课《智取生辰纲》预习导学案
- “凤凰展翅”四川大学2009年文化艺术节“精彩川大”器乐大赛竞标
- 小牧者生活期中考试第一册
- 智能制造-模块化研发设计
- 大润发物流成本分析报告
- 外贸单证实务实验报告 - 图文
- 试论高中地理教学中怎样实施素质教育
- 江苏省盐城市响水中学高二物理上学期期中试卷(选修,含解析)
- 学习贯彻党的十八届三中全会精神知识竞赛试
- 2011台湾省副科级领导干部公开选拔考试重点和考试技巧
- 小学三年级数学“三位数除以一位数”教案
- 2013年中考数学试题分类--垂径定理及推论(2013年)
- 华润电力江苏检修有限公司危险点控制措施手册
- 2018新人教版部编本二年级下册语文《彩色的梦》公开课教学设计
- 高考数学重点难点复习(27):求空间的角
- 2003 年 度 江 苏 政 府 留 学 奖 学金单位推荐表
- 纪实摄影的意义