-
Feistel
鎖定
- 外文名
- Feistel
- 學 科
- 密碼學
- 發明者
- Horst Feistel
- 應 用
- DES
Feistel發展歷史
Feistel 密碼結構(2張)
Feistel構造過程
(1)將明文信息均分為兩塊:(L0,R0);
(2)在每一輪中,進行如下運算(i 為當前輪數):
Li+1 = Ri;
Ri+1 = Li ⊕F (Ri,Ki)。(其中⊕為異或操作)
所得的結果即為:(Ri+1,Li+1)。
Feistel解密過程
對於密文(Rn+1,Ln+1),我們將i 由n 向0 進行,即, i = n,n-1,……,0。然後對密文進行加密的逆向操作,如下:
(1)Ri = Li+1;
(2)Li = Ri+1⊕F (Li+1,Ki)。(其中⊕為異或操作)
所得結果為(L0,R0),即原來的明文信息。
Feistel影響因素
影響Feistel 結構的因素有如下5 個:
(1)塊的大小:大的塊會提高加密的安全性,但是會降低加密、解密的速度。截止至2013年,比較流行的這種方案是64 bit。而128 bit 的使用也比較廣泛。
(2)密鑰的大小:同上。而 128 bit 正逐漸取代64 bit ,成為主流。
(3)循環次數(輪次數):每多進行一輪循環,安全性就會有所提高。現階段比較流行的是16輪。
(4)子密鑰的生成算法:生成算法越複雜,則會使得密碼被破譯的難度增強,即,信息會越安全。
(5)輪函數的複雜度:輪函數越複雜,則安全性越高。