• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      水電站監(jiān)測數(shù)據(jù)加解密算法設計與實現(xiàn)

      2021-09-24 12:03:06李張昆劉利君高浩志
      水利規(guī)劃與設計 2021年10期
      關鍵詞:加解密明文加密算法

      李張昆,劉利君,高浩志

      (中國電建集團昆明勘測設計研究院有限公司,云南 昆明 650033)

      隨著IT技術的發(fā)展,越來越多的傳統(tǒng)行業(yè)開始向信息化方向轉型。在水電行業(yè)中,水電工程立項、建設、運維等階段均不同程度地引入了來自不同廠商的各種信息化系統(tǒng),力圖通過信息化手段對水電站進行科學有效地管理運營。然而,由于流域各電站之間系統(tǒng)相對獨立,各類系統(tǒng)(例如基于以太網(wǎng)的水電站閘門自動化控制系統(tǒng)[1]等),每天產(chǎn)生的關于水電、機組運行等各類海量數(shù)據(jù)無法互通共享,不能有效支撐流域電站節(jié)能增效的各類決策。

      伴隨著大數(shù)據(jù)技術的發(fā)展,采用大數(shù)據(jù)手段對大量紛繁復雜的數(shù)據(jù)進行系統(tǒng)性挖掘、分析,并結合相應業(yè)務模型,為電站后期運營決策提供有效依據(jù)已成為必然選擇。比如梯級水電站,其調(diào)度決策系統(tǒng)中存在很多非結構化和半結構化[2]的數(shù)據(jù),其中涉及很多有關水電站調(diào)度決策相關的敏感性數(shù)據(jù)。面對這類數(shù)據(jù),在水電站各階段信息系統(tǒng)開發(fā)應用過程中,需要時刻保持敏感數(shù)據(jù)的高度隱秘性,保障系統(tǒng)的信息安全性。然而,在數(shù)據(jù)采集治理共享過程中,一旦出現(xiàn)水電敏感數(shù)據(jù)泄露、信息被惡意篡改的情況,將導致數(shù)據(jù)失去有效性而使得水電站調(diào)度決策失誤,進而造成巨大的社會、經(jīng)濟損失。因此如何確保對于敏感信息的數(shù)據(jù)隱秘性和安全性在水電站信息系統(tǒng)建設過程中顯得尤為重要。

      為了保障數(shù)據(jù)信息的保密性和安全性,需要對數(shù)據(jù)按照既定規(guī)則進行重新編碼,以隱藏數(shù)據(jù)信息,即使數(shù)據(jù)泄露,也難以準確獲取加密前的真實數(shù)據(jù)信息,從而實現(xiàn)數(shù)據(jù)安全有效的共享傳遞。

      1 總體設計

      現(xiàn)如今水電站伴隨著各類信息系統(tǒng)的建設,每天產(chǎn)生的關于水電、機組運行等監(jiān)測數(shù)據(jù),體量越來越大,數(shù)據(jù)種類越來越多,水電監(jiān)測數(shù)據(jù)時效性要求越來越高,因此在對水電站監(jiān)測數(shù)據(jù)進行加密解密操作時,需要遵循以下原則:

      (1)通用性,保證加解密系統(tǒng)能夠滿足對多種數(shù)據(jù)類型,任意數(shù)據(jù)進行有效加密、解密操作。

      (2)保密性,確保數(shù)據(jù)加密后的密文不容易被破解,切實保障數(shù)據(jù)的安全性。

      (3)準確性,對加密后的數(shù)據(jù),能夠精準有效的解密,保證數(shù)據(jù)的正確性。

      (4)快速性,能夠短時間完成數(shù)據(jù)的加密解密工作,保證數(shù)據(jù)時效性。

      為了實現(xiàn)水電站信息體統(tǒng)體系上下游通信無需持有相同密鑰也能完成加密數(shù)據(jù)傳輸識別,擬采用非均勻加密算法DES完成相關數(shù)據(jù)的加密工作。通過對某電站變形監(jiān)測傳感器監(jiān)測數(shù)據(jù)進行實踐發(fā)現(xiàn),采用單純的DES算法進行加密,產(chǎn)生的64位二進制數(shù)據(jù)密文,或多或少會出現(xiàn)亂碼以及不可見字符,這極大地阻礙了數(shù)據(jù)的保存與傳遞,極易造成數(shù)據(jù)解密后的紊亂錯位,進而將導致數(shù)據(jù)失去有效性而使得水電站調(diào)度決策失誤,造成巨大的社會、經(jīng)濟損失。為了避免此類問題的發(fā)生,需要防止加密后亂碼和不可見字符的出現(xiàn),為此本文引入Base64編解碼算法,對數(shù)據(jù)明文進行預處理,以杜絕亂碼和不可見字符的出現(xiàn)。通過Base64編解碼算法與DES加解密算法交叉融合,完成水電數(shù)據(jù)中數(shù)據(jù)的加密解密工作,充分保障數(shù)據(jù)的安全性、完整性以及可靠性。該加密解密系統(tǒng)的工作流程如圖1所示。

      圖1 加密解密流程

      在數(shù)據(jù)明文加密過程中,首先通過Base64編碼算法對待加密數(shù)據(jù)明文進行第一次Base64編碼操作,將明文中特殊字符轉為常規(guī)字符,然后對明文一次編碼結果進行DES加密操作,得到中間密文,再在中間密文的基礎上,對中間密文進行第二次Base64編碼操作,得到最終密文。通過首尾兩次Base64編碼操作,徹底排除DES加密結果中的亂碼或不可見字符,極大地提高了數(shù)據(jù)的規(guī)范性和完整性。

      對于密文的解密過程,即加密過程的逆向操作。首先采用Base64解碼算法對密文進行第一次Base64解碼操作,得到一次解碼密文,然后對該一次解碼密文進行DES解密操作,得到中間明文,再在中間明文的基礎上,對中間明文進行第二次Base64解碼操作,即可得到原始的數(shù)據(jù)明文。解密流程通過與加密流程完全對稱的逆向操作,保障了解密后明文的正確性。

      本文采用Base64編解碼算法與DES加解密算法交叉融合,本文利用對稱加密算法速度快、加密強度高的特點,結合Base64編解碼算法的應用廣泛性,完全可以覆蓋水電行業(yè)各種類型數(shù)據(jù)的加解密工作,并有效保證數(shù)據(jù)的安全性、準確性、快速性。

      2 算法簡介

      2.1 Base64編解碼算法原理

      Base64編碼是基于64個字符A-Z,a-z,0-9,+,/的編碼方式[3],是一種任意二進制到文本字符串的編碼方法。Base64編解碼原理如圖2所示,編碼是將明文按3個字節(jié)為一組,把3個字節(jié)的數(shù)據(jù)放入一個24位的緩沖區(qū)中,然后從緩沖區(qū)最高位開始連續(xù)截取6位二進制數(shù)據(jù)[4],每6位作為一組;然后分別在每組6位二進制數(shù)的最高兩位添加兩個0構成一個新的字節(jié),最終形成4個新字節(jié);最后把4個新字節(jié)分別作為索引,查詢Base64編碼表,找到對應字符作為編碼后的密文。對于明文不足3字節(jié)的,以字節(jié)0補位,編碼后使用“=”作為編碼密文。Base64解碼則是將密文按4個字節(jié)為一組,對照Base64編碼表找到每個字節(jié)對應字符的索引值,分別取每個索引值的低6位依次放入一個24位的緩沖區(qū);然后從緩沖區(qū)的最高位開始取8位二進制作為一組構成一個新的字節(jié),直至24位二進制全部取完,最終得到3個字節(jié),即對應明文。

      圖2 Base64編解碼原理

      2.2 DES加解密算法原理

      DES加密算法是一種數(shù)據(jù)分組的加密算法,它將數(shù)據(jù)明文二進制按照64位為一組分成不同的數(shù)據(jù)塊,然后使用Feistel結構,對數(shù)據(jù)塊進行了初始置換、密鑰置換、擴展置換、S盒替代、P置換以及逆置換等一系列操作,經(jīng)過多次迭代后得到最終的加密密文[5]。其中DES加解密所需的密鑰生成流程如圖3所示,原始64位密鑰通過PC- 1變換得到56位密鑰,將其高28位作為C[0],低28位作為D[0],并循環(huán)左移得到C[1],D[1],然后對新組成的56位二進制數(shù)據(jù)進行PC- 2變換即可得到48位子密鑰K[1],以此類推,得到16個48位子密鑰。

      圖3 密鑰生成流程

      其中,對于每個64位二進制數(shù)據(jù)塊的加密過程詳細步驟如圖4所示[6],首先對64位明文進行初始IP置換,將置換得到的64位二進制的左邊32位作為L[0],右邊32位作為R[0],以此作為輸入,按照如下算法進行16輪迭代變換:

      Li=Ri-1

      Ri=Li-1⊕f(Ri-1,Ki)

      其中,f(Ri-1,Ki)=P(S(E(Ri-1)⊕Ki)),1≤i≤16。

      圖4 DES加密流程

      f函數(shù)的詳細流程如圖5所示。E為擴展變換,將32位Ri-1映射為48位數(shù)據(jù),將這48位數(shù)據(jù)與對應48位子密鑰進行異或操作,得到的結果按6位一組分為8組,對每一組數(shù)據(jù)進行S盒替換,得到8組4位二進制,對新生成的32位數(shù)據(jù)進行P置換,將結果與Li-1進行異或得到Ri。

      圖5 f變換

      如此迭代,得到R16L16,將該64位二進制數(shù)據(jù)進行逆置換IP- 1操作,得到64位二進制明文數(shù)據(jù)塊對應的加密密文。

      3 算法實現(xiàn)與應用

      3.1 算法實現(xiàn)

      結合Base64編解碼算法和DES加解密算法的特點以及場景應用的相關約束性,該混合加密算法采用Base64-DES-Base64交叉融合模式,加密前期,鑒于DES加解密算法輸入是64位二進制,合計8字節(jié),而Base64編解碼算法將3字節(jié)編碼為4字節(jié),故對明文按照6字節(jié)一組進行分組(不足6字節(jié),以“

      保德县| 太原市| 赤峰市| 河间市| 永平县| 深水埗区| 海宁市| 金塔县| 连平县| 吉林省| 吴旗县| 会泽县| 锡林浩特市| 永川市| 长丰县| 蒲城县| 龙门县| 叙永县| 泊头市| 天全县| 万全县| 资溪县| 泽库县| 运城市| 合肥市| 泾川县| 肥西县| 阆中市| 喀什市| 定陶县| 双鸭山市| 麟游县| 吴旗县| 潞城市| 抚宁县| 扎赉特旗| 望江县| 肥城市| 宁河县| 库尔勒市| 皋兰县|