AES加密算法在医院财务数据实时上传系统中的应用

2021-03-17 08:13谷丽霞谷丽萍
微型电脑应用 2021年2期
关键词:加密算法财务数据功耗

谷丽霞, 谷丽萍

(上海市第六人民医院, 上海 201303)

0 引言

医院信息化建设特别是医院财务管理是国家信息化建设中的重点之一。随着卫生事业的发展,财务数据结构及处理日益复杂[1]。对于医院财务数据而言不仅要求准确无误地保留相关历史数据,还要保证数据实时上传的安全可靠,并且能够在第一时间采集各种数据信息进行综合分析和决策[2]。计算机所具有的数字化技术和交互式的处理能力,使其能对庞大、复杂的数据进行综合处理,从而为医院财务管理提供决策依据[3]。

以往医院财务数据实时上传系统中,多数未应用加密算法,另外一小部分应用的是基于混合加密算法,混合加密算法是一种在处理数据时经常用到的加密算法,不少学者对其进行了研究。比如杨宏宇等[4]针对混合加密算法构造方法固定存在的问题,提出了一种基于 RSA和 Hill的多密码体制混合加密算法模型,从而提高了加密效率;此外董清卿等[5]提出了一种基于混合加密算法的IPMC控制器以改善传统VPX架构体系中由于IPMC在信息保密方面存在的不足。此外还有很多专家对此进行了研究,在此不再展开叙述。

通过以往经验可发现,在未应用加密算法的系统中由于数据量庞大,并且存在多种异常数据,加重了系统的运行负担,而应用混合加密算法的系统由于增加了数据处理任务,不仅没有减轻系统运行的负担,还进一步加重数据处理任务,导致系统资源占用比过大,功耗较高,数据上传吞吐量受限,严重影响系统使用寿命。针对这种情况,本文采用AES加密算法设计应用AES加密算法的医院财务数据实时上传系统,解决以往使用系统中存在的问题。

1 医院财务数据实时上传系统硬件设计

1.1 优化系统架构

在硬件设计上,利用FPGA专用集成电路芯片实现加密算法,将AES加密算法中的复杂乘法等数学运算通过查表操作和组合逻辑电路实现[6]。

FPGA设计质量的重要标准是面积和速度,面积是指占用FPGA的逻辑单元的数量,速度是指系统稳定工作时所能使用的最高时钟频率[7]。在FPGA设计时,可根据系统实际要求,利用VHDL语言描写系统的功能及行为,将设计构想输入给EDA工具中[8]。在选择FPGA芯片时,考虑到FPGA器件主要由可编程I/O单元、嵌入式RAM块、逻辑单元和底层嵌入功能单元等单元构成,因此在设计中选取Altera公司生产的EP2C70F896CN。该芯片与同等工艺的FPGA相比,性能更高且功耗降低一半,具有较高的性价比。EP2C70F896CN芯片属于Cyclone系列,该系列的FPGA性能相关参数比较,如表1所示。

表1 FPGA性能参数表

从表1各个参数可知,EP2C70F896CN芯片是医院财务数据实时上传系统的理想选择。在开发过程中考虑到系统的实际要求,因此使不同的应用平台对应不同的系统架构,从而对系统框架进行优化设计,实现AES加密算法高传输速率的目标。

在设计中,通过在FPGA中嵌入微控制处理单元Nios II来实现对整个系统的控制,将微控制处理单元中定制的32位软核连接到Avalon总线上,将其他如SDRAM、PIO等外部设备一起集成在芯片上,优化系统框架,得到一个安全可靠并且灵活配置的系统。优化后的系统框架图,如图1所示。

图1 优化后的系统框架图

图1显示,在FPGA中包含了预处理单元,主要负责挑选需要被处理的数据分组,在软核的控制下,连接AES组件,实现对数据分组的加密解密过程。

1.2 设计自定义AES IP Core

