• 
    

    
    

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

      一種基于國密算法的云數(shù)據(jù)加密方案研究

      2018-07-16 01:27:34葉成蔭
      信息安全研究 2018年7期
      關(guān)鍵詞:加解密私鑰加密算法

      陳 莊 齊 鋒 葉成蔭

      (重慶理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 重慶 400054)(cz@cqut.edu.cn)

      近年來云存儲(chǔ)技術(shù)得到蓬勃發(fā)展,2016年《中國云計(jì)算白皮書》指出2015年我國云計(jì)算市場規(guī)模達(dá)到378億元,整體增速31.7%,僅在2015年國務(wù)院就出臺(tái)了3項(xiàng)與云計(jì)算相關(guān)的政策文件.目前越來越多的企業(yè)和個(gè)人將數(shù)據(jù)存放到云端,這種存儲(chǔ)方式可以有效提高數(shù)據(jù)庫的存儲(chǔ)容量、抗故障能力、響應(yīng)速度等.

      云存儲(chǔ)在不斷發(fā)展的同時(shí)安全性問題也日益突出[1],尤其是云端數(shù)據(jù)的存儲(chǔ)和隱私問題,例如雅虎在2016年9月公布用戶賬號(hào)信息遭到黑客盜取,至少5億用戶的信息被泄露;Kromtech Security信息專家近期披露,疑似來自 Patient Home Monitoring的醫(yī)療數(shù)據(jù)存儲(chǔ)記錄遭到黑客破解,近47 GB的醫(yī)療數(shù)據(jù)文件在云端被公開訪問,數(shù)據(jù)的安全存儲(chǔ)和隱私問題已經(jīng)成為云計(jì)算發(fā)展的“噩夢”.

      基于本文提出了一種全新的云數(shù)據(jù)加密方案,根據(jù)不同的數(shù)據(jù)類型采取不同的加密策略,有效地解決了云存儲(chǔ)加解密目前所面臨的技術(shù)問題.

      1 相關(guān)工作

      密碼技術(shù)是確保云數(shù)據(jù)安全的主導(dǎo)力量,可分為對稱加密和非對稱加密2種算法.對稱加密算法使用相同的加解密密鑰,具有運(yùn)算效率高、計(jì)算量小的優(yōu)點(diǎn),非常適用于云存儲(chǔ)環(huán)境下的海量數(shù)據(jù)加解密,常用的對稱加密算法有AES,DES,3DES[2-3]等.非對稱加密算法使用不同的加解密密鑰,具有高安全性的優(yōu)點(diǎn),但是算法復(fù)雜性高計(jì)算消耗時(shí)間量大,不適用大數(shù)據(jù)加解密,常用的非對稱加密算法有 RSA,ECC[4-5]等.目前國際上絕大多數(shù)的密碼技術(shù)標(biāo)準(zhǔn)都是由美國制定和開發(fā)的,為確保我國網(wǎng)絡(luò)安全和社會(huì)公眾利益,國家商用密碼管理局先后發(fā)布了一系列密碼標(biāo)準(zhǔn),例如SM2,SM3,SM4[6-8]等密碼算法,算法公開后國內(nèi)外學(xué)者對其安全性作了全面測試.除了傳統(tǒng)的加密算法以外,目前也出現(xiàn)了一些新的加密技術(shù),例如在文獻(xiàn)[9]中Huang等人提出了一種同態(tài)加密算法,該算法通過矩陣和向量的運(yùn)算來加解密數(shù)據(jù),但是其密文檢索的處理效率很低,離實(shí)際的商業(yè)應(yīng)用還有較大的差距;在文獻(xiàn)[10]中Ateniese等人提出了基于代理重加密的分布式存儲(chǔ)方案,利用半可信服務(wù)器進(jìn)行解密操作,但是無法避免惡意服務(wù)器的攻擊;在文獻(xiàn)[11]中Kamara等人提出了一種面向公有云的加密存儲(chǔ)框架,但是目前該框架還沒有具體的實(shí)施細(xì)節(jié),仍處于理論階段.

      關(guān)系型數(shù)據(jù)庫已經(jīng)無法適應(yīng)云數(shù)據(jù)的多源異構(gòu)性,為解決這一問題人們引入了非關(guān)系型數(shù)據(jù)庫,但是在查詢分析方面能力較弱.目前越來越多的云環(huán)境供應(yīng)商開始采用關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫互補(bǔ)的架構(gòu)方式,來解決在處理不同數(shù)據(jù)類型上的缺陷和不足.

      云數(shù)據(jù)的多樣化存儲(chǔ)方式,決定了單一的數(shù)據(jù)加密方式很難滿足實(shí)際的應(yīng)用需求.針對以上問題本文提出了數(shù)據(jù)分類分級(jí)的加密方案,在加密算法的選擇上均采用國產(chǎn)密碼算法.針對關(guān)系型數(shù)據(jù)庫中的結(jié)構(gòu)化數(shù)據(jù)只對敏感數(shù)據(jù)進(jìn)行加密并采用多重密鑰管理機(jī)制,即可以有效地提高加解密效率,又可以定期更換主密鑰增強(qiáng)數(shù)據(jù)的安全性;針對非結(jié)構(gòu)化數(shù)據(jù)(文檔、圖片、視頻等)采取客戶端本地加密的方式,同時(shí)采用混合加密算法解決密文共享問題.

      2 方案設(shè)計(jì)

      根據(jù)目前國內(nèi)外研究現(xiàn)狀,云平臺(tái)的設(shè)計(jì)采用關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫優(yōu)點(diǎn)互補(bǔ)的架構(gòu)方式,同時(shí)采用混合加密算法來克服單一密碼算法的缺點(diǎn)和密文共享問題,敏感明文數(shù)據(jù)的傳輸需要通過SSL加密通道,具體架構(gòu)方案如圖1所示:

      圖1 云平臺(tái)加密架構(gòu)方案

      2.1 客戶端加密系統(tǒng)

      客戶端負(fù)責(zé)文檔、圖片等非結(jié)構(gòu)化數(shù)據(jù)的加解密,用戶登錄加密系統(tǒng)后選擇文件.對于需要加密但是無需共享的文件,使用國密SM4算法加密后上傳云端,私鑰本地化存儲(chǔ).當(dāng)云數(shù)據(jù)中的敏感數(shù)據(jù)需要共享給第三方時(shí),采取如下的加密方式:

      1)客戶端

      客戶端的數(shù)據(jù)加密方案如圖2所示,詳細(xì)加密步驟如下:

      ①利用SM3算法將信息產(chǎn)生報(bào)文摘要;

      ②報(bào)文摘要用發(fā)送方SM2的私鑰進(jìn)行加密,生成數(shù)字簽名;

      ③將數(shù)字簽名和信息使用SM4的私鑰進(jìn)行加密,生成密文;

      ④使用SM2接收方的公鑰對SM4的私鑰加密生成數(shù)字信封,將密文和數(shù)字信封發(fā)送給接收方.

      2)共享端

      共享端的數(shù)據(jù)解密方案如圖3所示,詳細(xì)解密步驟如下:

      ①共享端從云端下載密文和數(shù)字信封,使用SM2的私鑰對數(shù)字信封進(jìn)行解密,生成SM4的私鑰;

      ②使用SM4的私鑰解密密文,產(chǎn)生信息和數(shù)字簽名;

      ③使用SM2發(fā)送方的公鑰對數(shù)字簽名解密,得到報(bào)文摘要;同時(shí)對原始信息使用SM3再次生成報(bào)文摘要;

      ④對比2個(gè)報(bào)文摘要,如果相同說明數(shù)字簽名有效,原始消息沒有被篡改;如果不同說明原始消息被修改或簽名不可信賴,并產(chǎn)生告警.

      2.2 數(shù)據(jù)庫加密系統(tǒng)

      關(guān)系型數(shù)據(jù)庫中的關(guān)系型數(shù)據(jù),例如登錄信息、個(gè)人信息等內(nèi)容,通過SSL安全通道進(jìn)行傳輸,數(shù)據(jù)到達(dá)服務(wù)器后先經(jīng)過加密系統(tǒng)加密,加密后的數(shù)據(jù)存入數(shù)據(jù)庫中.目前絕大多數(shù)的數(shù)據(jù)庫自帶加解密功能,但是并不支持國產(chǎn)密碼算法,同時(shí)DBA的權(quán)限過大可以獲取所有的密鑰,如果黑客獲取DBA權(quán)限那么所有的數(shù)據(jù)都將會(huì)是透明的.基于此本文設(shè)計(jì)了一種基于DBMS外層的關(guān)系型數(shù)據(jù)庫加密系統(tǒng),該加密系統(tǒng)由密鑰管理模塊、加解密引擎模塊、密鑰管理模塊構(gòu)成,具體架構(gòu)如圖4所示.密鑰管理模塊采用多級(jí)密鑰管理機(jī)制,使用國產(chǎn)密碼算法SM2的公鑰去加密表的密鑰后存儲(chǔ)于加密字典中,而SM2的私鑰存儲(chǔ)于加密系統(tǒng)中,利用表密鑰去保護(hù)數(shù)據(jù)密鑰,這種密鑰管理方式可以定期更換主密鑰而不影響以前加密的數(shù)據(jù).加解密引擎模塊主要負(fù)責(zé)數(shù)據(jù)庫的鏈接和加密算法的選擇,數(shù)據(jù)的加解密采用國產(chǎn)密碼算法SM4,在加密粒度的選擇上采用的是基于字段的加密方法,能夠?qū)δ骋涣忻舾袛?shù)據(jù)進(jìn)行加解密,這種方式避免了數(shù)據(jù)的全表加解密,有效降低了因加解密造成的時(shí)延.加密系統(tǒng)管理模塊主要用來驗(yàn)證用戶身份的合法性,只有合法用戶才能通過該模塊訪問加密字典,修改加密定義參數(shù).

      圖4 數(shù)據(jù)庫加密系統(tǒng)架構(gòu)圖

      圖2 客戶端加密方案

      圖3 共享端解密方案

      3 實(shí)驗(yàn)結(jié)果

      客戶端加密系統(tǒng)和數(shù)據(jù)庫加密系統(tǒng)使用Java語言編程實(shí)現(xiàn),選用Eclipse作為集成開發(fā)環(huán)境;數(shù)據(jù)庫使用Oracle和MongoDB,其中Oracle數(shù)據(jù)庫用來管理關(guān)系型數(shù)據(jù),MongoDB用來存放文件和文件夾信息;云端存儲(chǔ)平臺(tái)利用hadoop搭建.

      非結(jié)構(gòu)化數(shù)據(jù)采用本地加密方式,客戶端首先選擇需要加密的數(shù)據(jù),經(jīng)過加密后的文件統(tǒng)一以WanaCry為后綴名并上傳到云端,為防止云端數(shù)據(jù)被非法修改,采用SM3報(bào)文摘要算法驗(yàn)證數(shù)據(jù)的完整性.

      選取1組明文數(shù)據(jù)用于論證方案的正確性,通過對比表1和表2的相關(guān)實(shí)驗(yàn)參數(shù)發(fā)現(xiàn),共享端解密過程中得到的明文、報(bào)文摘要、SM4的私鑰都與客戶端加密時(shí)產(chǎn)生的參數(shù)完全相同.

      Oracle數(shù)據(jù)庫用來管理被加密后的關(guān)系型數(shù)據(jù),無論數(shù)據(jù)庫管理員以何種身份進(jìn)入都無法看到明文,即使數(shù)據(jù)庫遭到非法入侵也無法獲取密鑰得到明文信息,具體加密效果如圖5所示.?dāng)?shù)據(jù)庫加密系統(tǒng)的設(shè)計(jì)采用基于字段的加密方法,只對表中的敏感信息進(jìn)行加密,這種方式可以大幅度提高數(shù)據(jù)的加解密效率.實(shí)驗(yàn)過程中分別選取了1萬~4萬條的數(shù)據(jù)量,采取了全表加密和敏感信息加密(選取了其中的1列)的方式,通過對比分析發(fā)現(xiàn)基于字段的加密方式效率更高,具體實(shí)驗(yàn)對比效果如圖6所示.

      表1 客戶端加密實(shí)驗(yàn)參數(shù)

      表2 共享端解密實(shí)驗(yàn)參數(shù)

      圖5 數(shù)據(jù)庫加密效果

      圖6 加密效率對比

      4 結(jié) 語

      本文結(jié)合云數(shù)據(jù)多樣化存儲(chǔ)的特點(diǎn),在借鑒傳統(tǒng)加密方案的基礎(chǔ)上,提出了基于國密算法的云數(shù)據(jù)分類分級(jí)加密方案.該方案集終端數(shù)據(jù)安全、網(wǎng)絡(luò)傳輸安全、數(shù)據(jù)存儲(chǔ)安全技術(shù)于一體,有效地確保了云數(shù)據(jù)的完整性、保密性、可用性.

      猜你喜歡
      加解密私鑰加密算法
      比特幣的安全性到底有多高
      基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
      一種基于虛擬私鑰的OpenSSL與CSP交互方案
      PDF中隱私數(shù)據(jù)的保護(hù)方法
      電子取證中常見數(shù)據(jù)加解密理論與方法研究
      基于FPGA的LFSR異步加解密系統(tǒng)
      基于小波變換和混沌映射的圖像加密算法
      Hill加密算法的改進(jìn)
      網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)募咏饷芟到y(tǒng)研究
      軟件工程(2014年11期)2014-11-15 20:02:46
      對稱加密算法RC5的架構(gòu)設(shè)計(jì)與電路實(shí)現(xiàn)
      溧阳市| 哈尔滨市| 大石桥市| 东山县| 南华县| 大渡口区| 土默特右旗| 宜兰县| 柳河县| 汪清县| 修文县| 鄂托克前旗| 黄平县| 乌鲁木齐县| 枞阳县| 喜德县| 商南县| 石河子市| 阿拉善盟| 利津县| 永州市| 东兰县| 富平县| 于田县| 板桥市| 都江堰市| 寻乌县| 福鼎市| 铁岭县| 兴国县| 中卫市| 石阡县| 东兴市| 凤凰县| 遂川县| 巴彦县| 平泉县| 镇坪县| 全州县| 平顶山市| 华坪县|