亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于糾錯碼的數(shù)據(jù)分片傳輸方案

        2021-09-15 11:48:10陳宜棟
        計算機應用與軟件 2021年9期
        關(guān)鍵詞:哈希魯棒性密鑰

        劉 冰 馬 壯 陳宜棟

        (北京電子科技學院密碼科學與技術(shù)系 北京 100070)

        0 引 言

        林海峰等[2]提出了一種無線傳感器網(wǎng)絡(luò)的數(shù)據(jù)包編碼加密的算法,分別利用非線性隨機異或操作的網(wǎng)絡(luò)編碼方式對無線傳感器網(wǎng)絡(luò)中傳遞的數(shù)據(jù)包進行加密,明顯降低無線傳感器網(wǎng)絡(luò)的能量消耗,提高無線網(wǎng)絡(luò)的生命周期。魏煜等[3]為了減少數(shù)據(jù)傳輸量并更為精確地由源端傳感器向匯聚節(jié)點傳輸數(shù)據(jù),抑制丟包對數(shù)據(jù)精簡的影響,提出LRPH算法來抑制丟包帶來的影響,并且及時監(jiān)測傳感器是否故障,同時提出LRSH算法來優(yōu)化LRPH,減少冗余信息。

        Wei等[4]提出了一種在分級無線網(wǎng)絡(luò)中(與分簇結(jié)構(gòu)無實質(zhì)性的區(qū)別)使用可更新哈希鏈的高效安全數(shù)據(jù)匯聚方案。該方案基于端到端的加密機制,包括可更新哈希鏈的生成方法和數(shù)據(jù)認證方法。通過可更新的哈希鏈生成并用于數(shù)據(jù)驗證和密鑰更新;在數(shù)據(jù)認證方面,分別對簇內(nèi)、簇間、簇頭與基站之間進行認證。采用實際設(shè)置的無線傳感器網(wǎng)絡(luò)進行實驗,得出結(jié)果后分析其在數(shù)據(jù)機密性、完整性、可認證性上較其他方案的優(yōu)勢。

        由于以切片的方式進行數(shù)據(jù)傳輸增加了數(shù)據(jù)包的數(shù)量和沖突的概率,使得切片在傳輸過程中,尤其是在無線傳感器網(wǎng)絡(luò)、物聯(lián)網(wǎng)等無中心且信道質(zhì)量較差的網(wǎng)絡(luò)中,發(fā)生丟失、損壞的概率增大,從而使得合法用戶(基站)無法正常接收、恢復出完整數(shù)據(jù),進而影響數(shù)據(jù)傳輸?shù)男Ч?。同樣,在通信過程中,當部分信息位出現(xiàn)問題時,糾錯碼通過其自身的糾錯能力便可將錯誤碼糾正過來,實現(xiàn)信息的完整通信。在實現(xiàn)部分數(shù)據(jù)恢復完整數(shù)據(jù)方面已有不少相關(guān)成熟的技術(shù),如秘密共享[5]等。在保證數(shù)據(jù)傳輸隱私性的基礎(chǔ)上,本文利用糾錯碼技術(shù)解決網(wǎng)絡(luò)中數(shù)據(jù)傳輸過程中出現(xiàn)部分數(shù)據(jù)丟失、損壞造成傳輸匯聚效率較低的問題。同時,針對不同的應用場景采取不同的譯碼方式:當因碰撞導致丟包或有附加認證手段時,此時能夠判斷單切片正確與否,可使用接收的正確切片恢復出完整數(shù)據(jù);當由于傳輸錯誤或主動攻擊造成無法判斷數(shù)據(jù)包的正確性時,可直接調(diào)用譯碼函數(shù)恢復出完整數(shù)據(jù)。

        1 基礎(chǔ)介紹

        1.1 RS碼

        Reed-Solomon 碼(RS碼)是BCH 碼(循環(huán)糾錯碼)的一個重要子類,是一種極大最小距離可分碼(MDS 碼),具有較強的糾錯能力,特別是在較短和中等碼長下,其性能幾乎接近于理論值,同時其構(gòu)造簡便,編譯碼容易,且具有相當嚴格的代數(shù)結(jié)構(gòu),故而RS碼在編碼理論方面起著巨大作用[6]。

        RS碼的定義為:設(shè)q≥3,碼長為q-1,設(shè)計距離為δ的q元BCH碼,稱為q元Reed-Solomon碼。當q=2m(m>1),其碼元符號取自于有限域GF(2m)的RS碼最常用。RS碼的重要性質(zhì)為:真正的最小距離與設(shè)計距離總是相等的[7]。

        設(shè)計一個能糾t個符號錯誤的RS碼需要的參數(shù)如表1所示。

        表1 RS碼構(gòu)建所需參數(shù)表

        對于糾t個錯誤符號的RS碼生成多項式為:

        (1)

        式中:a是GF(2m)上的本原元。顯而易見,g(x)的根為a,a2,a3,…,a2t。由g(x)生成的(n,n-2t)循環(huán)碼,它由所有能被g(x)除盡、系數(shù)是GF(2m)上的元素且次數(shù)不大于n-1的多項式組成。RS碼編碼方式與一般循環(huán)碼編碼方式完全相同。用信息碼多項式m(x)=mk-1xk-1+mk-2xk-2+mk-3xk-3+…+m0上升xn-k位后加上監(jiān)督多項式r(x)就是RS碼,監(jiān)督多項式r(x)是由信息碼多項式上升xn-k位后除以生成多項式g(x)得到的。故若設(shè)輸入信息碼為m(x),編碼后的碼組為c(x),則有:

        c(x)=xn-km(x)+xn-km(x) modg(x)

        (2)

        1.2 哈希鏈

        哈希鏈(又稱為散列鏈)的思想最初由美國數(shù)學家Lamport提出[8],用于一次性口令機制。哈希鏈是指密碼學中重復使用同一哈希函數(shù)對該函數(shù)生成的哈希值作哈希運算,最終會產(chǎn)生出一系列的哈希值。在網(wǎng)絡(luò)安全方面,可以將單個密鑰或密碼通過哈希鏈生成多個不同的一次性密鑰或密碼。用公式表示為:

        hn=hn-1(hn-2(hn-3…(h(x))))

        (3)

        哈希鏈應用廣泛,尤其是在密碼保護和數(shù)據(jù)認證方面頗受青睞。從理論上講,一個提供身份驗證的存儲器在密碼存儲傳輸方面,改直接存儲純文本密碼為存儲哈希字符串更能防止密碼在存儲傳輸過程中被攻破。然而,具有有限長度的哈希鏈大大限制哈希鏈各方面的應用,于是有研究者采取了一些方法來解決這一問題,如重新初始化哈希鏈、無限哈希鏈等,但這些方法是低效且不平滑的。故Zhang等[9]提出一種自更新哈希鏈(SUHC)機制。這是一種全新的哈希鏈,它自身能進行重新初始化和更新,其更新過程是平滑的、安全的、高效的,且不需要任何外加的協(xié)議或獨立的重新初始化過程。該機制可以無限期地產(chǎn)生無限長度的哈希鏈。哈希鏈的生成如圖1所示。

        圖1 哈希鏈生成圖

        采用自更新哈希鏈(SUHC)機制生成密鑰的具體過程:1) 節(jié)點隨機選擇鏈的秘密種子,其值為s,然后通過迭代地應用散列函數(shù)h導出所有的哈希值,其鏈尾值為hi(s),同時隨機選擇另一秘密種子s′,構(gòu)造另一哈希鏈,其鏈尾值為hi(s′),安全存儲在節(jié)點中;2) 分別用hi(s),hi-1(s),hi-2(s),…,h(s)作為加解密的密鑰;3) 當以秘密種子s為初始值生成的哈希鏈消耗完時,節(jié)點自動用hi(s′)替換hi(s),用s′替換s″,同時產(chǎn)生下一條哈希鏈包括s″和hi(s″)。這樣執(zhí)行下去就可以實現(xiàn)哈希鏈的無限使用。

        2 基于糾錯碼技術(shù)的數(shù)據(jù)切片

        2.1 基本思想

        本文針對網(wǎng)絡(luò)數(shù)據(jù)傳輸過程中的部分數(shù)據(jù)丟失、損壞的情況或存在主動攻擊者進行數(shù)據(jù)篡改時,采用糾錯碼技術(shù)來實現(xiàn)數(shù)據(jù)穩(wěn)定性傳輸。在數(shù)據(jù)傳輸過程中,主要采用二次切分重組技術(shù)與RS碼編譯碼技術(shù)的有機結(jié)合,同時采用雙重加密方式。雙重加密是使用可更新哈希鏈生成的密鑰通過簡單的置換加密來打亂切片原有的順序,進而實現(xiàn)第一層加密操作;接著使用輕量級的加密算法對整個切片(包括編號和切片數(shù)據(jù))進行第二層加密操作。通過二次切分重組技術(shù)和以可更新哈希鏈為主的雙重加密來實現(xiàn)數(shù)據(jù)的隱私保護,增加數(shù)據(jù)的安全性;利用RS碼編譯碼技術(shù)對數(shù)據(jù)進行編譯可以提升整個網(wǎng)絡(luò)的魯棒性,增強了數(shù)據(jù)的可靠性,擴大了合法用戶恢復數(shù)據(jù)的能力。

        2.2 算法步驟

        算法示意圖如圖2所示。

        圖2 算法示意圖

        2.2.1數(shù)據(jù)拆分

        將普通節(jié)點采集的信息數(shù)據(jù)按k×q×m塊排列,其中:k為后續(xù)采用RS碼信息位長度;q代表切片長度(q是變量,根據(jù)應用需要確定);m為RS碼元的二進制長度。將數(shù)據(jù)排布成k×q的矩陣形式,矩陣元素為GF(2m)上的元素。

        2.2.2RS編碼

        對q行采用RS碼進行編碼,得到(n,k)RS碼。即每塊數(shù)據(jù)拆分塊的信息碼長為n,實際信息段為k,則監(jiān)督位為r=n-k。由于RS碼為MDS碼,其最小碼距為dmin=n-k+1。由于每個原始數(shù)據(jù)大小的不同,故每個原始數(shù)據(jù)被拆分后的拆分塊大小也不同,也就是說,n、k、r的值均為變量。針對不同大小的拆分塊,將采用不同的RS碼進行針對性的編碼。經(jīng)過本輪操作后,原矩陣變?yōu)閚×q的規(guī)模。

        2.2.3分塊切片

        在編碼操作的基礎(chǔ)上,對矩陣進行縱向切片,并對每一切片標注相應的序號(H1,H2,…,Hn)。編號的長度為log2n,為方便起見,將其取為m,相當于給數(shù)據(jù)矩陣增加一行序號行。編號的目的是為了在數(shù)據(jù)恢復階段,更準確地保證數(shù)據(jù)拆分塊按順序重組,從而保證譯碼率及數(shù)據(jù)傳輸?shù)陌踩?。因為只有當匯聚節(jié)點按順序?qū)η衅瑪?shù)據(jù)進行排列后才能進一步譯碼恢復完整數(shù)據(jù),即便有任何的順序差錯也無法恢復完整數(shù)據(jù)。

        2.2.4加 密

        本文對切片數(shù)據(jù)的加密分層次進行:通過對切片的順序打亂來實現(xiàn),使用哈希鏈生成的每一哈希值(隨機序列)作為置換密鑰來實現(xiàn)每組切片數(shù)據(jù)編號的置換加密。

        具體操作為:1) 普通節(jié)點和匯聚節(jié)點通過秘密種子s,應用自更新哈希鏈方式分別生成加密密鑰h(s),h2(s),…,hi(s)。2) 進行加密,即直接依次使用每個哈希值hi(s),hi-1(s),…,h(s)分別對每組切片數(shù)據(jù)編號(H1,H2,…,Hn)進行置換,打亂每組完整切片數(shù)據(jù)的正確順序。當i=n時,普通節(jié)點和匯聚節(jié)點再次通過隨機選擇另一秘密種子s′,構(gòu)造另一哈希鏈,如此往復。3) 以切片為單位,采用輕量級的加密算法對每個切片數(shù)據(jù)進行加密。

        2.2.5數(shù)據(jù)恢復

        當匯聚節(jié)點接收到來自普通節(jié)點的加密數(shù)據(jù)后,操作如下。(1) 利用輕量級的解密算法對每個切片數(shù)據(jù)進行解密。(2) 將解密的切片數(shù)據(jù)的編號進行置換解密,使其恢復出正確的順序,并按其編號進行重新組合并橫向排布。(3) 進行譯碼操作,恢復出原始數(shù)據(jù)的拆分塊{N11,N12,…,N1q},根據(jù)應用需求采用不同的譯碼方法:當因沖突造成丟包或附加認證技術(shù)能夠確認接收包正確性時,可通過k個正確片一一對應恢復出完整數(shù)據(jù);如果存在主動攻擊無法判斷單片正確性的情況,可直接調(diào)用譯碼函數(shù)恢復出完整數(shù)據(jù)。(4) 對所有拆分塊進行數(shù)據(jù)匯聚,并將匯聚結(jié)果傳輸至基站。

        3 算法分析與實現(xiàn)

        3.1 安全性

        安全性是無線網(wǎng)絡(luò)安全數(shù)據(jù)匯聚算法首要考慮的性能,主要從抗被動攻擊和抗主動攻擊兩個方面來說明。

        3.1.1抗被動攻擊

        當無線傳輸信道上只有監(jiān)聽者,而沒有篡改者時,稱為被動攻擊。防御被動攻擊的主要手段為加密。針對數(shù)據(jù)傳輸過程中的泄露問題,本文方案存在兩個層次的加密處理:一是以切片為單位進行的對稱加密,利用輕量級對稱加密算法進行加解密;二是采取了基于哈希鏈方式生成密鑰,并使用生成的哈希值作為密鑰對切片編號進行置換加密運算,進而對編號重新排序,打亂正常順序。采用自更新哈希鏈方式生成的密鑰進行數(shù)據(jù)加密;采用每個哈希值作為一個數(shù)據(jù)的密鑰,實現(xiàn)了一次一密,安全性更有保障;采用哈希鏈的哈希值逆用,利用哈希函數(shù)的單向性保證安全性,即使攻擊者獲得了前一個哈希值也無法推出后一個哈希值密鑰[10]。

        另外,本文采取的二次切片重組方式更加有利于數(shù)據(jù)安全性的保護。首先橫向拆分,即使部分拆分塊被破解也無法恢復出完整數(shù)據(jù);其次在進行RS碼編碼后,對拆分塊再次縱向切片,再次增加數(shù)據(jù)恢復的難度,提升其隱私保護性能??傊?,這種橫向拆分與縱向切片的交叉切片組合對數(shù)據(jù)傳輸匯聚過程中的隱私保護起到了很大的作用。

        3.1.2抗主動攻擊

        當無線傳輸信道上的攻擊者不僅可以監(jiān)聽信道,而且可以進行篡改等主動操作時,稱為主動攻擊。傳統(tǒng)針對主動攻擊的手段包括認證等[11]。而本文方案中未采取認證手段,即使當傳輸過程中,存在攻擊者的故意攻擊,對切片數(shù)據(jù)進行篡改時,(n,k)RS碼能在誤比特數(shù)e≤[(n-k+1)/2]時恢復出完整數(shù)據(jù),從而能夠在一定程度上抵抗主動攻擊。

        3.2 魯棒性

        切片技術(shù)的采用造成網(wǎng)絡(luò)中數(shù)據(jù)包的數(shù)量增大,從而使數(shù)據(jù)沖突和傳輸錯誤的概率都增大。魯棒性是指當數(shù)據(jù)切片在傳輸過程中有部分丟失或出現(xiàn)錯誤,對完整數(shù)據(jù)的最終恢復無任何影響。RS碼不僅可以實現(xiàn)部分數(shù)據(jù)丟失的糾錯,還可以實現(xiàn)大段數(shù)據(jù)丟失糾錯,其糾錯能力幾乎是所有糾錯碼中最強的一種。因此本文采用RS碼對數(shù)據(jù)進行編碼來實現(xiàn)數(shù)據(jù)傳輸匯聚過程中的冗余,提升整個過程的魯棒性。

        本文將在兩種不同的情況下對魯棒性能進行分析。

        1) 無線通信信道為理想信道且無故意攻擊,僅僅是數(shù)據(jù)切片由于沖突或通過通信協(xié)議能夠發(fā)現(xiàn)錯誤從而丟失部分數(shù)據(jù)包。根據(jù)MDS碼的最優(yōu)特性,當(n,k)RS碼獲得的至少k個正確切片數(shù)據(jù),即當錯誤切片在e1≤n-k時,就能恢復出正確的完整數(shù)據(jù);當(n,k)RS碼獲得少于k個正確切片數(shù)據(jù),即當錯誤切片在e1>n-k時,能恢復出正確的完整數(shù)據(jù)概率為1/2k-(n-e1)。

        2) 在傳輸過程中存在未發(fā)現(xiàn)的傳輸錯誤或3.1節(jié)所說的攻擊者的故意攻擊,當錯誤切片在e2≤[(n-k+1)/2]時也能恢復出完整數(shù)據(jù)。

        3.3 魯棒性與傳輸效率的關(guān)系

        采用RS碼進行編碼時,需要進行相應的數(shù)據(jù)擴展,即將數(shù)據(jù)切片從k×q×m變?yōu)閚×(q+1)×m,此時的效率為kq/n(q+1),當q比較大時基本等同于RS碼的傳輸效率,與利用秘密共享等手段來實現(xiàn)數(shù)據(jù)安全匯聚相比具有較大優(yōu)勢。

        魯棒性可表示為:

        L1=e1/ne1=n-k

        (4)

        L2=e2/ne2=[(n-k+1)/2]

        (5)

        傳輸效率可表示為:

        T=k/n

        (6)

        因此,由式(4)-式(6)可得魯棒性與傳輸效率間的關(guān)系式為:

        L1=1-T0

        (7)

        L2=(1-T)/2 0

        (8)

        3.4 算法實現(xiàn)

        針對僅僅是數(shù)據(jù)切片由于沖突或通過通信協(xié)議能夠發(fā)現(xiàn)錯誤從而丟失部分數(shù)據(jù)包的情況,隨機取幾組數(shù)據(jù)對算法進行驗證并說明算法的正確性,結(jié)果見表2。

        表2 魯棒性隨機驗證表(情況一)

        針對在傳輸過程中存在未發(fā)現(xiàn)的傳輸錯誤或攻擊者的故意攻擊的情況,隨機取幾組數(shù)據(jù)對算法進行驗證并說明算法的正確性,結(jié)果見表3。

        表3 魯棒性隨機驗證表(情況二)

        續(xù)表3

        根據(jù)表2和表3,可以清晰地得到兩種不同情況下數(shù)據(jù)的驗證結(jié)果,由此可以證明所提算法是正確的。根據(jù)以上30組驗證數(shù)據(jù),可以形成圖3中的兩條正確數(shù)據(jù)恢復的上界,經(jīng)過與由式(7)、式(8)生成的魯棒性能與傳輸效率關(guān)系圖相對比,發(fā)現(xiàn)基本吻合,從而進一步說明了本文算法的正確性。

        圖3 魯棒性與傳輸效率關(guān)系圖

        由圖3可以很清晰地得到,本文算法的魯棒性與傳輸效率成線性反比例關(guān)系。當傳輸效率越大時,魯棒性相應降低;反之,當傳輸效率越小時,魯棒性相應上升。還可知當傳輸錯誤的切片e1≤n-k時,魯棒性與傳輸效率之間的反比關(guān)系較大;當傳輸錯誤的切片e2≤[(n-k+1)/2]時,魯棒性與傳輸效率之間的反比關(guān)系較小。

        將表2、表3的驗證數(shù)據(jù)在圖3中體現(xiàn)。由表2可知當傳輸錯誤的切片e1≤n-k時,在圖3所示斜線“正確恢復上限(一)”下方的切片數(shù)據(jù)是完全可以正確恢復出完整數(shù)據(jù)的;在其上方的切片數(shù)據(jù)部分無法恢復出完整數(shù)據(jù),而部分是可以恢復出完整數(shù)據(jù)的。因為當接收的正確切片數(shù)據(jù)不足k片但很接近時,可以對丟失切片的值進行推測來完成整個數(shù)據(jù)的恢復。例如,當(n=30,k=12,e1=19)時,此時接收的正確切片為11(30-19=11),而實際需要接收k=12個正確切片才可恢復出完整數(shù)據(jù),那么就可以以1/2k-(n-e1)的概率推測出所缺切片的正確值,進而完成整個數(shù)據(jù)的恢復。由表3可知,當傳輸錯誤的切片e2≤[(n-k+1)/2]時,在圖3中斜線“正確恢復上限(二)”下方的切片數(shù)據(jù)是完全可以正確恢復出完整數(shù)據(jù)的,而在其上方的切片數(shù)據(jù)則無法恢復出完整數(shù)據(jù)。

        4 結(jié) 語

        考慮到數(shù)據(jù)在傳輸過程中的安全性和容錯性問題,本文提出一種基于糾錯碼的數(shù)據(jù)隱私傳輸方案。通過二次切片重組技術(shù)、雙重加密方式較為高效地提升了數(shù)據(jù)的安全性和魯棒性,實現(xiàn)數(shù)據(jù)安全傳輸?shù)耐瑫r又保證了數(shù)據(jù)恢復的能力;本文也對傳輸效率和魯棒性之間的關(guān)系進行了研究,兩者存在著一定取舍關(guān)系,需根據(jù)應用需求確定相關(guān)參數(shù)。最后,通過對算法進行的實現(xiàn)與分析,驗證本文方案的正確性和有效性。接下來會對算法與數(shù)據(jù)匯聚相結(jié)合方面進行深入研究。

        猜你喜歡
        哈希魯棒性密鑰
        探索企業(yè)創(chuàng)新密鑰
        密碼系統(tǒng)中密鑰的狀態(tài)與保護*
        荒漠綠洲區(qū)潛在生態(tài)網(wǎng)絡(luò)增邊優(yōu)化魯棒性分析
        基于確定性指標的弦支結(jié)構(gòu)魯棒性評價
        一種對稱密鑰的密鑰管理方法及系統(tǒng)
        基于ECC的智能家居密鑰管理機制的實現(xiàn)
        電信科學(2017年6期)2017-07-01 15:45:06
        基于非支配解集的多模式裝備項目群調(diào)度魯棒性優(yōu)化
        非接觸移動供電系統(tǒng)不同補償拓撲下的魯棒性分析
        基于OpenCV與均值哈希算法的人臉相似識別系統(tǒng)
        基于維度分解的哈希多維快速流分類算法
        計算機工程(2015年8期)2015-07-03 12:20:04
        中文字幕日本人妻久久久免费| 熟女人妻一区二区中文字幕| 中文字幕一区二区人妻性色av| 精品国产精品三级精品av网址| 亚洲日本中文字幕天天更新| 亚洲区日韩精品中文字幕| 亚洲一区二区三区美女av| 极品人妻少妇av免费久久| 国产农村乱辈无码| 一区二区三区日韩亚洲中文视频 | 俄罗斯老熟妇色xxxx| 久久狠狠高潮亚洲精品暴力打| 亚洲av高清在线一区二区三区| 亚洲最大免费福利视频网| 手机看片福利一区二区三区| 亚洲中文字幕在线一区二区三区| 亚洲第一页在线观看视频网站| 国产亚洲欧美精品永久| 国产成人乱色伦区| 亚洲一区二区三区在线观看播放| 99热婷婷一区二区三区| 噜噜综合亚洲av中文无码| 18禁美女裸身无遮挡免费网站 | 天堂69亚洲精品中文字幕| 国产免费网站在线观看不卡| 亚洲av首页在线| 国产精品高潮呻吟av久久无吗| 精品一区二区三区中文字幕在线 | av色综合久久天堂av色综合在| 鲁一鲁一鲁一鲁一澡| 日韩有码中文字幕第一页| 91精品国产色综合久久| 男女爽爽无遮挡午夜视频| 日本久久久免费高清| 国产色视频在线观看了| 国产电影一区二区三区| 午夜一级韩国欧美日本国产 | 久久精品国产亚洲av无码娇色| 国产成年无码V片在线| 日本高清一区二区三区色| 国产无套乱子伦精彩是白视频|