计算机毕业论文,毕业论文,毕业设计 毕业论文免费检测 知网论文检测
当前位置: 骆驼论文网 > 信息安全 >

快速加密解密芯片中KASUMI算法

时间:2011-04-11 11:49来源: 骆驼毕业论文网 作者:admin
快速加密解密芯片中KASUMI算法的实现 摘 要 随着移动通信技术的飞速发展和普及,其中的安全问题正受到越来越多的关注。在第三代动通信系统中,除了传统的语音和数据业务外,还提供多媒体业务、交互式数据业务、电子商务、互联网服务等多种信息服务。因此,如

QQ交谈计算机毕业设计,毕业设计,毕业论文,计算机毕业论文

快速加密解密芯片中KASUMI算法的实现
摘  要
随着移动通信技术的飞速发展和普及,其中的安全问题正受到越来越多的关注。在第三代动通信系统中,除了传统的语音和数据业务外,还提供多媒体业务、交互式数据业务、电子商务、互联网服务等多种信息服务。因此,如何保证业务信息的安全性以及网络资源使用的安全性已成为 3G 系统中重要而迫切的问题。
在 3GPP 系统的安全结构中有两个标准算法:机密性算法 f8 和完整性算法 f9 。这两个算法都是基于 KASUMI 算法的。 KASUMI 算法在 128 位密钥的控制下,输入 64 位数据,产生 64 位输出。本论文简单介绍了KASUMI算法的原理和机构,并且介绍了用 KASUMI 算法的一种基于 FPGA的硬件实现方法,并且给出测试结果。

关键词:KASUMI算法;FPGA;3G

目   录
                       论文总页数:27页
1 引言 1
1.1 KUSAMI算法的背景介绍 1
1.2 选题意义 1
1.3 课题研究方法 1
2 算法的构成原理 2
2.1 KASUMI算法 2
2.2 KASUMI算法中的函数 3
2.2.1 第I轮的轮函数FI 3
2.2.2 函数FL 3
2.2.3 函数FO 4
2.2.4 函数FI 4
2.2.5 S-BOXES 5
2.2.6 S7 5
2.2.7 S9 6
2.2.8 子密钥的生成 8
3 算法的应用和安全性 9
4 设计说明 10
4.1 设计思路 10
4.2 S9-S7盒函数模块设计 11
4.2.1 S9-S7盒设计思想 11
4.2.2 S9-S7盒设计结构简述 11
4.2.3 S9-S7函数模块实例测试 11
4.3 FI函数模块设计说明 13
4.3.1 FI函数模块设计思想 13
4.3.2 FI函数模块设计结构简述 13
4.3.3 FI函数模块实例测试 13
4.4 FO函数模块设计说明 14
4.4.1 FO函数模块设计思想 14
4.4.2 FO函数模块设计结构简述 15
4.4.3 FO函数模块实例测试 15
4.5 FL函数模块设计说明 16
4.5.1 FL函数模块设计思想 16
4.5.2 FL函数模块设计结构简述 17
4.5.3 FL函数模块实例测试 17
4.6 密钥生成函数模块设计说明 18
4.6.1 密钥生成函数模块设计思想 18
4.6.2 密钥生成函数模块设计结构简述 19
4.6.3 密钥生成函数模块实例测试 19
4.7 KASUMI函数模块设计说明 20
4.7.1 KASUMI函数模块设计思想 20
4.7.2 KASUMI函数模块设计结构简述 21
4.7.3 KASUMI函数模块实例测试 21
4.8 KASUMI算法解密模块 22
4.8.1 KASUMI算法解密模块设计思想 22
4.8.1.1 Feistel结构介绍 22
4.8.1.2 KASUMI解密模块设计 24
总    结 25
参考文献 26
致    谢 26
声    明 27
2 算法的构成原理
2.1 KASUMI算法
KASUMI算法是一个Feistel结构的分组加密算法,密钥长度为128比特,对一个64比特的输入分组进行八轮的迭代运算,产生长度为64比特的输出。轮函数包括一个输入输出为32比特的非线性混合函数F0和一个输入输出为32比特的线性混合函数FL。函数F0由一个输入输出为16比特的非线性混合函数FI进行3轮重复运算而构成。而函数FI是有使用非线性的S-盒S7和S9构成的4轮结构。算法的具体实现框图见图1。

 

 

 

 

 

 

 

 

 

 

 

 

 

 


