選擇壓縮運算
(用字母S表示)把異或操作的48位結果劃分為8組,每組6位,進而將每組的6位輸入一個S盒,獲得長度為4位的輸出。S盒共有8個,互不相同,以S1~S8標識,8個S盒的輸出連在一起可以得到32位的輸出。
工作流程
S盒的具體工作流程如下:
1)S盒6位數輸入的第一位和第六位構成一個兩位的二進制數,將其轉化為十進制數,對應於s盒中的某一行。
2)S盒6位輸入的第二至五位構成一個四位的二進制數,將其轉化為十進制數,對應於s盒中的某一列。
3)通過前兩部確定的行和列在s盒中定位一個十進制數,該數的值域為【0,15】,將其轉化為二進制的四位數輸出。
舉例來看,假設s1盒的輸入為110111,輸入的第一位和第六位數字組成二進制數11,對應的十進制數為3,輸入的二至五位組成二進制數1011,對應十進制數為11.s1盒中第三行第十一列即為對應數,轉化為二進制數輸出即可。