由于在加密过程中存在多种变换,因此设计自定义AES IP Core时需要考虑AES加密算法的实际加密过程。依据其中的轮换步骤确定AES IP Core的自定义设计方案。将AES IP Core作为顶层模块,根据加密算法过程中的各种变换及密钥扩展等划分出不同的子模块。在各种代换中,有限状态机模块和多路复用模块作为轮变换控制模块,而字节代换模块采用FPGA内部存储资源存储S盒查找表的配置数据。根据以上信息设计的IP Core模块结构,如图2所示。

图2 IP Core设计模块结构图

在各个子模块设计中最重要的部分是有限状态机的设计,AES加密算法中每一轮的加解密操作均由其控制。设计的IP Core模块在开始加密时,首先进行初始化操作,每一轮轮变换需要的密钥通过密钥扩展模块产生,产生的密钥与处理后的数据一起被传输到有机状态机中,完成加密解密过程。以上过程中的状态描述,如图3所示。

图3 AES IP Core加解密状态机

图3显示,状态机先等待初始化后的密钥和数据,如果传输至状态机的密钥有效,并且传输的数据稳定可靠无异常,则开始第一轮轮变换,状态机的状态为轮循环状态,等进行到最后一轮时状态切换为开始状态,指示操作完成。AES IP Core中的所有模块都由顶层模块控制,各个模块经过综合后的AES IP Core网表的顶层模块,如图4所示。

图4 AES IP Core顶层模块

以上内容均是围绕AES加密算法设计系统硬件的各个部分,在此设计的基础上,设计系统的软件部分。

2 医院财务数据实时上传系统软件设计

2.1 数据库加密设计

数据库加密是保证数据安全和完整的有效手段之一,加密算法在保证数据库有效抵御各种安全威胁中发挥着重要作用。依据密码学理论,加密就是对特定数据进行重新编码,隐藏真实数据,使非法用户不能获得真实内容。

将AES加密算法应用于数据库安全中,可保证数据安全。AES加密算法中的输入、输出和密钥被划分为字节矩阵或字节数组。将AES加密算法基本单元的二维字节数组叫作状态矩阵K,矩阵一共4行,每行有Ma个字节,字节的行下标为i,列下标为j,则状态矩阵K中的每一个字节为kij。在加密开始时,将输入矩阵{in0,in1,…,in15}传送到状态矩阵中,输入数组按照公式1传递到状态矩阵中,加密运算过程在状态矩阵中完成,加密完成后得到的数据被传出输出矩阵{out0,out1,…,out15}中,状态矩阵按式(2)传递到输出字节数组中,如式(1)、式(2)。

k[i,j]=in[i+4j] 0≤i<4,0≤j<4Ma

(1)

out[i+4j]=k[i,j] 0≤i<4,0≤j<4Ma

(2)

在状态矩阵中存在4种不同的变换形式,分别是以字节为目标的字节替换;以状态矩阵各行为目标的移位变换;以状态矩阵各列为目标的列混合变换;以状态矩阵和子密钥为目标的数域相加。AES加密算法中存在一个初始密钥,以上过程保证数据每一轮变换不同,且每一轮的轮加密所需密钥都由初始密钥产生。将128位密钥矩阵的4列表示为e(0)、e(1)、e(2)、e(3),按照下面的公式产生后面40个新列,如式(3)、式(4)。

艺术教育之所以被重视又很好的实施,我们在实践中也渐渐体会到艺术教育形式的生动性,我们要围绕艺术教育学的目标,教育者实现艺术教育学的效果,让学生去理解美,培养学生的艺术理念,作为教育者不仅仅是专业技能的提高,教育能力方法和指导也要同步提升,同时我们也深刻的明白不仅要有完备的专业技能水平,更要有更丰富的学科知识,才能更好的教孩子们进行学习;在此同时,艺术教育学引领我们丰富了上课的内容,为学生提供艺术创作活动;既能丰富学生的动手合作能力,又能让学生深刻体会到艺术存在于生活之中,在学习艺术知识的领域下更加理解教育的力量。

e(x)=e(x-4)XORe(x-1)x-4≠0

