• 
    

    
    

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

      基于國密的P2P 數(shù)據(jù)開放共享平臺設(shè)計(jì)與實(shí)現(xiàn)

      2023-12-18 08:58:08谷蒙蒙葉展翔
      現(xiàn)代電子技術(shù) 2023年24期
      關(guān)鍵詞:國密關(guān)鍵字哈希

      谷蒙蒙, 葉展翔

      (1.溫州職業(yè)技術(shù)學(xué)院, 浙江 溫州 325000; 2.溫州市網(wǎng)絡(luò)安全檢測與防護(hù)工程技術(shù)研究中心, 浙江 溫州 325000)

      0 引 言

      近年來,隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算等新興科技的迅猛發(fā)展,網(wǎng)絡(luò)空間已成為人們生產(chǎn)生活的新家園。根據(jù)《中國互聯(lián)網(wǎng)發(fā)展情況統(tǒng)計(jì)報(bào)告》,截至2022 年底,中國網(wǎng)民人數(shù)達(dá)到10.67 億,互聯(lián)網(wǎng)普及率[1]達(dá)到75.6%。隨著各類互聯(lián)網(wǎng)新興技術(shù)在社會生活中的廣泛應(yīng)用,人們對于各類電子設(shè)備的使用也越來越廣泛,每天都在產(chǎn)生大量的數(shù)據(jù),包括電子郵件、在線聊天記錄、錄音和影像視頻等。文件的共享和安全傳輸為互聯(lián)網(wǎng)用戶數(shù)據(jù)安全提供了基礎(chǔ)。如今的數(shù)據(jù)安全產(chǎn)業(yè)逐步成為實(shí)現(xiàn)網(wǎng)絡(luò)強(qiáng)國與數(shù)字中國的重要組成以及中國式現(xiàn)代化的基礎(chǔ)支撐,數(shù)據(jù)安全建設(shè)已由“或有”轉(zhuǎn)變?yōu)椤皠傂琛薄?/p>

      P2P(Peer to Peer)技術(shù)是數(shù)據(jù)共享的熱門技術(shù)之一。與傳統(tǒng)的C/S(Client/Server)模式相比,P2P 架構(gòu)具有非中心化、健壯性、可擴(kuò)展性、高性價(jià)比、負(fù)載均衡及隱私保護(hù)等優(yōu)勢。P2P 技術(shù)主要應(yīng)用在分布式計(jì)算、交互應(yīng)用及文件功能三大場景。在基于P2P 的數(shù)據(jù)共享應(yīng)用過程中,文件的接收者希望保證文件的完整性,管理員希望對文件內(nèi)容做一定的審記,在保證文件安全傳輸?shù)耐瑫r(shí),也要防止數(shù)據(jù)在傳輸期間可能受到的攔截攻擊[2]。

      國產(chǎn)商用密碼簡稱國密,是數(shù)據(jù)共享的“安全底座”。國密算法為人們提供了一個(gè)新的選擇,在必要的場合中替代那些國際主流算法,大規(guī)模推廣和采用國密算法將為國內(nèi)重要的網(wǎng)絡(luò)基礎(chǔ)設(shè)施提供可靠的數(shù)據(jù)安全保障。文獻(xiàn)[3-4]將國密算法與國際上的典型同類算法進(jìn)行比較發(fā)現(xiàn),國密算法在安全性和實(shí)現(xiàn)效率方面都具有明顯的優(yōu)勢。國密算法在具體應(yīng)用和推廣中還存在不足。《中華人民共和國密碼法》[5]于2020 年正式實(shí)施,從法律層面規(guī)范了國家商用密碼的應(yīng)用和管理,這也為推廣和應(yīng)用國密提供了必要的法律保障。本文使用多種國密算法,包括SM2、SM3、SM4 三種算法,設(shè)計(jì)一種混合加密方案,并應(yīng)用到數(shù)據(jù)開放共享平臺中。

      其中,SM2 是基于橢圓曲線多倍點(diǎn)運(yùn)算單向函數(shù)的公鑰密碼算法,廣泛應(yīng)用于信息系統(tǒng)身份鑒別、網(wǎng)絡(luò)通信密鑰交換、電子印章數(shù)字簽名,以及可信計(jì)算等領(lǐng)域[6-8]。密碼雜湊算法是三類基礎(chǔ)密碼算法之一,它可以將任意長度的消息壓縮成固定長度的摘要,主要用于數(shù)字簽名和數(shù)據(jù)完整性保護(hù)等[9-10]。SM4 分組密碼算法是一個(gè)選代分組密碼算法,主要用于數(shù)據(jù)加密[11-12]。

      1 總體設(shè)計(jì)

      1.1 設(shè)計(jì)原則

      數(shù)據(jù)開放共享平臺為網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)提供文件管理及共享服務(wù),需要滿足穩(wěn)定性、可擴(kuò)展性及負(fù)載均衡的P2P 應(yīng)用等一般設(shè)計(jì)原則,在此基礎(chǔ)上,結(jié)合國密算法增加安全性要求,即平臺共享數(shù)據(jù)機(jī)密性、完整性和不可否認(rèn)性。

      1) 穩(wěn)定性

      要求平臺搭建的P2P 網(wǎng)絡(luò)能夠自動(dòng)調(diào)整內(nèi)部結(jié)構(gòu),適應(yīng)網(wǎng)絡(luò)規(guī)模的變化。當(dāng)有節(jié)點(diǎn)加入、離開或失效時(shí),正在進(jìn)行的查詢或數(shù)據(jù)傳輸不會受到影響。

      2) 可擴(kuò)展性

      假設(shè)P2P 網(wǎng)絡(luò)中節(jié)點(diǎn)總數(shù)為N,可以自由地增加節(jié)點(diǎn),沒有參數(shù)限定網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)量,要求網(wǎng)絡(luò)開銷隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大,按O(logN)的復(fù)雜度增加,可以用于大型的網(wǎng)絡(luò)中。

      3) 負(fù)載均衡

      P2P 網(wǎng)絡(luò)中所有節(jié)點(diǎn)都參與數(shù)據(jù)共享全流程,并采用一致性哈希算法,保證網(wǎng)絡(luò)中所有節(jié)點(diǎn)以同等的概率分擔(dān)系統(tǒng)的負(fù)載,避免某些節(jié)點(diǎn)負(fù)載過重的情況。

      4) 機(jī)密性

      在數(shù)據(jù)傳輸前對數(shù)據(jù)進(jìn)行加密處理,若傳輸過程中被第三方截獲,要求加密數(shù)據(jù)無法被破解。每個(gè)用戶都擁有一對SM2 非對稱密鑰。由于非對稱密鑰加密大文件的開銷過大,使用SM4 對稱密鑰進(jìn)行文件加密,每一個(gè)文件傳輸進(jìn)程均隨機(jī)產(chǎn)生一次對稱密鑰。

      5) 完整性

      數(shù)據(jù)傳輸過程中,要求確保數(shù)據(jù)不被未授權(quán)地篡改,即使篡改后也能夠迅速發(fā)現(xiàn),使用SM3 算法對文件進(jìn)行摘要并驗(yàn)證。

      6) 不可否認(rèn)性

      數(shù)據(jù)傳輸完成后,對數(shù)據(jù)的發(fā)送者身份進(jìn)行認(rèn)證,同時(shí)發(fā)送者不能否認(rèn)自己發(fā)送數(shù)據(jù)的行為和數(shù)據(jù)的內(nèi)容。

      1.2 功能模塊設(shè)計(jì)

      數(shù)據(jù)開放共享平臺的功能模塊如圖1 所示,包括對等網(wǎng)絡(luò)搭建、文件數(shù)據(jù)處理及輔助功能三類。對等網(wǎng)絡(luò)搭建模塊包括對等網(wǎng)絡(luò)的創(chuàng)建及網(wǎng)絡(luò)節(jié)點(diǎn)的加入/離開。文件數(shù)據(jù)處理模塊包括共享文件的關(guān)鍵字信息發(fā)布、搜索、刪除以及文件的點(diǎn)對點(diǎn)下載傳輸。輔助功能模塊主要是文件關(guān)鍵字的自動(dòng)提取。

      圖1 數(shù)據(jù)開放共享平臺的功能模塊

      1) 對等網(wǎng)絡(luò)構(gòu)建

      用戶在使用共享服務(wù)前,可以掃描本機(jī)的IP 并指定一個(gè)默認(rèn)端口號,組成URL,用其創(chuàng)建一個(gè)新的對等網(wǎng)絡(luò),或者輸入已存在的對等網(wǎng)絡(luò)中某節(jié)點(diǎn)URL,與其進(jìn)行連接,加入其所在對等網(wǎng)絡(luò)。用戶結(jié)束與其他節(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)程后,可以選擇退出對等網(wǎng)絡(luò),退出后,用戶所有共享的信息將被刪除。

      2) 數(shù)據(jù)處理

      用戶輸入的文件關(guān)鍵字及文件路徑進(jìn)行哈希運(yùn)算后,組成<K,V>序偶對,根據(jù)特定算法存儲到某節(jié)點(diǎn)中,從而在沒有中心服務(wù)器的情況下,實(shí)現(xiàn)文件的共享。文件始終保存在用戶節(jié)點(diǎn)本地,文件共享過程中并沒有文件傳輸?shù)倪^程。

      用戶可以輸入想要搜索的關(guān)鍵字,將關(guān)鍵字進(jìn)行哈希映射,在對等網(wǎng)絡(luò)中進(jìn)行搜索,獲取文件所在節(jié)點(diǎn)標(biāo)志符及文件路徑。已經(jīng)共享文件可以由文件擁有者進(jìn)行刪除操作,將文件相應(yīng)的<K,V>序偶對從存儲它的節(jié)點(diǎn)上刪除。刪除前需要先判斷相關(guān)文件是否存在。

      節(jié)點(diǎn)A通過共享文件搜索功能,獲取文件所在的節(jié)點(diǎn)B標(biāo)志符及文件路徑,通過標(biāo)志符中的IP 和端口號建立socket 連接,結(jié)合國密算法將安全文件傳輸?shù)焦?jié)點(diǎn)A。

      3) 輔助功能——文件關(guān)鍵字提取

      輔助功能模塊只針對文字類型的文件,主要包括txt、Word 等能夠提取文字的文件。提取文件內(nèi)容中具有具體意義的名詞,在文件預(yù)處理和分詞處理的基礎(chǔ)上進(jìn)一步提煉這些名詞,作為文件共享前的輔助功能。

      1.3 網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)

      數(shù)據(jù)開放共享平臺使用Chord 協(xié)議[13]進(jìn)行P2P 組網(wǎng)。Chord 協(xié)議是一種高效、可擴(kuò)展的完全分布結(jié)構(gòu)化對等網(wǎng)[14]。Chord 網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)代表一個(gè)用戶,每個(gè)用戶都有一個(gè)唯一的m位節(jié)點(diǎn)標(biāo)識符ID,由IP 地址和端口號哈希得到。所有節(jié)點(diǎn)根據(jù)標(biāo)識符從小到大排列在一個(gè)邏輯的標(biāo)識符環(huán)(Chord 環(huán))上,每個(gè)節(jié)點(diǎn)都有一個(gè)邏輯上的前驅(qū)和后繼。

      共享文件索引由一個(gè)序偶對<K,V>組成。其中,K表示關(guān)鍵字(如文件名、作者等屬性)的哈希值,V表示實(shí)際存儲該文件的節(jié)點(diǎn)標(biāo)志符及路徑。所有這樣的序偶對構(gòu)成了一張文件索引哈希表,輸入目標(biāo)文件信息K,就能夠從中查詢到存儲該文件的目的節(jié)點(diǎn)信息。文件索引被哈希到Chord 環(huán)上,映射規(guī)則為:文件索引關(guān)鍵字K所對應(yīng)的序偶對存儲在節(jié)點(diǎn)標(biāo)識符等于K的節(jié)點(diǎn)上,若該節(jié)點(diǎn)不存在,則存儲在已存在的且緊跟在K后的節(jié)點(diǎn)上。Chord 環(huán)文件索引存儲示例如圖2 所示。

      圖2 Chord 環(huán)文件索引存儲示例

      圖2 中N代表節(jié)點(diǎn),K代表文件關(guān)鍵字。按照映射規(guī)則,K為2 的序偶對本應(yīng)存儲在節(jié)點(diǎn)N2上,但由于節(jié)點(diǎn)N2不存在,則存儲在標(biāo)志符大于2 且離節(jié)點(diǎn)N2最近的節(jié)點(diǎn)N3上。同理,關(guān)鍵字7 和9 存儲在節(jié)點(diǎn)N10上,關(guān)鍵字11 存儲在節(jié)點(diǎn)N12上。當(dāng)網(wǎng)絡(luò)拓?fù)浒l(fā)生動(dòng)態(tài)變化時(shí),上述映射規(guī)則依然要滿足。當(dāng)節(jié)點(diǎn)N8進(jìn)入Chord 環(huán)后,K為7 的序偶對要重新分配到節(jié)點(diǎn)N8上;當(dāng)節(jié)點(diǎn)N3退出時(shí),K為2 的序偶對將被存儲到節(jié)點(diǎn)N6上。

      2 平臺流程設(shè)計(jì)

      2.1 節(jié)點(diǎn)加入及退出對等網(wǎng)絡(luò)

      節(jié)點(diǎn)加入或退出對等網(wǎng)絡(luò)時(shí),需要對網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)與資源共享存儲進(jìn)行調(diào)整,具體流程如圖3 所示。

      用戶節(jié)點(diǎn)加入對等網(wǎng)絡(luò)時(shí),隨機(jī)生成一個(gè)SM2 密鑰對<P,S>,P表示公鑰,S表示私鑰,將節(jié)點(diǎn)標(biāo)識符ID 和公鑰P組成鍵值對<ID,P>,添加到自己的文件索引哈希表中,公布在對等網(wǎng)絡(luò)中。私鑰則保存在節(jié)點(diǎn)本地,為后續(xù)數(shù)據(jù)加密、用戶驗(yàn)證提供基礎(chǔ)。

      用戶節(jié)點(diǎn)退出當(dāng)前對等網(wǎng)絡(luò)時(shí),刪除其公鑰信息所對應(yīng)的鍵值對,同時(shí)將節(jié)點(diǎn)上存儲的共享信息移動(dòng)到下一節(jié)點(diǎn)上。

      2.2 文件共享發(fā)布、搜索、刪除

      文件共享發(fā)布、搜索、刪除的流程如圖4 所示。

      圖4 文件共享發(fā)布、搜索、刪除流程

      用戶節(jié)點(diǎn)共享發(fā)布文件時(shí),在本地選擇文件,將文件的關(guān)鍵字哈希值H(kw)和文件所在節(jié)點(diǎn)路徑ID+path組成鍵值,根據(jù)Chord 算法映射原則,存儲到對等網(wǎng)絡(luò)中的某一節(jié)點(diǎn)上。

      用戶節(jié)點(diǎn)搜索文件時(shí),輸入要搜索的關(guān)鍵字,通過關(guān)鍵字哈希值在對等網(wǎng)絡(luò)中搜索鍵值對<H(kw), ID+path>,獲取相應(yīng)文件的所在節(jié)點(diǎn)與路徑。

      用戶刪除已共享的文件時(shí),輸入文件關(guān)鍵字,通過關(guān)鍵字哈希值在對等網(wǎng)絡(luò)中進(jìn)行搜索,并刪除共享信息<H(kw), ID+path>。

      2.3 文件下載

      由于文件始終存放在本地,文件下載時(shí)需要文件擁有者和文件申請者之間建立TCP 連接。下載前,申請者需先通過搜索得到所需文件的節(jié)點(diǎn)與路徑。文件下載流程如圖5 所示。

      圖5 數(shù)據(jù)安全傳輸流程

      當(dāng)節(jié)點(diǎn)B想要下載節(jié)點(diǎn)A上的文件F1,發(fā)送下載文件請求時(shí),需要將文件F1路徑信息發(fā)送給節(jié)點(diǎn)A。

      節(jié)點(diǎn)A接收到請求后,隨機(jī)生成SM4 密鑰K1作為文件密鑰對源文件進(jìn)行加密處理,得到加密文件CF1,如公式(1)所示,保證文件的機(jī)密性。

      由于文件加密采用一次一密的方式,文件密鑰需要和加密文件一起安全傳輸給對方。節(jié)點(diǎn)A在對等網(wǎng)絡(luò)中以節(jié)點(diǎn)B標(biāo)識符為關(guān)鍵字進(jìn)行搜索,得到B的公鑰PB,使用PB 對K1進(jìn)行加密,得到加密密鑰CK1,如式(2)所示,實(shí)現(xiàn)文件密鑰的安全傳輸。

      為了保證文件傳輸?shù)耐暾院筒豢傻仲囆?,?jié)點(diǎn)A使用SM3 算法對文件進(jìn)行摘要,并使用自己的SM2 私鑰SA 對摘要進(jìn)行簽名,得到Sig1,公式如下:

      節(jié)點(diǎn)A將加密文件CF1、文件密鑰密文CK1以及簽名同時(shí)發(fā)送給節(jié)點(diǎn)B。節(jié)點(diǎn)B收到后,首先使用自己的SM2 私 鑰SB 對CK1進(jìn) 行 解 密,得 到 文 件 密 鑰K1,公 式如下:

      其次,使用K1將CF1進(jìn)行解密得到源文件F1,公式為:

      節(jié)點(diǎn)B使用節(jié)點(diǎn)A的標(biāo)志符在對等網(wǎng)絡(luò)中搜索節(jié)點(diǎn)A的SM2 公鑰PA,并用它對簽名Sig1 進(jìn)行驗(yàn)簽,得到文件摘要Sm3(F1),公式如下:

      最后,節(jié)點(diǎn)B對解密得到的文件進(jìn)行SM3 摘要計(jì)算,并與后得到的Sm3(F1)進(jìn)行比較,若一致,說明文件確實(shí)由節(jié)點(diǎn)A發(fā)送且在傳輸過程中沒有被篡改。

      3 結(jié) 語

      本文設(shè)計(jì)了一種基于國密算法的P2P 數(shù)據(jù)開放共享平臺,使用Java 語言進(jìn)行Windows 應(yīng)用程序開發(fā),并在多臺終端與虛擬機(jī)上進(jìn)行安裝測試。與現(xiàn)有的FTP服務(wù)器、網(wǎng)盤等文件共享方式相比,所設(shè)計(jì)平臺不需要將共享文件上傳至中心服務(wù)器,而是將文件信息以鍵值對的形式存儲在文件索引哈希表中,共享的數(shù)據(jù)信息占用空間小,且能夠擺脫對中心服務(wù)器和數(shù)據(jù)庫的依賴。所有節(jié)點(diǎn)既是服務(wù)器也是客戶端,既能共享數(shù)據(jù)也可以參與存儲數(shù)據(jù),達(dá)到負(fù)載均衡的效果,且節(jié)點(diǎn)數(shù)量不受限制,適用于大型網(wǎng)絡(luò)。由于P2P 平臺存在不可控的問題,平臺采用了一種混合SM2、SM3、SM4 算法的加密方式,在平臺文件傳輸過程中對數(shù)據(jù)安全進(jìn)行把控。使用SM4 算法保障數(shù)據(jù)的機(jī)密性,使用SM2 算法保障文件密鑰的保密性和文件發(fā)送方的不可抵賴性,使用SM3 算法保障文件的完整性。本文平臺將P2P 技術(shù)與國密算法的優(yōu)勢進(jìn)一步融合,實(shí)現(xiàn)簡單,運(yùn)維成本低,是一種可推廣的數(shù)據(jù)開放共享方式。

      猜你喜歡
      國密關(guān)鍵字哈希
      履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個(gè)關(guān)鍵字,盤點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
      國密技術(shù)在智能燃?xì)獗硐到y(tǒng)的應(yīng)用與分析
      煤氣與熱力(2021年7期)2021-08-23 01:11:14
      Hyperledger Fabric平臺的國密算法嵌入研究
      成功避開“關(guān)鍵字”
      自助終端設(shè)備國密改造方法探究
      基于國密算法的銀行移動(dòng)營銷終端安全系統(tǒng)研究
      電子測試(2018年9期)2018-06-26 06:45:40
      基于OpenCV與均值哈希算法的人臉相似識別系統(tǒng)
      基于維度分解的哈希多維快速流分類算法
      基于同態(tài)哈希函數(shù)的云數(shù)據(jù)完整性驗(yàn)證算法
      一種基于Bigram二級哈希的中文索引結(jié)構(gòu)
      双柏县| 根河市| 天镇县| 富源县| 会泽县| 宣威市| 潼南县| 抚松县| 无极县| 洛隆县| 增城市| 阿拉善盟| 绥芬河市| 罗甸县| 英德市| 赞皇县| 铁力市| 钟祥市| 宝坻区| 罗城| 横峰县| 庆元县| 陕西省| 杭州市| 祁连县| 建宁县| 饶平县| 陈巴尔虎旗| 叶城县| 庆云县| 白河县| 秦皇岛市| 吉木萨尔县| 顺义区| 聂拉木县| 翼城县| 平原县| 衡南县| 嘉义市| 荆门市| 雷州市|