定义
空口加密(Air Interface Encryption)对基站与终端间无线传输的用户面数据和控制面信令进行加密与完整性保护,防止窃听与篡改,是安全架构在接入层的核心机制。LTE/5G采用128-EEA(加密)和128-EIA(完整性)算法,密钥由密钥管理流程从KASME/KAMF派生,实现算法可配置(NEA0/1/2、NIA0/1/2)与算法协商。
加密与完整性算法
- 128-EEA1(SNOW 3G):流密码,3GPP legacy算法
- 128-EEA2(AES-CTR):AES分组密码CTR模式,广泛部署
- 128-EEA3(ZUC):国密流密码,满足国内合规
- 128-EIA:对应完整性算法(EIA1/2/3),采用HMAC或类似MAC
密钥层次与派生
空口加密密钥(KRRCenc、KUPenc、KRRCint等)由认证过程派生的KgNB逐级派生,实现密钥隔离。密钥在切换、周期性更新时刷新,保障前向安全。NEA0/NIA0表示空加密/空完整性,仅用于测试或特殊场景。
典型应用场景
所有LTE/5G用户面和控制面数据均需空口加密与完整性保护。达希物联的物联网卡在运营商网络中自动享受空口加密,设备与基站间传输的数据已加密,防止无线窃听。
达希物联的物联网卡在运营商网络中自动享受空口加密保护,用户面数据在基站与终端间传输时已加密,防止窃听。达希物联云平台可配合密钥管理,为高安全场景提供端到端加密方案,保障物联网数据安全。
安全模式命令里算法协商停在哪一步
空口加密不是终端上电就自动写死的一种算法。附着完成双向认证之后,网络在安全模式命令里给出加密算法和完整性算法的选择,终端按自身能力应答。协商失败时,终端往往停在“已驻留、未进入加密态”:广播和寻呼还能收到,专用承载却建不起来。先看能力上报里有没有网络要求的那种算法,再看卡是否支持对应密钥派生。把这一步误判成信号弱,会去改天线,而信令其实已经明确拒绝了算法。
控制面和用户面可以选不同算法。控制面加密保护无线资源控制消息,用户面加密保护分组数据汇聚之后的业务包。只打开其中一侧时,抓空口仍能读到另一侧的内容。测试态若残留空加密标识,商用卡附着到试验小区会把用户面明文留在无线链路上,问题不在应用层口令。
计数器与承载标识怎样喂进加解密
同一把业务密钥会服务很多包,真正让每包密文不同的是计数器和承载标识,再加上方向比特。计数器随发送递增,接收端用它同步密钥流或计数器模式的块。若上下行计数器各自为政却被模组复用成一个变量,对端会解出乱码,重传也救不了,因为密钥流已经错位。切换或重建后计数器通常要重新对齐,旧的计数值不能带到新小区继续用。
承载标识把同一终端上的多条承载隔开。信令承载和数据承载即使派生自同一基站密钥,输入参数不同,密文也不会撞车。现场如果只更换数据承载、信令承载仍用旧参数,会出现“能附着、业务包全是坏帧”的组合。判断条件是:完整性还通过、解密失败,优先查计数器和承载标识,而不是先换卡。
空算法打开之后窃听面扩到哪一层
空加密和空完整性只适合实验室或明确声明的特殊接入。一旦打开,无线侧的邻居用普通接收机就能看到信令流程和用户面载荷,应用层若也没有保护,口令和测量值都以明文出现在空口。空算法不能替代传输层或应用层加密,它只是把接入层保护关掉。正常商用网下,终端不应主动要求空算法;网络侧若因兼容旧终端而允许,范围应限制在隔离的测试小区。
达希物联的物联网卡走运营商无线网时,空口算法由网络和模组协商,卡本身不保存空口业务密钥,只提供认证后的派生材料。卡能注册却抓到明文,应先核对小区是不是测试配置、模组是否锁在空算法。应用若还要防止核心网之后的链路上被查看,需要在卡所提供的接入层保护之外另做端到端加密,这两层密钥不能混用。
在不同位置抓到的明文说明的问题不同
空口加密的终点在基站,不在应用服务器。在无线侧抓到明文,说明协商落在空算法或加密没有启动;在核心网之后抓到明文,是接入层保护已经结束,后面的链路本来就不由空口算法负责。两种抓包不能得出同一个结论。判断时先标明探头放在终端与基站之间,还是放在网关与服务器之间。前者要查算法标识和安全模式是否完成;后者要查应用或传输层有没有自己的保护,与卡内密钥无关。
同一终端的信令承载和数据承载可能一个加密、一个没有。只在数据承载上看到明文时,不要认为整个安全模式失败,应核对用户面算法那一项是不是被留空。测试小区若允许空算法,商用卡误入之后会一直明文,直到重选到正常小区并重新协商。达希物联的卡不会在平台上显示当前空口算法,算法是否生效要看模组的安全模式结果。平台只能证明卡完成了认证,证明不了空口上没有人把算法谈成空的。