与LTE类似,RRC连接的建立涉及到SRB1的建立,网络完成RRC连接建立之前,需要先完成NG接口的建立,也就是需要收到5GC的上下文信息。因此,在RRC连接的初始阶段不会激活接入层安全性。在RRC连接初始期间,网络可以配置UE执行测量报告,但UE只能在接入层安全激活之后才发送该报告。然而,当AS安全性被激活时,UE只接受带有同步消息的重配命令。
当从5GC接收到UE上下文时,RAN使用初始AS安全激活过程激活AS安全(加密和完整性保护)。接入层安全性激活的RRC消息是完整性保护的,而加密只在完整性保护过程完成后才开始。也就是说,接入层安全性激活的响应消息是不加密的,而随后的消息(例如用于建立SRB2和DRB)同时受到完整性保护和加密。在启动了初始AS安全激活过程之后,网络可以启动SRB2和DRB的建立。在任何情况下,网络将对用于建立SRB2和DRB的RRC重配消息进行加密和完整性保护。如果初始AS安全激活或无线承载建立失败,则网络应释放RRC连接。不支持不带DRB的SRB2或不带SRB2的DRB的配置(即:必须在同一RRC重配消息中配置SRB2和至少一个DRB,并且不允许在未释放RRC连接的情况下释放所有DRB)。
RRC连接的释放通常由网络发起。释放消息可用于将UE重定向到NR频率或E-UTRA载波频率。(如:EPS Fallback)
当UE需要从RRC_INACTIVE状态转换到RRC_CONNECTED状态时,由上层发起挂起(suspend)的RRC恢复,或由RRC层执行RNA更新或通过从NG-RAN的RAN寻呼来启动。当RRC连接恢复时,网络根据存储的UE Inactive AS context和从网络接收到的任何RRC配置,根据RRC连接恢复过程配置UE。RRC连接恢复过程作为安全重新激活,并重新建立SRB和DRB。
响应于恢复RRC连接的请求,网络可以恢复挂起的RRC连接并使UE处于RRC_CONNECTED,或者拒绝恢复并将UE置为 RRC_INACTIVE,或者直接重新挂起RRC连接并将UE设置为RRC_INACTIVE,或直接释放RRC连接并将UE转为RRC_IDLE,或指示UE启动NAS级恢复(在这种情况下,网络发送RRC setup消息)。
AS安全包括RRC信令(SRB)和用户数据(DRB)的完整性保护和加密。
RRC需要处理AS安全参数配置,这些参数是空口配置的一部分,包括:完整性保护算法、加密算法,如果对DRB启用了完整性保护和加密,则有两个参数,即keySetChangeIndicator和nextHopChainingCount,在使用携带密钥更改的同步、连接重建立和连接恢复的重配置时,UE使用这些密钥来确定AS安全密钥。
完整性保护算法对于配置完整性保护的SRB1、SRB2、SRB3和DRB来说是通用的,keyToUse值相同。加密算法对于配置相同keyToUse值的SRB1、SRB2、SRB3和DRB来说是通用的。对于MR-DC,eNB中终止的DRB不启用完整性保护。完整性保护和加密都不适用于SRB0。
空口有4个不同的密钥:
l RRC信令完整性保护密钥(KRRCint);
l RRC信令加密密钥(KRRCenc)
l 用户数据完整性保护(KUPint)
l 用户数据加密(KUPenc)
所有四个AS密钥都是从KgNB密钥派生的。KgNB密钥基于KAMF密钥,由上层处理。
完整性保护和加密算法只能通过同步重配来改变。连接重建和恢复后,AS密钥(KgNB, KRRCint, KRRCenc, KUPint 和KUPenc)在同步重配中修改。
每个RB在每个方向都有一个独立的计数器。对于每个RB,COUNT被用作加密和完整性保护的输入。对于给定的安全密钥,不允许对同一COUNT值多次使用。为了限制信令开销,单个消息/分组包含一个短序列号。此外,还使用了溢出计数器机制:超帧编号(hyper frame number)。HFN需要在UE和网络之间同步。网络负责避免重复使用具有相同RB标识和相同密钥的COUNT,例如:由于传输大量数据、释放和建立新RB以及RLC-UM承载器的多个终端点更改。为了避免这种重复使用,网络可以对RB建立使用不同的RB标识,更改AS安全密钥,或者将RRC_CONNECTED到RRC_IDLE/RRC_INACTIVE,然后连接到RRC_CONNECTED 传输。
对于具有sk-counter的UE,keyToUse指示UE对特定DRB是使用主密钥(KgNB)还是次要密钥(S-KeNB 或S-KgNB)。次密钥从主密钥和sk-Counter派生。每当需要刷新次密钥时,例如,随着KgNB修改的MN改变或为了避免COUNT换行,使用安全密钥更新。当UE在NR-DC中时,即使没有使用副密钥(S-KgNB)设置DRB,网络也可以向配置有sk-Counter的SCG的UE提供以允许SRB3的配置。当使用SN端接MCG承载时,网络也可以向UE提供sk-Counter,即使没有配置SCG。