基于对称可逆加密算法的高校网站集群的设计与实现
2016-02-06刘倍雄曾德生骆金维
刘倍雄,曾德生,骆金维
(广东创新科技职业学院,广东 东莞 523960)
基于对称可逆加密算法的高校网站集群的设计与实现
刘倍雄,曾德生,骆金维
(广东创新科技职业学院,广东 东莞 523960)
随着互联网的跨越式飞速发展,目前高校网站主要包括门户网站、各行政管理部门和教学部门的二级门户网站、专题网站和应用系统,大量网站急需一个网站集群系统来统一进行管理,实现统一的数据共享和维护。文章提出采用“服务端+多个客户端”的设计模式来管理网站群,并优化了通信数据的加密和解密过程,提高了数据的安全性。
网站集群;LAMP;可逆加密算法;序列化
1 概述
随着“互联网+”的快速发展,信息传播速度越来越快,传播的信息量也越来越多。网站作为一种互联网传媒的重要信息载体也在不断地飞速发展,网站的发展也从早期的基本信息发布发展到Web2.0社交互动时代,而且正在从基于HTML5的下一代Web3.0出发,掀起互联网新的发展浪潮。
伴随着互联网的飞速发展,高校对信息化建设也在不断地提出更高的要求,每个高校都建设了大量的门户网站和应用网站。目前高校网站主要包括学校主门户网站、各行政管理部门和教学部门建立自己的网站、各类专题网站和应用系统,这些网站在学校的招生就业、对外宣传、信息发布、业务交流等诸多方面提供了巨大的帮助。但也带来了许多问题:大量的网站形成了一个个“信息孤岛”,各个站点之间都是封闭的,需要个性化的服务器配置,不同网站的开发语言及运行平台不同,每个网站建设与维护需要单独管理,这就需要大量的人力、物力和财力来运行多个独立网站。
目前的网站内容管理系统只能解决单个站点的内容管理,而对于数据在各网站中的相互调用和统计显得力不从心,不得不进行着重复劳动。各部门的系统形成了一个个的信息孤岛,各站点之间的信息不能共享。这就迫切需要一个统一的系统来进行集中管理,统一解决数据共享、网站维护的问题。
2 相关概念介绍
2.1 网站集群
网站集群是指统一部署,统一标准,建立在统一技术构架基础之上,信息可以实现基于特定权限共享呈送的网站整体。
网站集群系统是一种多网站架构模式,支持生成独立网站、多个网站,完成各个网站横向一体化和纵向一体化网站群的构建,主站、子站、网站间的信息可共享和信息互联。
网站集群系统具有统一的数据结构,主网站与子网站、子网站之间数据结构统一,数据格式定义的统一,实现所有信息在资源这个层面上的整合;网站集群能将各站点连为一体,支持全部站点的统一管理,将现有的各部门的信息联系起来,使得同一组织内各个站点之间不再互相孤立,为各个站点提供统一的信息协同框架。网站集群是实现统一部门、统一权限、消除“信息黑洞”和“信息孤岛”的基础,形成供各部门共享的网站集群的软、硬件资源。
2.2 LAMP技术
Linux+Apache+Mysql+PHP,简称LAMP,是一组常用来搭建动态网站或者服务器的开源软件,其本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。
2.3 PHP序列化与反序列化
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。因此发送方需要把这个对象转换为字节序列才能在网络上传送,而接收方则需要把字节序列再恢复为对象。人们把将对象转换为字节序列的过程称为对象的序列化,而把字节序列恢复为对象的过程称为对象的反序列化。
PHP中的序列化和反序列化分别通过函数serialize()和unserialize()实现,典型的序列化对象为数组。
2.4 对称可逆加密算法
由开发的对称可逆加密算法(Azerbaijan Development Group,AzDG)可知,如提供正确的私有密匙,就可通过加密算法对数据进行加密和解密。私有密钥决定了加密算法的强度,因此,通常使用由大小写字母、数字和特殊符号进行混合组成32位私有密匙,只要能保证私有密匙的保密性,即可确保数据通信过程的安全。
3 方案和算法设计
3.1 总体设计
网站集群采用“服务端+客户端(分站)”的设计模式,集群系统服务端充当数据“交换机”的功能,各分站客户端的数据直接与集群系统服务端进行接驳和联络,实现集群系统服务端与各客户端(分站)的信息共享、交换和推送等。同时,各客户端(分站)之间不直接进行信息交换和共享,充分保障权限的唯一性和系统的安全性。设计示意如图1所示。
图1 总体设计示意
3.2 数据通信设计
为了数据传输的安全和高效,数据通信过程遵循以下规则:
(1)每个客户端只能对应一个服务端,但一个服务端可以对应多个客户端。由服务器端提供远程调用服务给客户端,客户端接收调用结果,同时,远程调用服务支持独立设计和配置,支持客户端灵活增加和删除。
(2)使用由大小写字母、数字和特殊符号进行混合组成32位私有密匙,密钥分别存放于服务端和客户端中。
(3)服务端和客户端使用POST方法传输数据,通信的数据采用序列化和加密算法进行加密。首先将要传输的数据使用序列化算法进行序列化,其次再将数据用AzDG可逆加密算法进行加密。
(4)客户端从服务端接收到返回数据后,首先使用与服务端约定的私有密钥进行解密,其次再使用反序列化算法,最终得到原传输的数据。
数据由服务端发送到客户端流程图如图2所示,数据由客户端发到服务端的过程与上述过程类似。
图2 数据由服务端传向客户端示意
3.3 对称可逆加密算法设计
(1)加密算法。首先使用随机数发生器产生0—32000的数字,其次,对生成的随机数使用MD5加密算法生成32位密码串。其次,通过对待传输的序列化数据与密码串进行取异或运算,再将运算结果使用私有密码进行对称可逆加密算法AzDG加密。最后,对加密的数据进行base 64_encode数据编码,以便于在网络当中传输。使用随机数的MD5参与运算,增加了数据被破解的难度,保证数据的安全性。算法流程如图3所示。
(2)解密算法。对接收到的加密数据,首先使用base64_decode对数据进行解码。其次,使用与加密算法约定的私有密钥,使用对称可逆算法AzDG解密。最后,对解密出来的数据进行取异或运算,最终得到原传输的序列化数据。算法流程如图4所示。
4 算法分析
4.1 系统运行环境
操作系统:centos 6.5;软件环境:Apache 2.4,Mysql 5.0,PHP 5.3。
4.2 算法仿真
假设等待传输的是一维数组,内容为:a r r a y('uid'=>1,'name'=>'naviget'),分别使用直接使用AzDG算法和使用本文算法进行对比,仿真数据如图5所示。
相同的传输数据,在使用不同的随机数时,得到的置乱字符串不同,因此,加密后传输时的字符串也不同。
4.3 算法分析
由加密算法可知,对传输数据进行序列化处理后,数据与随机字符串进行异或运算使数据长度增长了一倍。相同的传输数据进行不同的随机异或置乱,得到不同的数据结果和传输数据,这在一定程度上增加了数据被破解的难度,降低了私有密钥被猜中及使用暴力破解的风险。因此,数据接收方只有同时获得私有密钥及数据置乱算法,才能准确无误地解密传输数据。
5 结语
综上所述,本文的算法在增强了数据通信的安全性,降低了被恶意破解和使用暴力破解的风险,新算法使用通信数据大小增加一倍,但为了数据的安全通信,这种代价通常是值得的。
图3 待传输的序列化数据加密流程
图4 数据解密流程图
图5 数据加密与解密过程仿真
[1]陈立,李兰友. 基于LAMP的高校网站集群建设与管理研究[J].南京工程学院学报(自然科学版),2011(1):36-40. [2]孙祎. 基于ThinkPHP的网站集群设计[J].电脑知识与技术,2015(31):73-74.
[3]刘建川,甘泉,张尧. 基于虚拟化的“天地图·四川”网站集群设计与实现[J].测绘,2013(5):195-197.
Design and implementation of the university website cluster based on the symmetrical reversible encryption algorithm
Liu Beixiong, Zeng Desheng, Luo Jinwei
(Guangdong Innovative Technical College, Dongguan 523960, China)
With the Leaps and bounds of Internet, at present, the university website mainly includes portals, two level portal of, various administrative departments and teaching department, special website and application system, and a large number of websites need a web cluster system to achieve unified management, unified data sharing and maintenance. This paper adopts the“design multiple mode server + client”to manage the website group, and optimizes the communication data encryption and decryption process, improving the security of the data.
website cluster; LAMP; reversible encryption algorithm; serialization
广东创新科技职业学院2015校级科研项目;项目名称:高等职业教育一体化教学信息资源平台;项目编号:2015kyxm012。
刘倍雄(1983— ),男,广东汕头,硕士,讲师,高级工程师,高级项目经理;研究方向:网站集群,大数据应用,通信技术。