久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

學(xué)習(xí)心得:分組密碼(Feistel密碼結(jié)構(gòu))

 精髓_感知力 2015-07-17

分組密碼

  分組密碼是將明文消息編碼后的數(shù)字序列劃分成長為N的分組(長為N的矢量),,分別在密鑰k=(k0,k1,...kt-1)的控制下變換成等長的輸出數(shù)字序列(這個(gè)序列是長為M的向量,,即輸入和輸出分組的長度可以不同)。它與流密碼的不同在于輸出的每一位數(shù)字不僅與相應(yīng)時(shí)刻輸入的明文數(shù)字有關(guān),,而是與一組長為n的明文數(shù)字有關(guān),。分組密碼的本質(zhì)實(shí)際上是字長為n的數(shù)字序列的代換密碼。

  為保證安全性,,設(shè)計(jì)的算法應(yīng)當(dāng)滿足以下要求:

  1.分組長度n要足夠大,,防止明文窮舉攻擊奏效。

  2.密鑰量要足夠大(即向量k要足夠長),,并且盡可能消除弱的密鑰,,使所有密鑰同等的好,防止密鑰窮舉攻擊奏效,。但密鑰本身又不能過長,,否則難以管理。

  3.由密鑰確定置換的算法要足夠復(fù)雜,,以抵抗差分攻擊和線性攻擊,。

  4.加解密運(yùn)算簡單且易于實(shí)現(xiàn)。

  5.數(shù)據(jù)擴(kuò)展和差錯(cuò)傳播盡可能小,。

 

代換

  如果明文和密文分組的長都為n比特,,則顯然每個(gè)明文分組都對(duì)應(yīng)有2^n個(gè)可能的取值。為了保證加密運(yùn)算可逆(否則無法解密,,因?yàn)榉纸M密碼是單鑰密碼),,明文的每個(gè)分組在特定加密算法作用之后應(yīng)當(dāng)產(chǎn)生唯一的一個(gè)密文分組,稱明文分組到密文分組的可逆變換為代換,??梢钥闯觯煌赡孀儞Q的個(gè)數(shù)有(2^n),!個(gè),,顯然,這也就意味著密鑰的長度為(2^n),!比特,。

  從實(shí)現(xiàn)的角度看,分組長度很大的可逆代換是不實(shí)際的,。即便分組長度僅為64比特,,對(duì)應(yīng)的密鑰長度也將約為10^21比特,非常難以處理,;然而長度太小又不能滿足上述關(guān)于算法安全性的第一條要求,。因此,實(shí)際中常將分組分為較小的子段,,例如可將n長向量的代換變?yōu)樵O(shè)計(jì)m個(gè)較小的子代換,,稱每個(gè)子代換為代換盒,簡稱為S盒,。例如,,對(duì)于48比特輸入的DES密碼,用8個(gè)S盒來實(shí)現(xiàn),,這樣每個(gè)S盒的輸入僅為6比特,。

 

擴(kuò)散和混淆

  擴(kuò)散和混淆的目的是抗擊敵手對(duì)密碼系統(tǒng)的統(tǒng)計(jì)分析。如果敵手知道明文的某些統(tǒng)計(jì)特性(如不同字母出現(xiàn)的頻率,,特定的單詞或短語),,而這些統(tǒng)計(jì)特性如果以某種方式在密文中反映了出來,,那么敵手就有可能得到加密密鑰的一部分或一個(gè)可能的密鑰集合。因此需要引入擴(kuò)散和混淆的方法,。

  所謂擴(kuò)散,,就是將明文的統(tǒng)計(jì)特性擴(kuò)散到密文中去,實(shí)現(xiàn)方式是使得密文的每一位由明文中的多位產(chǎn)生,。這樣明文的統(tǒng)計(jì)特性就被散布開了,,因而在密文中每一字母出現(xiàn)的概率將更接近于相等,使敵手難以通過統(tǒng)計(jì)分析得到有用的信息,。

  所謂混淆,,就是使密文和密鑰之間的統(tǒng)計(jì)關(guān)系變得盡可能復(fù)雜,使敵手無法得到密鑰,。這樣敵手即便得到了密文之間的某些統(tǒng)計(jì)關(guān)系,,也難以得到密鑰。

 

Feistel密碼結(jié)構(gòu)

  大多數(shù)分組密碼的結(jié)構(gòu)本質(zhì)上都是基于Feistel網(wǎng)絡(luò)結(jié)構(gòu),,因此,,了解Feistel密碼結(jié)構(gòu)對(duì)于學(xué)習(xí)分組密碼算法是非常有幫助的。

 

Feistel加密結(jié)構(gòu)

Feistel加密算法的輸入是長為2w的明文和一個(gè)密鑰K=(K1,,K2...,Kn),。將明文分組分成左右兩半L和R,然后進(jìn)行n輪迭代,,迭代完成后,,再將左右兩半合并到一起以產(chǎn)生密文分組。其第i輪迭代的函數(shù)為:

Li=Ri-1

Ri=Li-1+F(Ri-1,Ki)

其中Ki是第i輪的子密鑰,,“+”表示異或運(yùn)算,,F(xiàn)表示輪函數(shù)。一般地,,各輪子密鑰彼此各不相同,,且輪函數(shù)F也各不相同。代換過程完成后,,在交換左右兩半數(shù)據(jù),,這一過程稱為置換。Feistel網(wǎng)絡(luò)的結(jié)構(gòu)如下:

學(xué)習(xí)心得:分組密碼(Feistel密碼結(jié)構(gòu))



 

顯然,,F(xiàn)eistel網(wǎng)絡(luò)的安全性與以下參數(shù)有關(guān):

1.分組大小

2.密鑰大小

3.子密鑰產(chǎn)生算法  該算法復(fù)雜性越高,,則密碼分析越困難(注意:并非加密算法,F(xiàn)eistel網(wǎng)絡(luò)結(jié)構(gòu)本身就是加密算法或其重要組成部分,,是無需保密的),。

4.輪數(shù)  單輪結(jié)構(gòu)遠(yuǎn)不足以保證安全,一般輪數(shù)取為16。

5.輪函數(shù)  結(jié)構(gòu)越復(fù)雜越難分析

 

Feistel解密結(jié)構(gòu)

本質(zhì)上與加密過程一樣,,將密文作為輸入,,以相反次序使用子密鑰,保證加密和解密可以采用同一算法,。以16輪加密為例,,在加密過程中,,LE16=RE15,,那么在解密過程中,LD1=RD0=LE16=RE15,其中E表示加密(Encode),,D表示解密(Decode),。

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多