2010年8月
吉林师范大学学报(自然科学版)
№.3第3期
Journal of Jilin Normal University (Natural Science Edition )Aug.2010
收稿日期:2010207210 基金项目:宁波市自然科学基金项目(2008A610029)
第一作者简介:戴振祥(19642),男,浙江省宁波市人,现为宁波教育学院副教授.研究方向:分形几何.
基于分形几何的数据加密算法
戴振祥1,徐园芬2
(11宁波教育学院,浙江宁波315000;21浙江万里学院,浙江宁波315101)
摘 要:探讨了分形理论及其在密码学中的应用,提出了一种新的分形数据加密算法,描述了该算法的实现过
程,并分析了其安全性.
关键词:分形几何;数据加密;算法;信息安全中图分类号:TP309.7 文献标识码:A 文章编号:1674238732(2010)0320024204
0 引言
移动通信是当今世界上发展最快的领域之一,截止到2010年3月,国内的移动通信用户总数达到7.56亿.伴随着用户规模的增大,3G 商业化应用越
来越广泛,移商时代的商业活动,现正在信网委主办的移众商圈平台上实现.用户直接通过手机短信和手机互联网直接开展移动营销、移动管理,甚至用户之间的互动交流.移动终端的性能越来越强,多媒体数据也越来越多,移动终端的大容量数据处理、传输和信息安全问题已成为目前无线通信领域研究的重要问题之一.
在信息安全的核心技术中,各种先进的加密算法不断地被提出,其方向主要包括两个方面:一是提高加密算法的安全性能;二是在保证一定安全性能的前提下提高算法的实现性能和减少实现代价(速度,内存等).本文在介绍分形理论的基础上,对分形几何在密码学上的应用进行研究.
1 数据加密方法
所谓数据加密(Data Encryption )技术是指将一个信息(或称明文,plain text )经过加密钥匙(Encryp 2tion
key )及加密函数转换,变成无意义的密文(cipher text ),而接收方则将此密文经过解密函数、解密钥匙(Decryption key )还原成明文.加密技术是网络安全
技术的基石.加密算法主要分为对称和非对称算法.对称算法采用相同的密钥进行加密和解密.常用的对称加密算法有AES 、I DE A 、RC2/RC4、Skpjack 、DES
等,其最大的困难是密钥分发问题,必须当面或在公共传送系统(电话系统、邮政服务)中无人偷听偷看的情况下交换密钥.非对称算法,采用公钥进行
加密而利用私钥进行解密.公钥是可以公开的,任何人都可以获得,发信人用公钥将数据加密后再传给收信人,收信人用自己的私钥解密.但非对称加密的加密速度慢,对于大量数据的加密传输是不适
合的.非对称加密算法包括RS A 、DH 、EC 、DSS 等.
2 分形基础理论
分形理论是现代非线性科学中的一个重要的分支,是科学研究中一种重要的数学工具和手段,分形理论的数学基础是分形几何.分形几何学的基本思
想是:客观事物具有自相似的层次结构,局部与整体在形态、功能、信息、时间、空间等方面具有统
计意义上的相似性,成为自相似性.分形是描述不规则几何形态的有力工具,它是关于自然界形态的几何学.它把自然形态看作是具有无限嵌套层次的精细结构并且在不同尺度之下保持某种相似的属性.分形几何有着精细的结构,具有任意小比例下存在某种自相似细节的特点.分形理论的特点决定分形和密码学
攘组词之间具有的天然的联系和结构上的某种相似性,启示着人们把分形应用于密码学领域,但是它在数据加密方面的应用还没有被人们开发出来.2.1 一些著名的分形2.1.1 康托尔三分集
康托尔于1883年提出一种一维空间中的自相
似结构康托尔三分集F ,如图1所示.康托尔3分集F 可以进一步推广,如将线段[0,1]分为5等分、7
等分、2k +1等分,得到康托尔5分集、康托尔7分
怎么做炸薯条
·
42·
集、康托尔2k +1分集.2.1.2 谢尔宾斯基垫片和谢尔宾斯基地毯谢尔宾斯基垫片和谢尔宾斯基地毯的构造如图2、图3所示,最后所得到的图案构成一个无穷层次
的自相似结构,都是不可数集,类似可以作进一步推广.因此,这种无穷层次的自相似结构的分形的模型
是很多的,为我们选取数据加密模型提供了极大的空间.下面以正六边形生成的分形为例作进一步说明
.
图1 康托尔三分集 图2
谢尔宾斯基垫片
图3 谢尔宾斯基地毯 图4 正六边形生成的分形图
2.2 正六边形生成的分形
正六边形生成的分形的构造如下:在平面R 2上取边长为1的正六边形,记作E 0,把E 0的每一边三等分,并在正六边形的6个角处分别作边长为1/3的小正六边形,得到6个小正六边形和6个小等腰三角形,延长6个小等腰三角形的腰,可得7个小正六边形和12个小等腰三角形,去掉12个小等腰三角形,广告目标
将7个小正六边形的集合记作E 1,E 1的7个小正六边形重复上述过程,得到的集合记作E 2,无限重复上述过程,得到E 0=E 1=…=E k =….非
空集合E =∩∞k =0E k 构成一个自相似集如图4.
这一构造过程可描述为迭代函数系:令I =E 0S n (x )=
1
3
x +x n (n =1~7,x ∈I )其中x n 为构造第一步中7个小正六边形的左
下顶点.E 是由7个压缩比为1/3的压缩函数生成的自相似集且满足开集条件.因此,E 的Hausdorff 维数s 等于它的自相似维数,其维数s =ln7/ln3.显然E 构成了一个无穷层次的自相似结构,E 是不可数集.
下面给出分形构成层次的定义:
以本文用到的正六边形生成的分形模型为参
考.正六边形生成的分形模型开始状态为70个正六
边形,第一步后有71个与原始状态相似的小正六边
形,第二步后有72
个小正六边形,如此不断进行下
去,第n 步后有7n
个小正六边形三角形.我们称N
=n +1,(n =0,1,…
)为正六边形生成的分形模型的构成层次.3 分形加密算法
我们用构成层次N =2的正六边形生成的分形
模型作为加密模型,加密的结果如下所示.
明文:com puter
密钥:模型+层次+program 用ASCCII 码表示:
密钥k =000001100000001001110000011100100110111101100111011100100110000101101101
乌鸡怎么做
明文m =0110001101101111011011010111000001110101011101000110010101110010
密文:10001101011110111010010011100101001110011100100111110100011100103.1 分形加密算法过程
(1)将密钥表示成二进制形式,并从左至右分为3组,第1组由密钥的第1~8位组成,第2组由密钥
·
52·
的第9~16位组成,其余的位数划入第3组.我们定义第1组为选择数据加密所用的模型,第2组为分形的构成层次,第3组中的各位作为控制位控制子图形的旋转,000代表子图形顺时针旋转1次,001代表顺时针旋转2次等等.
(2)选择模型,确定构成层次N ,选择子图.加密密钥中第1组为00000110,代表加密模型是正六边形生成的分形模型.第2组为00000010,表示构成层次N =2.第3组为其余的位数,用于控制子图形
旋转.(3)旋转控制位数的确定.正六边形生成的分形模型需要3位,即000,001,010,011,100,101,110,111.设构成层次N =1时,模型的边数为m ,则旋转位数的选择依据为使(m -1)≤(k >0)成立时最小的k 值.(4)旋转次数的确定.设控制位数为k ,此时该控制位对应的十进制值为w ,则加密时候旋转次数c =w (m od m )+1,解密时旋转次数为c =m -1-w (m od m ).(5)明文填入和密文取出位置的选取准则.
密钥
控制图的生成过程为:将二进制密钥第3组的每3位按照从上到下从左到右的顺序放在各小正六边形中
心,生成的控制图如图
5所示.明文位置图生成过程为:将明文二进制的每1位按照从上到下从左到右的顺序放在小正六边形的6条边上.生成的图形如图5、图7所示.
将模型中子图形按照密钥控制规则旋转,得到密文位置图,如图6所示.这样一次加密过程完成.
由上可知,每次明文能够加密的二进制位数为
72,如果明文二进制位数大于一次能加密的位数,则
需要继续加密,继续加密时,密钥控制位循环使用.当剩下明文不足一次能加密的位数,使正六边形的边上数据不够,则该三角形在加密过程中不作旋转,如图8所示.
6解密中明文输入部分换成密文输入,同时模
型旋转次数按照规则4中做出转化.解密的时候000代表正六边形旋转5次,001代表4次,….因为正六边形旋转六次就还原了,即解
密过程完成.
图5 明文位置与密钥控制图 图6 密文位置与密钥控制图
图7 明文位置与密钥控制图 图8 密文位置与密钥控制图
3.2 分形加密算法的可行性分析
分形加密算法中的分形图形的形成过程是一个迭代过程,一次分形图形的生成时间对整个程序的
影响很小,生成后该图形可以保存下来.主要操作·
62·
就是明文的分组填入、子图形的旋转以及密文的输出,算法复杂度不高.这一算法容易实现,加解密速度很快.
该算法可在大数据量需要加密解密的情况下使用,如网络传输数据包的加解密,企业中数据需要保密等,成功使用过DES或3DES的地方都能适用此算法.由于加密解密得到的明文密文的数据位数相同,且在拥有密钥的前提下算法可逆,因此不能用作签名算法.
3.3 分形加密方法安全性分析
分形密码算法属于分组密码算法.分组密码算法的安全性分析主要包括差分密码分析、线性密码分析和强力攻击等.本算法以分形几何为基础,通过密钥控制图控制分形图形中子图形的明文数据旋转实现数据加密,该方法的安全性在于:
1)第1~8位选择图形,即00000000~11111111,共256种图形可以选择,本文只介绍了最简单的正六边形的模型,其它复杂模型如谢尔宾斯基2k+1分垫片(地毯)、星形等则选择范围极大,如果选错模型则无法解出.
2)第9~16位为分形模型的构成层次,构成层次稍微提高,则解出难度迅速增大.同时构成层次高能够保证数据加密后密文位置具有非线性性,能够抵抗差分密码分析和线性密码分析等攻击.
3)分形密码算法属于变长分组密码算法,分组的长度依赖于密钥.在未知密钥的情况下,无法预测分组的长度.子图形旋转的次数是根据密钥变化改变而改变,而且密钥循环使用,相同的明文可以加密成不同的密文,防止选择明文攻击.
4)未直接用到任何数学算法,因此无法利用数学公式作为破解的工具.
5)由于分形密码算法具有很好的非线形和较强的无规则性,使得该算法同样具有很好的抗强力攻击的能力,很好的保护了加密明文.数学漫步
6)只有穷举法才有机会攻击,而理论上穷举法对所有的加密方法都有效,但是由于密钥位数选择的任意性,因此只要密钥在8字节(64位)以上,穷举需要2的64次方次,在时间上不太可能攻破.
4 结束语
目前,分形理论已应用到了各个领域,人们已提出了自然分形、时间分形、空间分形、社会分形、思维分形等概念.将分形理论运用到密码学中,得出一种新的加密算法,目的就是为了改变以前在信息安全技术中单一的加密方式,力求实现信息保密中的多样性,开拓分形理论的应用领域.
参 考 文 献
[1][英]肯尼思·法尔科内著.分形几何—数学基础及其应用[M].沈阳:东北工学院出版社,1991.
[2]赵战生,杜 虹,吕述望编.信息安全保密教程[M].合肥:中国科学技术大学出版社,2006.
[3]吴文玲,冯登国.分组密码工作模式的研究现状[J].计算机学报,2006,29(1):21~36.
[4]张林华.基于混沌的密码技术应用研究[D].重庆大学博士学位论文,2006.
[5]冯登国,裴定一.密码学导引[M].北京:科学出版社,2001.
[6]金晨辉.一个基于混沌的分组密码算法的分析[J].中国工程科学.2001,3(6):75~81.
[7]易开祥,孙鑫,石教英.一种基于混沌序列的加密算法[J].计算机辅助设计与图像学学报,2000,12(9):672~676.
[8]刘文涛,孙文生.分形理论在密码算法中的应用[J].中国电子科学研究院学报,2008(6):580~585.
Data E ncryption Algorithm bad on Fractal G eometry
DAI Zhen2xiang1,XU Yuan2fen2年初工作计划范文
(1.Ningbo Institute of Education,Ningbo315010,China;2.Zhejiang W anli University,Ningbo315101,China)
Abstract:The fractal theory and its application in cryptology is discusd,and a new fractal data encryption alg orithm is propod.The paper describes the alg orithm of the im plementation process and analyzes its curity.
K ey w ords:Fractal geometry;data encryption;alg orithms;in formation curity
·
7
自我介绍怎么说2
猫可以吃玉米吗
·