梁紹宇,李擁軍
(1.廣州華商職業學院,廣州 510300;2.華南理工大學,廣州 510006)
目前,隨著連鎖品牌經營產業鏈不斷深入發展,門店在全國各地不斷地涌現。門店自主經營的規范性、合理性越來越難管理。連鎖品牌發展擴張受到了一定的制約。雖然有很多門店巡查人員去各地門店巡查,但是企業管理人員也很難了解到真實的情況。為此我們提出了一個在云環境下基于MD5加密[1]技術預上傳照片,等具備網絡條件后再上傳的系統。系統預先通過GPS定位[2],確認需要拍照的門店。把門店的相關信息提取出來。在拍照的時候,添加為圖片的水印。同時,也計算出該照片的MD5值,并預上傳到云服務器。等待具備網絡上傳的條件時,再上傳照片。如上傳照片的MD5值與預上傳的不符,則終止該照片非法上傳。以此真實地記錄了拍照的時間、地點、圖片的真實性。為企業管理人員了解各門店真實情況起到了很好幫助作用。
云系統[3]按照“平臺+應用”的架構設計思想,整個系統分為三個層:視圖層、業務處理層、數據緩存層、數據處理持久層(數據緩存層、數據持久層)。系統圖如圖1所示。

圖1 系統總體架構設計圖
主要用戶的操作界面,基于HBuilder+HTML5技術來實現。
負責各種具體業務的邏輯處理,基于Java編程語句,Restful風格的中間件提供服務。
負責所有業務的服務,包括統一用戶管理、數據交換構件等公共服務。業務處理層針對規范化各類應用,通過Restful架構設計,提高應用系統建設的效率,提高系統的健壯、開放、擴展的基礎架構,快速構建上層應用。
數據處理層分為數據緩存層層和數據持久層。
數據緩存層主要是緩存業務處理層的數據,使用Ehcache、Redis[4]等緩存技術,主要是服務于查詢頻率高且修改少和臨時存儲的數據,提高業務處理能力、降低響應時間。
數據持久層[5]主要是存儲業務數據,使用目前最流行的MySQL或Oracle對數據的存儲。
部署在互聯網上的系統,使用的Web服務器、應用服務器使用云平臺進行部署,所使用的數據庫服務器,統一使用數據庫集群服務器[6]。

圖2 系統部署架構
圖片上傳設計方法是通過打開手機GPS定位系統,提出xi、yi、zi三個參數值,調用地圖公共信息接口,根據地圖查找定位,然后根據查找到的定位信息查詢數據庫中附近門店,進行拍照。提取系統中的時間與地點信息值。生成特有的圖片水印信息,提取圖片的MD5值,預先上傳至云服務器。如網絡條件具備的情況下,再上傳圖片,比較兩者的MD5值,如果相同,則上傳成功,否則上傳失敗,終止上傳。流程圖如圖3所示。

圖3 系統流程圖
在該系統中巧妙的運用了MD5值的唯一性識別圖片。檢查圖片是否存在修改偽造的情況。同時系統也采用了目錄的數據結構算法,在大量的MD5值中,能快速地查找出來準確的數據,查詢時間復雜度大大地降低。
地圖定位SDK是為移動端應用提供的一套簡單易用的定位服務接口,專注于為廣大開發者提供最好的綜合定位服務。通過使用定位SDK,開發者可以輕松為應用程序實現智能、精準、高效的定位功能。


云服務器后臺數據庫存儲著全國各地門店的相關信息。(門店名稱、門店地址、店長、聯系人電話等)。手機通過GPS定位,模糊查找出附近門店的定位信息,提取特征關鍵詞模糊查詢系統后臺數據庫,提取附近門店相關信息。同時提取手機當前系統時間。在拍照的時候形成相關信息記錄在照片中。也利用照片中的這些特殊的信息生成MD5值,預上傳至服務器存儲。
由于數據訪問量比較大,本系統采用了一種匹配算法[7]。在系統中設計了一套計算與比較快速查詢MD5匹配值遍歷算法。當需要上傳照片的時候,首先計算當前圖片的MD5值,再進行上傳至云服務器。在云服務器中以4位為一個儲存單元,存儲著MD5值。MD5值鏈表頭形成單鏈表(目錄)。在遍歷過程中查找到匹配數據后,再逐位比對MD5值。如完全相同,則允許圖片上傳至云服務器系統中。如圖4所示。

圖4 數值存儲與查找算法
系統根據數據庫提取出特征信息,包括:門店名稱、地址、巡查人電話、拍照時間等相關信息。形成圖片水印。記錄在圖片上,防止圖片修改。如圖5所示。

圖5 特征信息提取水印效果圖
抽取系統中某圖片,使用工具測試計算其MD5值。通過對特征信息計算,形成128位MD5值。通過系統上傳存儲在云服務器中,等待圖片上傳時候再計算MD5值進行校驗。如圖6所示。

圖6 MD5值計算提取
從系統后臺導出最近這一周系統圖片上傳數據進行分析,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.