李林,左天才,杜澤新,謝志奇
(貴州烏江水電開發有限責任公司,貴州貴陽 550002)
為預防水電廠運營故障或異常,設置在線監測裝置,實時保障電力設備的安全健康運行[1]。大數據安全一直被廣泛關注[2],因此,設計安全存儲系統具有重要現實意義。
谷保平[3]和余海波等[4]的研究成果均對數據安全存儲起到一定作用,但忽略了存儲節點選擇的重要性導致安全性有限。
文中結合前人研究經驗,以水電廠在線監測數據為研究對象,研究了一種基于LSM 樹的數據安全存儲系統,增強數據安全性和提高存儲效率。
在線監測裝置實時采集水電廠數據后,自動發送至處理控制終端,完成數據存儲。為保證數據安全,設計一種水電廠在線監測數據安全存儲系統[5]。系統總體分為四部分:硬件接口層、數據傳輸層、數據存儲層以及安全功能模塊層。系統框架如圖1 所示。
圖1 安全存儲系統框架
1)硬件接口層:與水電廠在線監測裝置和數據傳輸鏈路相連接,水電廠在線監測裝置采集數據之后,轉發給傳輸鏈路[6]。
2)數據傳輸層:與存儲節點相連,借助安全傳輸算法或協議,安全傳輸數據到存儲節點上[7]。
3)數據存儲層:包含多個存儲節點,存放數據。
4)安全功能模塊層:包含安全存儲的算法或程序,為實現數據安全存儲提供功能性服務[8]。
LSM 樹是基于磁盤的樹狀數據存儲結構,分為內存層和磁盤層[9]。前者指微處理器中的內部存儲器RAM,當RAM 存儲量達到限值,數據轉移到外部磁盤,完成數據存儲。此模型包括磁盤組件和RAM內存組件C0-Ci,C0 存于RAM,C1-Ci存于磁盤,數據從C0 轉存到C1-Ci[10]。具體過程如下:
步驟1:采集水電廠在線監測數據,經過鏈路傳輸寫入C0;
步驟2:持續寫入水電廠在線監測數據;
步驟3:判斷C0 寫入的數據量是否達到設定的閾值,若達到則下一步,否則回到步驟2;
步驟4:將C0 水電廠在線監測數據異步滾動歸并至C1-Ci。過程如下:
1)選取C1,將C1 最左下角的葉節點中數據保存到緩存區;
2)C0 與C1 升序合并;
3)將合并后的數據存儲到新的磁盤,生成新的存儲節點[11]。
基于LSM 樹的數據存儲模型將數據分批寫入磁盤,能緩解內部存儲壓力和提高數據存儲效率,但不能達安全防護作用[12]。為提高數據存儲的安全性,設計三個數據防護安全防護模塊。
1)入侵檢測模塊
水電廠在線監測數據傳輸路徑安全性較為薄弱,在傳輸鏈路設置入侵檢測模型,檢測非法攻擊,及時干預,保證數據傳輸安全[13]。其實現的關鍵是在線監測數據特征的選取以及異常識別。特征選取公式如下:
式中,p代表特征重要性;xi代表在線監測數據第i個特征的信息熵;n代表特征數量。
異常識別用分類決策函數做入侵檢測[14]。函數表達式如下:
式中,y代表決策值,當存在入侵風險時,y≥1,其他情況y<1;wi代表第i個特征的輸出權值;f代表激勵函數;ai代表第i個特征的輸入權值;b代表偏置項。
2)安全訪問模塊
安全訪問模塊是控制用戶對存儲磁盤無權、越權的訪問,防止數據泄露,保證數據安全[15]。具體過程如下:
步驟1:用戶發出訪問申請;
步驟2:用戶身份驗證。通過則進行下一步;否則,拒絕訪問;
步驟3:計算用戶信任度。收集用戶的行為證據并標準化處理,記為g1,g2,…,gN,N代表用戶行為證據的數量。信任度計算公式如下:
式中,Hkj代表第k個用戶截至第j次請求時的信任度;qkj代表用戶行為證據與對應權重的乘積;tj代表第j次請求的服務時間;Rj代表時間衰減函數,取值0~1。
步驟4:根據信任度為用戶分配服務等級。服務等級決策函數如下:
式中,L(Hkj)代表服務等級決策函數;L=l1,l2,l3,…,ls代表服務等級空間;s為服務等級數量。
步驟5:根據服務等級授予用戶權限。
步驟6:實時監控用戶行為,實時反饋信任狀態。
步驟7:根據反饋調整用戶訪問權限。
3)數據加密模塊
若前兩個安全服務模塊不能保證數據安全,還需設計數據加密模塊。對數據本身進行加密,達到不可篡改和不可破解數據的目的[16-18]。數據加密過程如下:
步驟1:將用戶的輸入參數B輸入到密鑰生成算法δ,得到密鑰,記為Key;
步驟2:利用混沌系統對數據加密。理論公式如下:
式中,a代表混沌參數;f(C)代表加密后的水電廠在線監測數據;f代表混沌函數。
步驟3:加密之后得到密文并保存到密文空間。其描述如下:
其中,U代表密文空間。
步驟4:將密文保存到明文磁盤空間。
步驟5:合法用戶能利用密鑰Key 解開密文,恢復水電廠在線監測數據明文。
經上述研究,完成基于LSM 樹的數據安全存儲模型設計。
水電廠在線監測數據樣本來自30 個不同監測裝置,具體如表1 所示。
表1 水電廠在線監測數據樣本
針對表1 中數據樣本,設置4 個存儲磁盤,容量以及存儲速率如圖2 所示。
圖2 存儲磁盤的容量以及存儲速率
3.3.1 系統存儲性能
將30 個水電廠在線監測數據樣本寫入4 個存儲磁盤,統計每個磁盤的寫入性能及磁盤存儲空間利用率,結果如圖3、圖4 所示。
圖3 磁盤的寫入性能
圖4 磁盤存儲空間利用率
由圖3、圖4 可知,4 個磁盤的寫入數據量始終維持100 kB 以上,磁盤存儲空間利用率均達到90%以上,說明系統存儲性能較為優越。
3.3.2 系統安全性測試
系統安全性測試包括入侵分辨性能測試和密文敏感性測試兩部分。
1)入侵分辨性能測試
以NSL-KDD 數據集為對象,測試系統的入侵分辨性能,結果如圖5 所示。
圖5 入侵防御測試結果
由圖5 可知,合法數據和非法數據的靈敏度系數均大于1.0,表示系統的抵御性能較好,該系統能很好地分辨出非法攻擊,保證數據安全。
2)密文敏感度測試
30 個水電廠在線監測數據樣本加密后的敏感度測試結果如表2 所示。
表2 密文敏感度測試
由表2 可知,所有樣本的敏感度均小于10%,密文破解風險較低,水電廠在線監測數據加密后,數據安全性較高,實現了安全存儲。
水電廠在線監測數據對水電廠維修工作有重要參考作用,為保證數據安全,文中設計了基于LSM 樹的水電廠在線監測數據安全存儲系統,實現了數據高性能存儲和數據高安全性,經測試,在存儲、安全兩個方面的性能,均達到研究目標。