<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 網(wǎng)絡(luò )高效安全數據傳輸方法設計

網(wǎng)絡(luò )高效安全數據傳輸方法設計

作者: 時(shí)間:2010-12-24 來(lái)源:網(wǎng)絡(luò ) 收藏

2.2 構造哈夫曼編碼表
獲得一個(gè)文件的哈夫曼編碼表是該文件獲得壓縮與解壓的關(guān)鍵。設某個(gè)文件中含有q種字符S1,S2,…,Sq,并且統計出每種字符在文件中出現的概率分別為p(S1),p(S2),…,p(Sq),則編碼的具體方法如下:
(1)將q個(gè)信源符號按概率大小遞減排列p(S1)≥p(S2)≥…≥p(Sq);
(2)用字符‘O’和‘1’分別代表概率最小的2個(gè)信源符號,并將這2個(gè)概率最小的信源符號合并成1個(gè)信源符號,從而得到只包含q-1個(gè)符號的新信源,稱(chēng)為縮減信源S1;
(3)把縮減信源S1的符號仍按概率大小遞減次序排列,再將其最后兩個(gè)概率最小的信源符號分別用字符‘O’和‘1’表示,并且合并成一個(gè)符號,這樣又形成了q-2個(gè)信源符號的縮減信源S2;
(4)依次繼續下去,直至信源最后只剩下兩個(gè)信源符號為止,將這最后兩個(gè)信源符號分別用字符‘O’和‘1’表示;
(5)然后從最后一級縮減信源開(kāi)始,進(jìn)行回推就得到每種字符所對應的由字符‘O’和‘1’組成的字符串序列,不妨將其稱(chēng)為偽碼字。
這樣,就為需要壓縮的文件建立了一個(gè)一一映射f:Si→ci=1,2,…,q。式中:Si代表不同的字符,ci代表對應字符Si的偽碼字。
為了將偽碼字變成真正的碼字,又必須建立一個(gè)映射g:ci→ω,i=1,2,…,q。式中:ci代表不同的字符,(ωi代表對應字符ci的碼字。該映射g 的功能是將由字符串組成的偽碼字變成二進(jìn)制數,比如g(010110)=(010110)2=(22)10。從而g[f(Si)],i=1,2,…,q,就是構造的哈夫曼編碼表。
2.3 文件壓縮過(guò)程
每從文件中讀出一個(gè)字符char,用查哈夫曼編碼表的方式得到對應的碼字,然后用這個(gè)碼字替換相應的字符g[f(char)]。當文件中的所有字符都經(jīng)過(guò)了碼字替換,則得到一個(gè)比原文件要小的壓縮文件。文件之所以能夠被壓縮,是因為每個(gè)字符都占8個(gè)二進(jìn)制位的空間。然而,通過(guò)碼字替換相應的字符后,有的碼字比相應的字符的碼長(cháng)要短,有的碼字比相應的字符的碼長(cháng)要長(cháng),但文件在被壓縮后總的長(cháng)度比原來(lái)要短。
2.4 文件解壓過(guò)程
文件的解壓過(guò)程是文件的壓縮過(guò)程的逆過(guò)程,即將一個(gè)壓縮文件還原成它的本來(lái)面目。因為一個(gè)壓縮文件是不能夠直接使用的,只有被解壓后才能使用。一個(gè)被壓縮的文件如果不能被解壓,則這種壓縮是毫無(wú)意義的。
哈夫曼編碼是即時(shí)碼,只要得到碼字c,則經(jīng)查哈夫曼編碼表得到相應字符f-1(g-1(c)),用這個(gè)字符替換相應的碼字就是還原的過(guò)程。因此,每從壓縮文件中讀出一個(gè)碼字,就從哈夫曼編碼表查得相應的字符替換,當文件中所有的碼字被替換掉,這個(gè)解壓過(guò)程也就完成了。

3 高效網(wǎng)絡(luò )安全方法設計
一個(gè)高效的數據系統必須保證數據在中的安全和可靠,包括信息的保密性、完整性,同時(shí)在實(shí)現數據傳輸中占用更少的資源。所以數據加密傳輸的方案中應包括對發(fā)送端數據的有效加密、密鑰的分配、傳輸數據的壓縮。下面主要從信息的壓縮、保密性幾個(gè)方面來(lái)考慮數據加密傳輸系統中的加密方案。
從哈夫曼編碼壓縮的過(guò)程可以看出,經(jīng)過(guò)該方法壓縮的數據必須使用壓縮形成的哈夫曼編碼樹(shù)才能解壓縮。對于不同的源文件,由于文件內容的不同,形成的哈夫曼編碼樹(shù)不同。數據傳輸的過(guò)程中需要同時(shí)傳輸壓縮數據包和相應的哈夫曼編碼樹(shù)結構。相對于壓縮數據包,哈夫曼編碼樹(shù)的節點(diǎn)數大大小于數據文件的數據量,如果只對哈夫曼編碼樹(shù)進(jìn)行加密,加密和解密需要處理的數據量將大大減少,對于不對稱(chēng)加密算法無(wú)法處理大量數據的限制也可被克服。在數據傳輸中需要傳輸的數據量比壓縮之前需要傳輸的數據量大大降低,可以節省大量的網(wǎng)絡(luò )資源。在大規模的數據安全傳輸中,可以提高數據傳輸的效率和安全性。
在信息的保密性方面選擇RSA作為哈夫曼編碼加密傳輸系統中傳輸信息的加密算法,采用公鑰加密來(lái)發(fā)送哈夫曼編碼。
具體的數據傳輸實(shí)現的框架如圖1所示。
b.JPG

安全數據傳輸的各個(gè)模塊的功能如下:
對需要傳輸的明文數據進(jìn)行哈夫曼壓縮,壓縮完成后產(chǎn)生哈夫曼編碼樹(shù)的代碼集合;用哈夫曼代碼集合對原明文代碼集合進(jìn)行壓縮轉換;對哈夫曼代碼集合進(jìn)行RSA算法的公鑰加密;傳輸加密后的哈夫曼代碼集合和壓縮代碼集合;接收端收到數據后,使用私鑰解密哈夫曼
代碼集合;使用哈夫曼代碼集合接壓縮形成解壓文件。

4 結語(yǔ)
在數據安全傳輸過(guò)程中,通過(guò)對哈夫曼壓縮后的明文數據進(jìn)行改進(jìn)的加密,克服了非對稱(chēng)加密算法加密大數據量文件的缺點(diǎn),保持了非對稱(chēng)加密的安全性。通過(guò)壓縮減少了數據傳輸的數據量,節省了網(wǎng)絡(luò )帶寬的開(kāi)銷(xiāo),提高了數據傳輸的效率。這種方法非常適合大量的數據進(jìn)行互聯(lián)網(wǎng)絡(luò )安全傳輸。此種方法只有在明文文件中數據的種類(lèi)及出現的概率都完全相同的極端情況下,數據的傳輸效率才會(huì )降到最低。

本文引用地址:http://dyxdggzs.com/article/156856.htm

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 傳輸

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>