图1 KASUMI算法实现结构
KASUMI算法对64比特的分组应用128比特的密钥进行加密,生成64比特的输出,具体实现如下:
输入数据I被分为32比特的左右两部分L0和R0
即I= L0||R0
对整数i,1〈〈i〈〈8定义
Ri=Li-1,Li=Ri-1 fi(Li-1,RKi)
即每轮KASUMI酸法的操作:
将第i-1轮的输出的左半部Li-1作为第i轮的右半部Ri;
而第i轮的左半部又第i-1轮输出的右半部Ri-1与第i轮的轮函数fi的输出结果进行异或运算得到(RKi为第i轮的子密钥)。
经过8轮的迭代后,得到64比特的输出(L8||R8)。
2.2 KASUMI算法中的函数
2.2.1 第i轮的轮函数fi
轮函数fi对32比特的输入I,在32比特的轮密钥RKi的控制下,得到32比特的输出。而轮密钥由三个一组的子密钥(KLi,KOi,KIi)组成。轮函数自身由两个子 FL和FO构成,与之相关的子密钥分别为KLi(FL应用的密钥),KOi,KIi(FO应用的密钥)。
轮函数fi在不同的奇偶轮有不同的表达形式:
对于1,3,5,7轮:fi(I,RKi)=FO(FL(I,KLi),KOi,KIi)
对于2,4,6,8轮:fi(I,Ki)=FL(FO(I,KOi,KIi),KLi)
2.2.2 函数FL
函数FL包含一个32比特的输入数据I和一个32比特的子密钥KLi。子密钥KLi被分为16比特的左右两个子密钥,KLi,1和KLi,2
即KLi=KLi,1||KLi,2
同样输入数据也被分为两个16比特的左右两部分,即I=L||R
定义:R’=RROL(LKLi,1)  (ROL():循环左移1位)
L’=LROL (R, KLi,2)
共同构成函数FL的输出32比特(L’|| R’)。具体实现见图2。

 

 

 


图2  FL函数
输出的右半部R’由输入数据的左半部L与子密钥的左半部KLi,1进行按位与的运算,再进行循环左移一位,然后再与输入数据的右半部R进行异或(模2加)运算得到。
输出的左半部L’由输出数据的右半部R’与子密钥的右半部KLi,2进行按位或的运算,再进行循环左移一位,然后再与输入数据的左半部L进行异或(模2加)运算得到。                                  
2.2.3 函数FO
输入函数由32比特的输入数据I和两组分别为48比特的子密钥:KOi和KIi构成。32比特的输入数据同样被分为左右两部分,即I=L0||R0。48比特的子密钥被分为三组16比特的子密钥:KOi=KOi,1||KOi,2||KOi,3和KIi=KIi,1||KIi,2||KIi,3
对于整数j,1〈〈j 〈〈3
Rj=FI(Lj-1 KOi,j,KIi,j) Rj-1,Lj=Rj-1
最后得到函数FO的32比特的输出(L3||R3)。具体实现如图3所示。而函数FI的定义如下。
2.2.4 函数FI
函数FI由16比特的输入数据I和16比特的子密钥KIi,j构成。输入数据I分为两个不等长的部分,9比特的L0和7比特的R0,即I=L0||R0。
同样地密钥KIi,j也被分为7比特的KIi,j,1和9比特的KIi,j,2两部分,即KIi,j=KIi,j,1||KIi,j,2。
在函数中使用了两个S-盒,S7将7比特的输入映射为7比特的输出,S9将9比特的输入映射为9比特的输出。函数中使用了两个辅助函数ZE()和TR()。
ZE(x)表示在7比特的数据x尾部(最右边)添加2个零,将7比特转换为9比特。
TR(x)表示9比特的数据x的头部(最左边)删除两个比特数据,将9比特转换为7比特。函数FI也是Feistel结构,其中每轮的操作定义如下:
L1=R0,                 R1=S9[L0] ZE(R0),
L2=R1KIi,j,2,         R2=S7[L1] TR(R1) KIi,j,1,
L3=R2,                  R3=S9[L2] ZE(R2),
L4=S7[L3] TR (R3),    R4=R3
函数FI的输出为16比特的值(L4||R4),如图4。


参考文献
[1] 宋晶晶.关于 PLD/FPGA 的同步设计[J].电子技术,2003(1):58-59。
[2] 任敏等.CPLD和FPGA器件性能特点与应用[N].传感器技术学报,2002.6(2):165-169。
[3] 黄可望.FPGA 设计及多片 FPGA 进行 ASIC 设计验证的探讨研究[J].微型电脑应用,2004.20(12):21-23。
[4] 侯同强,刘和平.CPLD 和 FPGA 器件特点与应用[J].电子与自动化,2000(2)8-12。
[5]P.Kitsos,M.D.Galanis,O.Koufopavlou.“HIGH-SPEED HARDWARE IMPLEMENTATIONS OF THE KASUMI BLOCK CIPHER”[M],ISCAS,pp.549-552,2004。
[6] 魏利辉.FPGA设计方法[J].无线电工程,2001,31(7)。
[7] 孙富明等.基于多种 EDA 工具的 FPGA 设计[J].电子技术应用.2002, 28(1)。
[8] 夏宇闻.Verilog数字系统设计教程[M]. 北京:北京航空航天大学出版社,2006,7。
[9] Valtteri Niemi Kaisa Nyberg著.宋美娜,宋梅,周文安译. UMTS安全[M].北京:中国铁道出版社,2005。
[10] 毛光灿.3G 核心加密算法 KASUMI 算法[J].通信技术,2002 (11):92-94。

 

 

 

 

 

 

 


 

本文内容只是论文部分简介,如需了解更多详情请咨询本站客服! QQ交谈计算机毕业设计,毕业设计,工程硕士论文,计算机毕业论文
毕业论文搜集整理:毕业论文网 计算机毕业设计 计算机毕业论文 毕业设计


顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
计算机毕业设计
计算机毕业论文
论文发表