(3)

e(x)=e(x-4)XORH[e(x-1)]x-4=0

(4)

式中,H[e(x-1)]是e(x-1)的一种扩展转化形式,通过字节循环移位和替换,计算出每轮子密钥的常量,完成转换。以上过程是密钥扩展过程,目的是得到每一轮的密钥。在已知密钥的情况下,可利用密钥解密数据,获得安全数据。

2.2 数据库交互的实现

数据实时上传系统的数据库选用oracle数据库,使用原厂提供的Pro*C接口,采用PLSQL编写所有SQL,数据的实时上传主要通过Pro*C接口实现。

在Pro*C接口中引入运行时连接字,一个运行时连接字包含与数据库服务器的连接和当前连接上使用的游标等。在应用程序中调用Pro*C接口主要通过互相独立的运行时连接字的方式完成多线程的开发。

终端上传的医院财务数据经过归类处理后按照类别发送至数据缓冲池。在同一数据缓冲池类里的运行时连接字需要保证内容一致,主要在SQL编写时使用变量绑定。在多线程运行时使用独立的运行时连接字,建立单个数据缓冲池对数据库的访问连接。由于运行时连接字里的内容相同,数据在传输过程中不需要反复操作游标,数据上传和存储也可以达到较高的效率。

对线程量进行连接最大值的保护性设置就是建立数据池与数据库之间的专用交互通道,设置默认每个数据池与数据库之间建立最大数据库,避免数据库压力过大。线程定义完成后,激活所有线程,分配内存,与数据库建立关联,待数据开始上传后,数据经过分类处理后写入数据库中,完成数据的上传。存储过程的编写兼用宿主变量和游标,利用游标处理行数限制,开发出SQL运行所需的资源区,减少大开发量对数据库资源的消耗。

医院财务数据实时上传系统正常运行时,通信协议是保证数据传输可靠的关键问题。网络通信多数基于TCP/IP协议组合,在网络传输过程中可能会产生数据丢失情况,对于这种问题,可在TCP协议中增加一个定时器,限定连接传输时间,开始时间为传输方和接收方成功连接时刻,如果到了设定的时间,接受方发出的信息依然没有传送至传输方,则重新建立连接传送数据,在重传数据时建立新的通信通道。因此,在TCP协议下可以在数据上传失败后进行补救,保证数据的成功上传。至此,医院财务数据实时上传系统设计完成。

3 医院财务数据实时上传系统性能测试

3.1 测试准备

医院财务数据实时上传系统性能测试需要在无线网络环境下进行,测试在WI-FI下,未应用加密算法与应用混合算法、应用AES加密算法的医院财务数据实时上传系统的实际性能。

表2 测试环境参数配置

在准备好的测试环境下,分别测试三个不同系统在数据实时上传过程中获得资源占用、系统功耗和数据吞吐量情况,根据测试结果分析3个系统的实际性能。

3.2 WI-FI功能测试

要完成在WI-FI网络下的系统测试,关键在于测试系统是否能成功连接WI-FI。测试步骤如下:烧写zlmage进入系统,打开WI-FI,自动获取WI-FI并连接到网络。利用USB线连接计算机与设备,打开计算机中的命令指示符,将目录切换到adb调试工具所在目录,执行“logcat”查看运行信息。如果WI-FI连接成功,则在命令指示符窗口显示出“New network state is CONNECTED”信息,此时网络连接成功。如图5所示。

图5 cmd输出信息

网络连接成功后,测试未应用加密算法、应用混合加密算法和应用AES加密算法的医院财务数据实时上传系统。

3.3 资源占用测试

在医院财务数据实时上传系统中,数据需要从数据发送器中发出,从测试端的数据接收器接收数据,将数据上传至系统中,在此过程中,使用命令指示符cmd获得资源占用测试结果。数据接收到后,上传数据,不同系统的资源占用测试结果,如图6所示。

a 未应用加密算法的系统测试结果

b 应用混合加密算法的系统测试结果

c 应用AES加密算法的系统测试结果

