最好的安全机制应使用分层设置的方法,从物理层一直到应用层。尽管物理层的安全设置超出zigbee标准所涉及的范围,但联盟一直在帮助我们的成员互相交流在这一领域的最佳实践方法。从协议/标准的角度来看,网络层和应用层都能提供安全方法(包括入网时的流程)。在网络层,所有设备都处于一致的安全环境之中。
TC可以要求每个新设备通过唯一的Install Code来加入集中式安全网络。Install Code必须与以带外方式(out-of-band,即不通过zigbee网络)预先输入TC的密码匹配。例如,Install Code可以用数字或二维码的形式打印在加入设备的包装中;用户或安装者可以将密码键入或扫描到连接TC的智能手机或平板电脑中。所有zigbee设备都必须包含唯一的Install Code,这是一个由16位CRC保护的随机128位数字。加入设备和TC根据其共同的Install Code使用Matyas-Meyer-Oseas(MMO)哈希算法生成唯一的128位信任中心连接密钥(Trust Center Link Key)。
在集中式安全网络中,TC定期地创建、分发、然后切换到新的网络密钥。因此,即便攻击者获取了网络密钥,它也将很快到期失效。TC生成的更新的密钥会使用TC连接密钥加密后发送。
另一个关键的安全工具是能够在网络中的一对设备之间创建应用层安全连接。通过在一对设备之间创建唯一的AES-128加密密钥可以在网络中的任何两个设备之间建立逻辑安全连接,从而在网络的许多设备中某对设备能够形成“虚拟专用连接”。以家庭局域网为例,所有设备(例如,灯,恒温器,存在传感器,门锁,门窗传感器和车库门开启设备)形成的网络由网络层的一组密钥进行防护 ,而对控制家庭出入户的设备(例如门锁和车库门开启设备)设定附加的一对安全密匙。这样万一攻击者获取网络密钥后能通过拦截或注入网络消息影响其他设备的操作,门户仍然固若金汤。