无线龙 zigbee 加密传输
来源:互联网 发布:围棋中的算法 编辑:程序博客网 时间:2024/03/29 19:50
1.将f8wConfig.cfg文件中设置为-DSECURE=1,这句话的意思是SECURE=1,这个变量在协议栈中作为if语句的条件使用,条件为真的语句中就是开启加密算法的函数。所以要使用第一步是要将这个参数设置为1。
2.将ZGlobals.c中的uint8 zgPreConfigKeys = FLASE;修改为uint8 zgPreConfigKeys = TRUE;
3.准备一个key,这个可以在函数nwk_global.c中修改:
CONST byte defaultKey[SEC_KEY_LEN] =
{
#if defined ( APP_TP ) || defined ( APP_TP2 )
// Key for ZigBee Conformance Testing
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x89, 0x67, 0x45, 0x23, 0x01, 0xEF, 0xCD, 0xAB
#else
// Key for In-House Testing
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
#endif
};
到这里整个加密过程已经结束了,值得注意的是,如果使用了加密算法后,网络中所有的设备都需要开启这个算法,而且各个设备中的key必须相同。否则后果是很严重的,这会导致你的网络不能正常通讯,因为没有加密的数据或者相同key加密,这些数据网络是不认识的,根本就不会传到网络层。
加密算法开启以后,如果你需要修改代码,就必须改变你的key,或者是擦除一次你的flash,否则会出现不可逾期的错误,而且没有规律。通常的做法是擦除flash一次,这样可以保证和整个网络的key相同。
好了,做个测试吧,分别对一个协调器和一个路由器加密,并构成网络,并使用协调器广播数据,如果顺利的话,他们可以正常通讯了,然后你改变一下key,然后在写一个路由器,会出现什么结果呢?你会发现,key不同的路由器根本接收不到协调器广播的数据,路由器发送的数据网络也无法接收。然后再用协议分析仪查看一下,发现监听的数据和发送的数据根本就不同,因为我们加了密。
love
钓鱼竿
- 无线龙 zigbee 加密传输
- ZigBee无线技术
- zigbee无线模块
- ZigBee无线插座设计
- ZigBee无线遥控系统
- zigbee串口透明传输
- ZigBee的传输模式
- zigbee加密技术
- zigbee加密技术
- ZIGBEE加密,NV_RESTORE
- ZigBee:“掌”控无线生活
- 快速精通ZIGBEE无线技术
- zigbee 780M 无线模块
- zigbee无线串口应用记录
- 关注zigbee(四)--无线收发
- zigbee无线信道的组成
- ZigBee无线应变采集装置
- STM32W108无线ZigBee射频模块
- android 游戏音效播放 SoundPool
- 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法
- 判断一个链表中是否有环
- float x0,y0,y1,x1;
- 通过网站的访问统计优化网站-10个免费的网站统计和分析工具
- 无线龙 zigbee 加密传输
- Creation of a Word 2007 document using the Open XML Format SDK
- Wifi移植浅析
- PHP安全 CSRF攻击 与XSS攻击
- 解决子级用css float浮动 而父级div没高度不能自适应高度
- OpenCV编程->Haar训练(3)
- 学习iOS开发之使用内置地图
- 心里真的不好受
- 红黑树