观察图6结果,图6显示的是在数据实时上传时硬件资源的分配结果。图6(a)中显示逻辑元素总数占用比为61%,引脚占用比为54%,存储总占用比为33%;图6(b)中显示逻辑元素总数占用比为91%,引脚占用比为83%,存储总占用比为61%;图(c)中显示逻辑元素总数占用比为63%,引脚占用比为56%,存储总占用比为34%。通过上述数据可知,应用AES加密算法的系统资源占用情况与未应用加密算法的系统资源占用情况相近,而应用混合加密算法的系统资源占用比远远超过另外两组测试结果,说明应用了AES加密算法的医院财务数据实时上传系统中加密算法执行占用资源较少。

3.4 系统功耗测试

低功耗是系统设计中必须考虑的因素,使用功耗分析工具,估算不同系统在正常运行过程中功耗情况。系统功耗主要包括动态功耗、静态功耗和IO引脚功耗。其中静态功耗为待机状态下的功耗,动态功耗指的是系统驱动状态下的功耗,IO引脚功耗指的是来自外部开关和器件输出引脚连接的相关硬件产生的功耗。使用功耗分析软件PowerPlay Power Analyzer Tool估算各系统功耗,如表3所示。

表3 系统功耗测试结果

根据表3数据计算各系统的功耗总和,分别为0.953 65 W、0.977 86 W和0.370 16 W,未应用加密算法的系统对于数据的处理和分析需要消耗更多的动态功耗,因此其总功耗较高;与未应用加密算法的系统相比应用混合加密算法的系统的动态功耗减轻,但是系统待机状态的功耗增加,系统总功耗没有减轻;与前两者相比,应用AES加密算法的系统各个功耗均减少,总功耗大幅度下降。三者相比,应用AES加密算法的系统功耗最少。

3.5 数据吞吐量测试

在医院财务数据上传系统工作中,为了稳定工作,建议主时钟周期在10 ns以上,假设系统中主时钟频率为100 MHz,则完成128 bit的数据上传需要8个时钟周期才能完成,由此得出数据实时上传速度可以达到1.6 Gbit/s。但是实际上传过程中受到器件、噪声等多种因素的影响,系统不能保证在更高时钟下稳定运行。在上述条件下测试各系统的数据吞吐量,如图7所示。

图7中系统1表示未应用加密算法的系统,系统2表示应用混合加密算法的系统,系统3表示应用AES加密算法的系统。从图7中可以看出系统3的吞吐量远高于其他两个系统,并且系统1和系统2的吞吐量与1.6 Gbit/s相差甚远。结合资源占用比和系统功耗测试结果可知,应用AES加密算法的医院财务数据实时上传系统在正常运行过程中资源占用少、功耗低且吞吐量高,说明系统应用加密算法并没有给系统带来较重的负担,且延长了系统的使用寿命。

图7 不同系统的数据吞吐量测试结果

4 结束语

数据加密技术是一种保证数据安全的可靠手段,对于医院财务数据实时上传而言,应用该技术能够满足系统对数据上传系统安全性的需求。针对系统的安全需求,从实际出发,设计系统的硬件和软件部分,在FPGA硬件基础上实现数据库加密,保证数据上传安全。通过系统测试验证了应用AES加密算法的系统性能的优越性,但是在研究中,系统距离实际使用还有一些差距,需要经过不断测试反复验证,但是其表现的良好安全性能够满足系统的安全需求,为以后的深层次研究工作奠定基础。

猜你喜欢
加密算法财务数据功耗
基于任务映射的暗硅芯片功耗预算方法
基于整数矩阵乘法的图像加密算法
基于混沌系统和DNA编码的量子图像加密算法
2018上市公司中报主要财务数据(8)
2017上市公司年报主要财务数据(6)
2017年上市公司年报主要财务数据(1)
2018上市公司中报主要财务数据(3)
混沌参数调制下RSA数据加密算法研究
揭开GPU功耗的面纱
数字电路功耗的分析及优化