WiMAX数据传输加密方案设计与实现

相关专题: 无线

0 引 言

在各种通信设备和终端电子产品设计方法中,为使产品具有更强大的功能,越来越多地采用了嵌入式系统,WiMAX无线通信设备亦是如此。因此设计和开发现代网络和通信技术中的安全技术时,必须和嵌入式技术结合在一起。本文提出和实现了一种基于AES-CCM加密算法和ARM+VxWorks嵌入式系统的WiMAX无线接入设备加密技术解决方案,并给出了算法模块在设备中的应用方法。

1 算法实现原理

AES对称密码已经广泛应用于数据的保密和数据完整性认证。在具体运用时,都会选择一种具体的工作模式。目前AES算法已有多种工作模式,例如:ECB,CBC,CFB,OFB,CRT,CCM,GCM和AESKW。其中CCM(Counter with Cipher Block Chaining-Message Authentication Code)模式是一种同时提供加密和鉴别服务的全新操作模式。

1.1 CCM模式原理

使用CCM模式的基本条件包括,发送方和接收方定义相同的分组密码算法Ek()(这里为AES加密算法)、密钥K、记数器发生函数、格式化函数F()和鉴别标记长度Tlen、有效载荷长度Plen、随机值N。加密算法过程如下:

Step 1:计算格式化函数F(N,A,P),产生数据块序列B0,B1,…,Br(每块为128 b);

格式化函数F将N,A,P整合在一起,并分组为r个数据块。对数据块加密,得到MAC值T,加密计数器发生函数产生的计数块,加密所得sj和P与T异或得到密文C。解密过程则相反。

1.2 AES算法原理

AES算法加密过程由4个不同的处理阶段组成,称为:字节代换、行移位、列混淆、轮密钥加。输入数据数组state进行10轮上述处理后,得到加密密文。结构如图1所示。

2 WiMAX中CCM应用规则改进

在802.16协议中规定PDU数据包加密后结构如图2所示。

6个字节的包头和4个字节的PN不需要经过加密处理。PN(Packet Number)在协议中规定用于防止重放攻击,如当前收到的数据包的PN小于前一个数据包的PN时,当前收到的数据包将被丢弃。PN在发第一个包时值为1,以后每发一个包则加1。由于PN和包头都未经加密处理,当窃听者得到一个PDU时,将得到当前PN,并推导出以后各个数据包的PN值。因此引进CCM模式虽然能提高攻击者进行重放攻击的难度和成本,但并不能在技术上彻底防止重放攻击。这里采用对PN进行加密处理来防止由于PN值泄露而遭受可能的重放攻击。加密算法选择AES算法,密钥为802.16协议中的密钥加密密钥(KEK)。AES,KEK在系统中是用于对传输加密密钥(TEK)进行加密处理的,本身已经存在于系统中,而且被良好地设计,在控制信息交互过程中,KEK定时更新。因此采用该方法不会给系统带来额外的开销,不需要引入新的加密算法,不需要维护密钥。采用该方法PDU加密后结构如图3所示。

由于对PN进行AES加密处理,因此加密后的PN长度将为16个字节。这降低了传输数据中有效载荷DATA的百分比,不过在实际应用中DATA往往达到上千或上万个字节。因此为提高安全性和抗攻击性,牺牲如此少的传输效率是值得的。

3 AES-CCM算法实现及结果分析

算法模块基于富士通3400 wiMAx开发板ARM+VxWorks平台开发,采用通用C库函数,可以方便地移植到各种需要安全加密处理的嵌入式产品中。程序提供两个接口,AES算法接口和AES-CCM算法接口。前者可以用于对传输加密密钥TEK的加密处理,后者可以用于对传输数据的加密处理,使用者只需简单的调用函数即可。程序框图如图4所示。

 

作者:项士标,何加铭,陈加旭   来源:现代电子技术
微信扫描分享本文到朋友圈
扫码关注5G通信官方公众号,免费领取以下5G精品资料
  • 1、回复“YD5GAI”免费领取《中国移动:5G网络AI应用典型场景技术解决方案白皮书
  • 2、回复“5G6G”免费领取《5G_6G毫米波测试技术白皮书-2022_03-21
  • 3、回复“YD6G”免费领取《中国移动:6G至简无线接入网白皮书
  • 4、回复“LTBPS”免费领取《《中国联通5G终端白皮书》
  • 5、回复“ZGDX”免费领取《中国电信5GNTN技术白皮书
  • 6、回复“TXSB”免费领取《通信设备安装工程施工工艺图解
  • 7、回复“YDSL”免费领取《中国移动算力并网白皮书
  • 8、回复“5GX3”免费领取《R1623501-g605G的系统架构1
  • 本周热点本月热点

     

      最热通信招聘

      最新招聘信息

    最新技术文章

    最新论坛贴子