Feistel cipher

出自KMU Wiki

(修訂版本間差異)
跳轉到: 導航, 搜索
在2008年3月19日 (三) 17:38所做的修訂版本 (編輯)
Jo7577 (對話 | 貢獻)

←上一個
當前修訂版本 (2008年3月19日 (三) 18:11) (編輯) (撤銷)
Jo7577 (對話 | 貢獻)

 
(13個中途的修訂版本沒有顯示。)
第1行: 第1行:
-= <Feistel Cipher> =+= <Feistel Cipher> 費斯特密文 =
-<pre>'''什麼是feistel密碼'''</pre>+
- +
-.&nbsp;&nbsp;+
- +
- +
-Feistel cipher 是由Feistel在1973所提出,這是個重要的方法,(它是利用不斷更新和替換的密碼檢索表來達到diffusion及confusion)+
 +<font color="#ff0000" size="5">什麼是Feistel密碼</font><br><br>.&nbsp;&nbsp;&nbsp;Feistel cipher 是由Feistel在1973所提出,這是個重要的方法,(它是利用不斷更新和替換的密碼檢索表來達到diffusion及confusion)
 +<br>
幾乎所有block的加密方法都是架構於這個方法之上。 幾乎所有block的加密方法都是架構於這個方法之上。
 +<br>
 +<br>
 +<br>
 +<br>
 +<br><font color="#ff0000" size="5">'''內容'''</font> &nbsp;&nbsp;
- +<br>&nbsp;&nbsp;&nbsp; Feistel 暗號 是一個 分組密碼 以一個特殊結構(以 Feistel 網路著名) 。<br>
- +
- +
- +
-<pre>'''內容'''<br></pre>+
- +
-&nbsp;&nbsp;+
- +
- +
-Feistel 暗號 是一個 分組密碼 以一個特殊結構(以 Feistel 網路著名) 。<br>+
Feistel 網路和相似的建築結合多個圓重覆 Feistel 網路和相似的建築結合多個圓重覆
 +* 位元拖曳&nbsp;
 +* 簡單的非線性作用(經常叫做 S 箱子)&nbsp;
 +* 線性混合(在模件代數感覺) 使用 XOR
 +導致一個作用與很多什麼克勞德Shannon 描述了作為"混亂和擴散" 。&nbsp;<br>
 +<br>
-&nbsp;+<br>
- +
- +
-*位元拖曳 <br>&nbsp;*簡單的非線性作用(經常叫做 S 箱子) <br>&nbsp;*線性混合(在模件代數感覺) 使用 XOR <br>導致一個作用與很多什麼克勞德Shannon 描述了作為"混亂和擴散" 。 <br>+
-分裂純文本塊成二個相等的片斷, (L0, R0)+[[Image:Feistel.png|left]]
-為各個圓i = 1,2...,n, 計算+<br>
-<br>李= Ri-1 Ri = 李1 ⊕ f(Ri-1, Ki)+<br>
-那裡f 是圓的作用和Ki 是次級鑰匙。<br>然後位數文本是(Ln, Rn) +<br>&nbsp;&nbsp;&nbsp;這個加密演算法的輸入有長度為 2w 位元的明文區塊,以及一把金鑰 K。這個明文區塊首先會被分成等長的兩半,L0與R0。然後這兩個等長的資料會經由n個回合(pass)的處理,最後再合併在一起形成相對應的密文區塊。
-不管作用f, 解密是成功的通過+<br>&nbsp;&nbsp;&nbsp;每一回合,以第i回合為例,其輸入會有Li-1以及Ri-1,而這兩個部分都是由上一回合所產生出來的結果,而子金鑰(subkey)Ki 則是完全由K經特定方式所產生出來的。一般而言,每一把子金鑰都互不相同,也不會與金鑰K相同,他們都是金鑰K透過一個子金鑰產生演算法(subkey generation algorithm)所產生出來的。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-<br>Ri-1 = 李・李1 = Ri ⊕ f(Ri-1, Ki)<br>+<br>&nbsp;&nbsp;&nbsp;每一回合都是相同的結構。左半部的資料會經過一次替換的動作,這個動作是藉由先對右半部分的資料進行回合函數F(round function F)的處理,再將結果與左半部分做XOR。每一回合所使用的round function 都是類似的基本結構,但會因為所使用的子金鑰Ki不同而有所不同。在這個替換動作後,接著會將左右兩半的資料做互換的重新排列。<br>
<br> <br>

當前修訂版本

[編輯] <Feistel Cipher> 費斯特密文

什麼是Feistel密碼

.   Feistel cipher 是由Feistel在1973所提出,這是個重要的方法,(它是利用不斷更新和替換的密碼檢索表來達到diffusion及confusion)


幾乎所有block的加密方法都是架構於這個方法之上。






內容   


    Feistel 暗號 是一個 分組密碼 以一個特殊結構(以 Feistel 網路著名) 。

Feistel 網路和相似的建築結合多個圓重覆

  • 位元拖曳 
  • 簡單的非線性作用(經常叫做 S 箱子) 
  • 線性混合(在模件代數感覺) 使用 XOR

導致一個作用與很多什麼克勞德Shannon 描述了作為"混亂和擴散" 。 






   這個加密演算法的輸入有長度為 2w 位元的明文區塊,以及一把金鑰 K。這個明文區塊首先會被分成等長的兩半,L0與R0。然後這兩個等長的資料會經由n個回合(pass)的處理,最後再合併在一起形成相對應的密文區塊。


   每一回合,以第i回合為例,其輸入會有Li-1以及Ri-1,而這兩個部分都是由上一回合所產生出來的結果,而子金鑰(subkey)Ki 則是完全由K經特定方式所產生出來的。一般而言,每一把子金鑰都互不相同,也不會與金鑰K相同,他們都是金鑰K透過一個子金鑰產生演算法(subkey generation algorithm)所產生出來的。
     


   每一回合都是相同的結構。左半部的資料會經過一次替換的動作,這個動作是藉由先對右半部分的資料進行回合函數F(round function F)的處理,再將結果與左半部分做XOR。每一回合所使用的round function 都是類似的基本結構,但會因為所使用的子金鑰Ki不同而有所不同。在這個替換動作後,接著會將左右兩半的資料做互換的重新排列。