劉 虎,段元梅
(湖南科技學院 信息工程學院,湖南 永州 425199)
隨著互聯網的日漸普遍以及移動通信網絡的快速升級換代,移動通信網絡開始出現了移動銀行、電子商務等新興高新技術業務,但是這些技術的背后埋藏了很多安全隱患,比如密碼的安全完備性問題、密碼存儲的安全性問題以及設置加密的安全性問題。文章主要關注連接的安全性問題,連接的安全性問題事關用戶安全以及透明性問題,是現代網絡信息傳輸的重要研究部分之一,使重要信息得以良好的保護。
數據加密即指一段明文數據通過加密算法轉換成不可讀數據(也稱“密文”),使其只能通過相應解密手段后才能獲得原來明文數據,通過數據加密,可進一步有效保證數據存儲、數據傳輸等方面的安全性[1]。通過根據加密的結果是否可以解密,加密算法可被分為兩大類:可逆加密和不可逆加密。
可逆加密即可通過密文逆向解密獲得明文數據的加密,可通過密鑰完成對明文/密文的加密/解密,可逆加密可根據密鑰類型又可以分成對稱加密和非對稱加密。
(1)對稱加密。通過單個密鑰的加密算法,且這個密鑰可同時用于數據的加密與解密,其具有加密速度快、計算量小、適用于大量數據加密等特點,不過其缺點也很明顯,安全性低,密鑰分配與管理任務會隨著數據的增加而不斷增加。常見的對稱加密有:DES,3DES,AES,PBE 等。
(2)非對稱加密。非對稱加密只有單個密鑰不同,非對稱加密需要公鑰和私鑰兩個密鑰進行加密和解密,一般應用場景:客戶端公鑰加密數據,服務器私鑰解密,服務器持有私鑰進行數據簽名,客戶端公鑰進行驗證。由于私鑰的存在,數據安全性得到了大大的增強,但是由于其加密算法復雜,非對稱加密速度慢于對稱加密。常見的非對稱算法有:RSA,DSA,ECC 等。
不同于可逆加密使用密鑰完成對對明文/密文的加密/解密,不可逆加密不存在密鑰,直接通過加密算法處理成密文,且加密后的密文無法被解密,如a+b=7,可以得知結果是7,卻無法逆向得出a 與b 的值,由于數據無法被逆向破解,其數據安全保障進一步得到提升,近年來不可逆加密的應用領域正在逐漸增大,目前已知市面上黑客破解手段只有“字典窮舉”和“彩虹表”兩種方法。
常見的非對稱算法有:MD5,SHA,HMAC 等。
高校作為一個小型社會場所,在信息的傳播方面有著多樣的手段,如:黑板報、校園廣播、班級會議、互聯網等。作為信息的接收者學生,正流行的新的生活、學習方式。本文基于安卓手機系統的廣泛應用范圍,提出一種信息傳播新方式——湘科院學生服務便利平臺。
本團隊開發了一款App,名叫掌上科院,掌上科院(湘科院學生服務便利平臺App)是一款基于安卓平臺的應用程序,以移動通信技術為基礎,以手機、平板電腦等智能終端設備為載體,實現學校教學、科研、管理等信息資源和相關資訊收集、傳輸、共享的客戶端軟件。其對教師、學生、學校管理者之間進行有效的信息溝通具有重要作用。功能模塊(可更新):校內動態、成績查詢、課程表、校內交流模塊、備忘事項及提醒、新生導航、社團班級群管理。
用于用戶賬號或數據的檢測,當檢測到異常時進行異常處理,一般與保護模塊相關聯。
(1)登錄狀態檢查。賬號異地登錄、異常登錄、異常操作等檢查。
(2)數據異常檢查。通常使用單變量異常檢測方法,該方法可以把極端值當作異常值,涉及一些機器學習的算法,經常用到OneClassSVM 向量機,屬于無監督的算法,它可以用來檢測新的樣本是否符合以前的數據分布,該算法主要有3 個參數。
第一,Kernel(核函數)和Degree(級別),這兩個變量相關,經驗來看,Kernel 默認應該為rbf,Degree 應為3。
第二,Gamma 是與rbf 相關的參數。建議是該值設置較低為好,且越低越好,通常為實例數的倒數和變量數倒數之間的最小值。它決定了模型是否應該符合某個精確的分布,區間為0 到1 的左開右閉區間,默認是0.5,但這個值并不是最優的,所以可以根據一個公式確定:nu_estimate=0.95?outliers_fraction+0.05。
第三,通常outliers_fraction 的區間在0.02~0.1。
通過這些方法來把后臺的數據異常檢測部分搭設好,防止出現惡意數據以及其他不期望的數據存在。
(3)證書檢查。證書檢查可防止一些惡意攻擊。
(1)用戶身份認證,通過一定的手段,完成對用戶身份的確認。認證方法有很多,基本可以分為:基于公鑰加密算法的認證、基于共享密鑰的認證、基于生物學特性的認證。身份認證常用的認證形式有:認證工具、靜態密碼、智能卡、短信密碼、動態密碼、生物特征識別、雙因素、云證書等[2]。
(2)登錄認證。當一般用戶登錄成功后生成認證標志,類似于網站開發中的session。數據庫設置一個狀態位,并且保持訪問狀態,一旦轉態位改變,就退出登錄。
(3)權限認證。普通用戶、特殊用戶及管理員等不同賬戶之間有著不同的權限。普通用戶只有登錄認證的權限,特殊用戶擁有查看部分后臺開放信息的權利,而管理員擁有所有權限,但是由唯一的機器碼以及標識ID 確定,也就是只有一個管理員能存在,且只能由指定機器使用。
服務器方面寫一些過濾的策略,防止服務器被侵入。客戶方面限制部分機器權限,設置一定的過濾原則,禁止敏感端口以及權限。該模塊需要一定的匯編能力編寫,因為可能涉及一些比較底層的指令操作,否則用高級語言不太容易實現某些操作,因此系統只能做到利用工具進行保護。
(1)防火墻是系統自帶的規則設置器,很好地利用系統自帶的規則調用同樣是很重要的安全手段,也是最基本的安全手段之一。設計人員可以利用防火墻做好服務端的安全防護,可以利用免費的服務器安全軟件,例如網站安全狗[3]。
(2)服務器定期自我查殺可有效防止木馬病毒的惡意破壞,可根據服務器質量、開發人員等定制查殺規則。
利用加密標準進行加密操作,使用高級語言即可,該方面的算法一般涉及哈希的算法,這些算法的好處也就是通過一定的規則生成數據,還可以把數據進行二次封裝,此處的二次封裝是指按約定添加某些特定的字符再生成數據,因此也加大了反密碼難度。由于本設計屬于低成本系統,雖然一般人不會想到用有比較強大的計算能力的機器去破解,但是本設計將設置一個合適的閾值來限制盡可能發生的破解問題。
(1)傳輸加密。通過哈希算法加密和不對稱加密相結合,組成一條比較可靠的數據傳輸通道。
(2)存儲加密。用戶密碼通過明文密碼經過md5加密后,得到一次密文后加隨機鹽再次進行md5 加密,經過第二次加密后得到的密文存儲到數據庫。當數據被竊取時,這種二次加密可有效防止“暴力窮舉”和“彩虹表”等破解方式,這樣用戶密碼的安全性能得到極大的提高。
本文設置了一個任務計劃,觸發形式有兩種,一種是以時間為函數關系,進行觸發,即定時進行觸發。還有一種即每當發生一個警告程度較高的操作的時候進行一次部分操作備份,借鑒了SQL 數據庫管理的部分理論知識,該任務計劃必須登錄方可以查看,屬于特殊用戶的權限模塊。該模塊主要用于用戶意外中斷操作之后能重新回到上下文,代碼難度較高。