方法一:抓包的方式获取
当设备默认TC link key为5A 69...,通过抓包新设备入网的方式可以获取nwk key
方法二:串口打印的方式
设备能通过串口CLI命令输出"keys print".
方法三:导出固件flash的方式
设备需要有SWD烧录口
日前有机会接触到智能照明领域,于是在网上购买一套飞利浦套件,想了解下飞利浦bridge控制命令的整个流程,但是通过Ubiqua Protocol Analyzer抓包发现zigbee数据无法解密,上网搜索了解了一番,原来ZLL的设备在联盟通过Zigbee Light Link认证之后,会把默认Link Key换成联盟给的Link Key,这个Key是不公开的,导致抓包工具无法解析Transport NWK KEY,后面的数据包也都无法解密
下面分享一下获取设备网络KEY和LINK Key的方法:
硬件设备需要一个zigbee 3.0的网关开发板(EFR32芯片),和一个已经能加入飞利浦bridge的灯板(EFR32芯片)以及飞利浦的Bridge 2.1.
首先需要让兼容飞利浦Bridge的EFR32的灯板加入zigbee 3.0的网关开发板,入网的时候需要抓包,或者直接通过网关的串口CLI命令:“Keys Print”打印出网络Key。
然后需要通过commander.exe的命令导出兼容飞利浦Bridge的EFR32的灯板的固件,通过已知的网络Key,在到处的.hex固件中找到NWK的位置:
commander tokendump --tokengroup znet --device EFR32MG21A020F768 --outfile tokens