AES加密算法,是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位分组加密和解密数据。Z-Stack中采用的是128位的加密方式。
三步配置:
1、创建密钥
在配置文件f8wConfig.cfg中修改
/* Default security key. */
-DDEFAULT_KEY=”{0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, 0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0D}”
2、将Zglobals.c中的uint8 zgPreConfigKeys = FALSE修改为 TRUE。
如果这个值为真,那么默认的密钥必须在每个节点程序的配置文件中配置。如果这个值为假,那么默认的密钥只需配置到协调器设备当中,并且通过协调器节点发送给其他的节点。
3、设置f8wConfig.cfg文件中的 -DSECURE=1 以使能AES加密
/* Set to 0 for no security, otherwise non-0 */
-DSECURE=0
加密算法开启以后,如果需要修改代码,就必须改变KEY值或者擦除一次Flash,否则会出现不可逾越的错误。
若通信双方的任意一方未使能,则终端节点无法加入协调器的网络。
这里需要强调一下加密模式与安全模式并不能等同。