关于密钥问题,您是指DEFAULT_KEY?
#if defined ( DEFAULT_KEY )
CONST uint8 defaultKey[SEC_KEY_LEN] = DEFAULT_KEY;
#else
CONST uint8 defaultKey[SEC_KEY_LEN] =
{
#if defined ( APP_TP ) || defined ( APP_TP2 )
// Key for ZigBee Conformance Testing
0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa
#else
// Key for In-House Testing
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
#endif
};
#endif
代码里面有个宏定义DEFAULT_KEY,如果已经定义了这个的话,那么就不在使用下面的数组了。
DEFAULT_KEY定义在f8wconfig.cfg文档里面
/* Default security key. */
-DDEFAULT_KEY="{0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, 0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0D}"
所有的API的文档,宏定义的解释都在协议栈安装目录下Documents里面。
如果没有使能uint8 zgPreConfigKeys = FALSE;的话,那么节点在入网的时候,Key是有父设备发送给子设备的。
加密和解密是有硬件完成的。