什麼是DES中的初始置換?
初始置換僅在加密過程開始時需要一次。在DES中,在將完整的明文劃分為每個64位的塊後,每個塊都需要IP。此初始置換是轉置過程中的一個階段。
初始置換隻出現一次,並且出現在第一輪之前。它建議IP中的轉置應如何進行,如表中所示。
例如,可以說IP將原始明文塊的第一位恢復為原始明文塊的第58位,第二位恢復為原始明文塊的第50位,等等。這只不過是原始明文塊的位元位置的置換。
IP 的概念
| 明文塊中的位元位置 | 將被覆蓋為位元位置的內容 |
|---|---|
| 1 | 58 |
| 2 | 50 |
| 3 | 42 |
| .... | .... |
| 64 | 7 |
每個置換建立一個64位的輸入並根據確定的規則對其進行置換。它可以顯示只有幾個輸入埠和相應的輸出埠。這些置換是無金鑰的直線置換,彼此相反。
例如,在初始置換中,輸入中的第58位變為輸出中的第一位。同樣,在最終置換中,輸入中的第一位變為輸出中的第58位。
換句話說,如果這兩個置換之間的輪次不繼續,則進入初始置換的第58位與離開最終置換的第58位相同。
IP使用的完整轉置表顯示在表中。此表必須從左到右,從上到下讀取。例如,眾所周知,第一個位置的58表示在IP期間,原始明文塊中第58位的內容將覆蓋第1位的內容。
同樣,表中第40個位置顯示1,這意味著第一位將覆蓋原始明文塊中的第40位。所有其他位元位置都使用相同的規則。
| 58 | 50 | 42 | 34 | 26 | 18 | 10 | 2 | 60 | 52 | 44 | 36 | 28 | 20 | 12 | 4 |
| 62 | 54 | 46 | 38 | 30 | 22 | 14 | 6 | 64 | 56 | 48 | 40 | 32 | 24 | 16 | 8 |
| 57 | 49 | 41 | 33 | 25 | 17 | 9 | 1 | 59 | 51 | 43 | 35 | 27 | 19 | 11 | 3 |
| 61 | 53 | 45 | 37 | 29 | 21 | 13 | 5 | 63 | 55 | 47 | 39 | 31 | 23 | 15 | 7 |
完成IP後,生成的64位置換文字塊將分為兩個半塊。每個半塊包含32位。它被稱為左塊LPT和右塊RPT。現在,在這兩個塊上執行16輪。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP