admin 管理员组文章数量: 887021
2024年3月9日发(作者:万维网联盟是什么协会)
MME的鉴权和加密过程
鉴权流程的目的是由HSS向MME提供EPS鉴权向量(RAND, AUTN, XRES,
KASME),并用来对用户进行鉴权。
1) MME发送Authentication Data Request消息给HSS,消息中需要包含IMSI,网络ID,如MCC + MNC和网络类型,如E-UTRAN
2) HSS收到MME的请求后,使用authentication response消息将鉴权向量发送给MME
3) MME向UE发送User Authentication Request消息,对用户进行鉴权,消息中包含RAND和AUTN这两个参数
4) UE收到MME发来的请求后,先验证AUTN是否可接受,UE首先通过对比自己计算出来的XMAC和来自网络的MAC(包含在AUTN内)以对网络进行认证,如果不一致,则UE认为这是一个非法的网络。如果一致,然后计算RES值,并通过User Authentication Response消息发送给MME。MME检查RES和XRES的是否一致,如果一致,则鉴权通过。
EPS鉴权向量由RAND、AUTN、XRES和KASME四元组组成。EPS鉴权向量由MME向HSS请求获取。EPS鉴权四元组:
l RAND(Random Challenge):RAND是网络提供给UE的不可预知的随机数,长度为16 octets。
l AUTN(Authentication Token):AUTN的作用是提供信息给UE,使UE可以用它来对网络进行鉴权。AUTN的长度为17octets
l XRES(Expected Response):XRES是期望的UE鉴权响应参数。用于和UE产生的RES(或RES+RES_EXT)进行比较,以决定鉴权是否成功。XRES的长度为4-16 octets。
l KASME 是根据CK/IK以及ASME(MME)的PLMN ID推演得到的一个根密钥。KASME 长度32octets。
l ASME从HSS中接收顶层密钥,在E-UTRAN接入模式下,MME扮演ASME的角色。
l CK:为加密密钥,CK长度为16 octets。
l IK:完整性保护密钥,长度为16 octets。
在鉴权过程中,MME向USIM发送RAND和AUTN,USIM可以决定返回RES还是拒绝鉴权。
1. MME发起AUTH REQ消息,携带鉴权相关信息RAND和AUTN;
第一条 S1AP_DL_NAS_TRANS
2. UE收到AUTH REQ消息后回复AUTH RES(携带RES参数)。
第一条 S1AP_UL_NAS_TRANS
3. MME收到AUTH RES后,触发安全模式流程,否则返回AUTH REJ消息。
EPS的安全架构如下:
EPS安全架构中有相互独立的分层安全:
MME和UE执行NAS( Non-access stratum,非接入层)信令加密和完整性保护。
eNodeB和UE执行RRC信令加密和完整性保护,UP加密。
E-UTRAN里的密钥层次架构:
密钥的层次架构里包含以下密钥: KeNodeB, KNASint, KNASenc, KUPenc,
KRRCint 和KRRCenc
- KeNodeB是由UE和MME各自根据KASME计算得到的,可用于派生KRRCint、KRRCenc和KUPenc,发生切换时也可用于派生KeNodeB*。在初始连接建立时,由UE和MME分别从E-UTRAN的顶层密钥中派生出来的。KeNodeB*是由UE和源eNodeB根据目的物理小区号、下行频率、KeNodeB(或新NH)派生出来,并在切换后被UE和目的eNodeB用作新的KeNodeB。NH(Next Hop)是用于在UE和eNodeB中派生KeNodeB*。当安全上下文建立时,NH由UE和MME从KeNodeB派生出来;当发生切换时,从上一个NH派生出来。
- NAS信令的密钥:
- KNASint 是用于NAS信令完整性保护的密钥,是由UE和MME各自根据双方协商的完整性算保护算法计算得到的.
- KNASenc 是用于NAS信令加密的密钥,是由UE和MME各自根据双方协商的加密算法计算得到的.
- 用户数据的密钥:
- KUP enc是专门用于加密用户面数据的密钥,由KeNodeB派生出来,存在于UE和eNodeB中。
- RRC信令的密钥:
- KRRC int是用于保护RRC信令完整性的密钥,由KeNodeB派生出来,存在于UE和eNodeB中。
- KRRC enc是用于加密RRC信令的密钥,由KeNodeB派生出来,存在于UE和eNodeB中。
4 UE收到SMC消息后:
- 根据SMC消息中的Selected NAS security algorithms信元计算出KnasEnc和KnasInt密钥;
- 校验信元UE security capabilities和KSI是否合法,如果合法,则回复MME SECURITY MODE COMPLETE消息,否则返回SECURITY MODE
REJECT消息。
第二条 S1AP_DL_NAS_TRANS
应用完整性保护和加密特性时,要求UE和MME满足33.401的如下要求:
- 对于NAS信令加密,UE和MME需支持128-EEA0(NULL),128-EEA1(Snow3G)和128-EEA2(AES)。
- 对于NAS信令的完整性保护,UE和MME需支持128-EIA1(Snow3G)和128-EIA2(AES)。
- (可选)UE和MME支持128-EIA0(NULL)。对于未经认证的紧急呼叫,未要求必须支持,即使MME和eNodeB部署了128-EIA0(NULL)的配置也将失效。
无线侧的完整性保护和加密保护功能在eNodeB配置,对eNodeB上所有小区有效。
第二条 S1AP_UL_NAS_TRANS
eNodeB通过Security Mode Command通知UE启动完整性保护和加密过程,UE通过消息中的安全算法计算获取密钥。此时下行加密已开始。
1) RRC连接建立完成后,MME生成KeNodeB和NH,并向eNodeB发送UE的安全能力和KeNodeB。安全能力包含UE支持的加密算法和完整性算法。
2) eNodeB将完整性保护算法优先级列表和UE安全能力取交集,选取优先级最高的完整性算法。
3) eNodeB将加密算法优先级列表和UE安全能力取交集,选取优先级最高的加密算法。
4) eNodeB根据KeNodeB和选取的安全算法来计算出KUP enc,KRRC int和KRRC enc密钥,并为PDCP配置相应的加密参数和完整性参数。
5) eNodeB通过Security Mode Command消息向UE发送安全模式参数配置。Security Mode Command消息通过SRB1发送,由eNodeB进行完整性保护,没有加密保护。
6) eNodeB接收到UE反馈的消息.
版权声明:本文标题:MME的鉴权和加密过程 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1709966625h552004.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论