APP下载

在云环境下基于MD5加密验证技术图片上传方法研究

2018-04-02梁绍宇李拥军

现代计算机 2018年2期
关键词:架构设计门店服务器

梁绍宇,李拥军

(1.广州华商职业学院,广州 510300;2.华南理工大学,广州 510006)

0 引言

目前,随着连锁品牌经营产业链不断深入发展,门店在全国各地不断地涌现。门店自主经营的规范性、合理性越来越难管理。连锁品牌发展扩张受到了一定的制约。虽然有很多门店巡查人员去各地门店巡查,但是企业管理人员也很难了解到真实的情况。为此我们提出了一个在云环境下基于MD5加密[1]技术预上传照片,等具备网络条件后再上传的系统。系统预先通过GPS定位[2],确认需要拍照的门店。把门店的相关信息提取出来。在拍照的时候,添加为图片的水印。同时,也计算出该照片的MD5值,并预上传到云服务器。等待具备网络上传的条件时,再上传照片。如上传照片的MD5值与预上传的不符,则终止该照片非法上传。以此真实地记录了拍照的时间、地点、图片的真实性。为企业管理人员了解各门店真实情况起到了很好帮助作用。

1 云系统总体技术架构设计

云系统[3]按照“平台+应用”的架构设计思想,整个系统分为三个层:视图层、业务处理层、数据缓存层、数据处理持久层(数据缓存层、数据持久层)。系统图如图1所示。

图1 系统总体架构设计图

1.1 视图层

主要用户的操作界面,基于HBuilder+HTML5技术来实现。

1.2 业务处理层

负责各种具体业务的逻辑处理,基于Java编程语句,Restful风格的中间件提供服务。

负责所有业务的服务,包括统一用户管理、数据交换构件等公共服务。业务处理层针对规范化各类应用,通过Restful架构设计,提高应用系统建设的效率,提高系统的健壮、开放、扩展的基础架构,快速构建上层应用。

1.3 数据处理层

数据处理层分为数据缓存层层和数据持久层。

数据缓存层主要是缓存业务处理层的数据,使用Ehcache、Redis[4]等缓存技术,主要是服务于查询频率高且修改少和临时存储的数据,提高业务处理能力、降低响应时间。

数据持久层[5]主要是存储业务数据,使用目前最流行的MySQL或Oracle对数据的存储。

2 系统部署架构设计

部署在互联网上的系统,使用的Web服务器、应用服务器使用云平台进行部署,所使用的数据库服务器,统一使用数据库集群服务器[6]。

图2 系统部署架构

3 图片上传系统实施方法

图片上传设计方法是通过打开手机GPS定位系统,提出xi、yi、zi三个参数值,调用地图公共信息接口,根据地图查找定位,然后根据查找到的定位信息查询数据库中附近门店,进行拍照。提取系统中的时间与地点信息值。生成特有的图片水印信息,提取图片的MD5值,预先上传至云服务器。如网络条件具备的情况下,再上传图片,比较两者的MD5值,如果相同,则上传成功,否则上传失败,终止上传。流程图如图3所示。

图3 系统流程图

在该系统中巧妙的运用了MD5值的唯一性识别图片。检查图片是否存在修改伪造的情况。同时系统也采用了目录的数据结构算法,在大量的MD5值中,能快速地查找出来准确的数据,查询时间复杂度大大地降低。

3.1 GPS定位调用地图接口信息

地图定位SDK是为移动端应用提供的一套简单易用的定位服务接口,专注于为广大开发者提供最好的综合定位服务。通过使用定位SDK,开发者可以轻松为应用程序实现智能、精准、高效的定位功能。

3.2 搜索附近门店及生成水印

云服务器后台数据库存储着全国各地门店的相关信息。(门店名称、门店地址、店长、联系人电话等)。手机通过GPS定位,模糊查找出附近门店的定位信息,提取特征关键词模糊查询系统后台数据库,提取附近门店相关信息。同时提取手机当前系统时间。在拍照的时候形成相关信息记录在照片中。也利用照片中的这些特殊的信息生成MD5值,预上传至服务器存储。

3.3 MD 5值的比较

由于数据访问量比较大,本系统采用了一种匹配算法[7]。在系统中设计了一套计算与比较快速查询MD5匹配值遍历算法。当需要上传照片的时候,首先计算当前图片的MD5值,再进行上传至云服务器。在云服务器中以4位为一个储存单元,存储着MD5值。MD5值链表头形成单链表(目录)。在遍历过程中查找到匹配数据后,再逐位比对MD5值。如完全相同,则允许图片上传至云服务器系统中。如图4所示。

图4 数值存储与查找算法

4 运行数据分析

4.1 根据特征信息生成水印

系统根据数据库提取出特征信息,包括:门店名称、地址、巡查人电话、拍照时间等相关信息。形成图片水印。记录在图片上,防止图片修改。如图5所示。

图5 特征信息提取水印效果图

4.2 拍照提取特征信息形成MD 5

抽取系统中某图片,使用工具测试计算其MD5值。通过对特征信息计算,形成128位MD5值。通过系统上传存储在云服务器中,等待图片上传时候再计算MD5值进行校验。如图6所示。

图6 MD5值计算提取

4.3 拒绝非法照片上传

从系统后台导出最近这一周系统图片上传数据进行分析,MD5非法修改图片导致无法上传。红色为上传失败数据,蓝色为上传成功数据。如图7所示。

图7 上传数据后台运行统计分析

上传图片因各种原因拦截,期中蓝色为MD5值不符而遭到数据系统拦截。如图8所示。

数据上传总量,与拒绝比值图例,如图9所示。

图8 上传数据后台系统拦截分析 

图9 上传总量与拒绝比值

参考文献:

[1]Chao Wang,Ai-Ling Li,Yu Pang,Ying-Qing Lei,Ling Yu.Changes in Intraocular Pressure and Central Corneal Thickness During Pregnancy:a Systematic Review and Meta-Analysis[J].International Journal of Ophthalmology.Vol.10,No.10,Oct.18,2017.

[2]田英国,郝金明,陈明剑,于合理,衡培深.GPS卫星钟差及观测数据采样间隔对LEO卫星定轨精度影响[J].武汉大学学报(信息科学版).Vol.42,NO.12,Dev.2017.

[3]沈尧,秦小麟,鲍芝峰.一种云环境中数据流的高效多目标调度方法[J].软件学报,2017,28(3):579-597.

[4]刘俊龙,刘光明,张黛,喻杰.基于Redis的海量互联网小文件实时存储与索引策略研究[J].计算机研究与发展,2015,S2(52),148-154.

[5]梁弼.一种简捷的数据持久层解决方案.现代电子技术[J],Vol.39,No.14.Jul,2016.

[6]徐小龙,龚培培.面向云端融合计算的防御性数据销毁机制[J].北京理工大学学报.Vol 73 NO.3,Mar 2017

[7]邹志文,李桥,王政辉,费洪哲.基于订阅划分的多维索引并行匹配算法[J].华中科技大学学报(自然科学版),VOL.41,SUPII,Dec 2013.

猜你喜欢

架构设计门店服务器
浅析工业网络安全架构设计
基于物联网的智能楼宇顶层架构设计
门店零售与定制集成,孰重孰轻
德国最成功的洗车门店——Mr.Wash
新店商,创造新增量
从优秀到卓越门店需做好12项修炼(上)
PowerTCP Server Tool
智能无人集群任务规划系统架构设计
BlackJumboDog
大数据时代计算机网络应用架构设计