为了支持两层的安全设计,NB-IoT模块采用了如下图所示的密钥体系。为了管理终端和接入网络各实体共享的密钥,安全架构中定义了接入安全管理实体(ASME),该实体是接入网从HSS接收最高级(top-level)密钥的实体。对于NB-IoT接入网络而言,MME执行ASME的功能。
NB-IoT模块网络的密钥层次架构中包含如下密钥。
Cl)终端和HSS间共享的密钥
K:存储在USIM和认证中心AuC的永久密钥;
CK/IK:AuC和USIM在AKA认证过程中生成的密钥对。
(2)终端和ASME共享的中间密钥
KASME=终端和HSS根据CK/IK推演得到的密钥。密钥KASME从HSS传输到ASME。
(3)终端和MME间共享的密钥
KNASint:根据KASME推导出的密钥,用于和特定的完整性算法一起保护NAS信息;
KNASenc:根据KASME推导出的密钥,用千和特定的加密算法一起保护NAS信息。
(4)终端和基站间共享的密钥
凡NB:根据KASME推导出并且在RRC连接重建立或RRC连接恢复时根据
nextHopChainingCount更新的密钥,用于推导保护RRC信令的密钥(KRRCinl和KRRCenc)
和空口用户面数据的密钥(KuPenc):
KuPenc:用于和特定的加密算法一起保护空口用户面数据;
KRRCint:用千和特定的完整性算法一起保护RRC信令;
KRRcenc:用于和特定的加密算法一起保护RRC信令。