李 星,闫国涛
(邯郸市中心医院 信息科,河北 邯郸 056008)
随着办公自动化系统不断发展和完善,医院逐渐普及无纸化办公方式[1]。但在医院无纸化办公中,办公网络的安全性一直无法得到保障,为相关的办公数据安全带来一定的威胁。为满足医院无纸化办公中的行业与安全需求,无纸化办公网络数据安全成为一种亟待解决的问题。
黄林荃等[2]提出了一种基于二维Logistic混沌映射与脱氧核糖核酸(DNA:DeoxyriboNucleic Acid)计算的自适应图像加密方案。通过扩散和置乱两个阶段随机编码后,利用DNA异或运算得到扩散编码图像。通过生成伪随机序列解码置乱密文图像,实现图像加密。高巍等[3]提出一种基于熵编码的立体视频加密与信息隐藏算法。基于立体视觉掩蔽效应确定加密帧和隐秘信息待嵌入帧,通过等长码字替换技术实现立体视频的加密和信息隐藏。
笔者借鉴已取得的研究成果,应用混沌加密算法中的混沌序列原理,设计基于混沌序列的医院无纸化办公网络自适应加密算法。混沌序列具有高度的不可预测性和复杂性,可增强加密算法的抗攻击能力。通过应用混沌序列原理,将医院办公网络中的数据和通信进行加密,确保敏感信息在传输过程中不容易引发攻击者的注意。并对医院无纸化办公网络节点实施调度,确保应用密匙进行自适应加密时能调度到合适的网络节点,进而提高医院无纸化办公的工作效率。
通过随机数自动生成密匙,利用三维混沌系统生成混沌序列,产生置乱、分组的密匙序列。生成自动密匙时,从真随机数网站Random.org中获取7个随机数[4]。该真随机数网站通过各种接口提供多样化的随机数,将获取的随机数作为密匙,对密匙实时更新,使每次密匙均不相同,确保了密匙的安全性。获取的7个随机数为0~1范围内的小数随机数,用M1~M7表示。分别对7个随机数处理,获取加密的7个密匙。在7个密匙中,有4个整数密匙,2个用于x坐标约瑟夫置乱,2个用于y坐标约瑟夫置乱[5]。在用于x坐标约瑟夫置乱的2个密匙中,一个是参数值起始位置Ax,另一个是步长Bx; 在用于y坐标约瑟夫置乱的2个密匙中,一个是参数值起始位置Ay,另一个是步长By。有3个小数密匙,用α0、β0、χ0表示,分别为生成两种坐标约瑟夫置乱时使用的三维混沌序列中的初始值[6]。
获取4个整数密匙时的处理如下:
(1)
其中m(·)为余数算术;f(·)为指向下取整函数;a(·)为求绝对值函数;H为需要加密的总序列长度[7]。
获取3个小数密匙时的处理如下:
(2)
利用三维混沌系统生成混沌序列,产生置乱、分组的密匙序列δ、ε、φ,具体步骤如下。
1) 将α0、β0、χ0作为初始值,通过库塔-四阶龙格迭代对三维混沌系统实施r次迭代,以消除过渡效应。
2) 从第r+1次迭代开始,正式记录迭代结果。此时正式迭代次数用c表示,且c=1,用α1、β1、χ1表示正式迭代值[8]。H次迭代后,获取最终迭代结果,如下:
(3)
3) 根据迭代处理结果获得原始序列α和用于分组的δ序列。
4) 根据序列δ处理迭代获得原始序列β、χ和用于坐标约瑟夫置乱时使用的密匙ε、φ[9]。
基于服务期望设计一种节点调度算法,对医院无纸化办公网络节点实施调度,确保应用密匙加密时能调度到合适的网络节点。设计的节点调度算法由4部分组成:1) 发送任务请求,2) 服务节点排队,3) 负载收集与计算,4) 任务调度[10]。该算法的具体运行流程如下:
1) 设医院无纸化办公网络中有一组服务器,表示如下:
K={K0,K1,K2,…,Km-1},
(4)
其中Km-1为网络中第m-1个服务器。
2) 设医院无纸化办公网络集群中第j个节点Kj-1成功服务的概率分布如下:
(5)
(6)
3) 对第i个加密任务Li,在节点Kj-1上Li完成的期望值大小为Pi(Kj-1),Pi(Kj-1)对应的序列如下:
Pi=(Pi(K1),Pi(K2),…,Pi(Kj-1))。
(7)
当Li要求的服务期望是Pi时,将Li达到Pi时需要的资源大小用映射函数W表示,则Pi的资源需求如下:
Wd=(Wd1,Wd2,…,Wdj-1)。
(8)
4) 用Umax(Kj-1)表示Kj-1在当前任务队列中的总任务量,ρ(Kj-1)表示节点Kj-1服务能力的最大初始值,ω(Kj-1)表示Kj-1的真实负载能力,B(Kj-1)表示Kj-1的一维能力值。针对Li,该节点能成功处理的概率为q(Li,Kj-1)[12]。
5) 针对Li,节点Kj-1成功服务的期望值是P(Li,Kj-1),计算如下:
(9)
通过式(9)计算各网络节点的服务期望值,当出现新的加密任务,主节点将根据各网络节点计算出的服务期望值选取合适的节点处理加密任务[13]。
通过云存储与改进背包算法实现医院无纸化办公网络自适应加密处理[14]。自适应加密处理共分为3个步骤。
步骤1 数据加密。
1) 医院无纸化办公网络向云服务提供商提出数据存储请求。
2) 云服务提供商对该请求是否合法进行验证。
3) 云服务提供商验证后,使用密匙序列δ、ε、φ作为密匙,通过改进背包算法对要存储的数据加密处理。具体加密方式如下。
① 密匙分配。一个背包序列如下:
G=(G1,G2,…,Gn),
(10)
其中Gn为第n个背包。该背包序列满足:
(11)
其中hi为超递增序列;κ为序列恢复系数[15]。
随机选择一对整数(z,l),满足
(12)
其中gcd(·)为最大公约数函数[16]。对Gi进行π的置换,则
(13)
(14)
通过密匙分配系数分配密匙。
② 将密匙序列δ、ε、φ作为公开密匙,((G1,G2,…,Gn),z-1,l,π)作为私有密匙加密。假设明文为ψi,0≤ψi≤κ-1,则密文为
(15)
步骤2 医院无纸化办公网络向云服务提供商请求加密参数,参数授权中心验证无纸化办公网络的身份。通过验证后,将加密后的公匙与私匙传送给医院无纸化办公网络。
步骤3 无纸化办公网络根据加密后的公匙与私匙对访问结构树构造与处理,向中央授权机构发送处理结果。中央授权机构接收后,访问结构树中涉及的属性集合分配属性授权机构,由属性授权机构对加密过程监测,完成整个医院无纸化办公网络自适应加密过程。
在某医院无纸化办公网络中测试基于混沌序列的医院无纸化办公网络自适应加密算法的表现性能。实验医院无纸化办公网络共有3个主节点与30个网络节点。在其中选取3种传输数据进行自适应加密,如下:
数据A:文字种类数据; 数据量:15 GByte;
数据B:图像种类数据; 数据量:30 GByte;
数据C:视频种类数据; 数据量:45 GByte。
在3种加密传输数据中,从真随机数网站Random.org中获取7个随机数。3次加密中选取的随机数如下:
数据A加密中的M1、M2、M3、M4、M5、M6、M7:5、9、12、47、0.25、1.15、0.36、0.71;
数据B加密中的M1-M7:7、19、18、28、0.14、0.36、1.12、2.25;
数据C加密中的M1-M7:142、185、254、784、8.62、9.21、15.32、45.98。
在3种加密数据中,可以明显看出复杂数据的加密选取的随机数更大,与数据属性相符。利用三维混沌系统生成混沌序列,产生3种置乱、分组的密匙序列。
通过节点调度算法对医院无纸化办公网络节点实施调度,确保应用密匙加密时能调度到合适的网络节点。各网络节点的服务期望值计算结果如下:
节点1-5的服务期望值:0.25、0.58、8.52、15.62、54.21;
节点6-10的服务期望值:51.20、25.33、45.36、2.36、59.63;
节点11-15的服务期望值:41.20、36.58、0.25、0.36、45.21;
节点16-20的服务期望值:0.25、1.23、47.52、0.32、0.32;
节点21-25的服务期望值:56.96、65.24、0.4123、1.23、2.36;
节点26-30的服务期望值:48.35;0.32;2.65;0.12;59.63。
选取节点5、6、7、8、10、11、12、15、18、21、22、26、30进行3种数据的自适应加密。
2.3.1 加密密文
3种数据加密后的密文及密文与明文之间的均方误差如表1所示。表1中的密文数据表明,加密后3种数据的密文大小与数据复杂程度相符合,同时加密后密文呈现数字状态而非乱码状态,不容易引发攻击者的注意。3种数据密文与明文之间的均方误差均较大,说明加密效果较好。其中数据C密文与明文之间的均方误差最大,这是由于数据C是几种数据中最复杂的,数据量也最大,因此需要进行最大程度的加密才能确保其加密效果。
表1 3种数据加密后的密文及均方误差
2.3.2 相关性对比情况
3种数据加密前后相邻数据的相关性对比情况如图1所示。
图1 3种数据加密前后相邻数据的相关性对比情况
图1的相关性对比结果表明,数据A、数据B、数据C在加密前数据相关性均较强,加密后3种数据的数据相关性均大幅减弱,说明设计的算法破坏了数据原本的相关性,能有效抵御统计分析,证明了设计算法的加密性能。
在无纸化办公网络加密问题的研究中,笔者设计了一种基于混沌序列的医院无纸化办公网络自适应加密算法,通过混沌序列实现密匙序列的构造,实现医院无纸化办公网络数据快捷、安全地加密处理。实验结果表明,所提方法对于无纸化办公网络数据安全的保障有很大意义。