日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > des算法原理

          des算法原理

          作者: 時間:2012-02-17 來源:網(wǎng)絡 收藏

          用S密箱里的值S[j][ m][ n]替換B[j]。8個S密箱如下所示:
          S-BOXE:S1
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 14 0 4 15
          0001 1 4 15 1 12
          0010 2 13 7 14 8
          0011 3 1 4 8 2
          0100 4 2 14 13 4
          0101 5 15 2 6 9
          0110 6 11 13 2 1
          0111 7 8 1 11 7
          1000 8 3 10 15 5
          1001 9 10 6 12 11
          1010 10 6 12 9 3
          1011 11 12 11 7 14
          1100 12 5 9 3 10
          1101 13 9 5 10 0
          1110 14 0 3 5 6
          1111 15 7 8 0 13
          S-BOXE:S2
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 15 3 0 13
          0001 1 1 13 14 8
          0010 2 8 4 7 10
          0011 3 14 7 11 1
          0100 4 6 15 10 3
          0101 5 11 2 4 15
          0110 6 3 8 13 4
          0111 7 4 14 1 2
          1000 8 9 12 5 11
          1001 9 7 0 8 6
          1010 10 2 1 12 7
          1011 11 13 10 6 12
          1100 12 12 6 9 0
          1101 13 0 9 3 5
          1110 14 5 11 2 14
          1111 15 10 5 15 9
          S-BOXE:S3
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 10 13 13 1
          0001 1 0 7 6 10
          0010 2 9 0 4 13
          0011 3 14 9 9 0
          0100 4 6 3 8 6
          0101 5 3 4 15 9
          0110 6 15 6 3 8
          0111 7 5 10 0 7
          1000 8 1 2 11 4
          1001 9 13 8 1 15
          1010 10 12 5 2 14
          1011 11 7 14 12 3
          1100 12 11 12 5 11
          1101 13 4 11 10 5
          1110 14 2 15 14 2
          1111 15 8 1 7 12
          S-BOXE:S4
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 7 13 10 3
          0001 1 13 8 6 15
          0010 2 14 11 9 0
          0011 3 3 5 0 6
          0100 4 0 6 12 10
          0101 5 6 15 11 1
          0110 6 9 0 7 13
          0111 7 10 3 13 8
          1000 8 1 4 15 9
          1001 9 2 7 1 4
          1010 10 8 2 3 5
          1011 11 5 12 14 11
          1100 12 11 1 5 12
          1101 13 12 10 2 7
          1110 14 4 14 8 2
          1111 15 15 9 4 14
          S-BOXE:S5
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 2 14 4 11
          0001 1 12 11 2 8
          0010 2 4 2 1 12
          0011 3 1 12 11 7
          0100 4 7 4 10 1
          0101 5 10 7 13 14
          0110 6 11 13 7 2
          0111 7 6 1 8 13
          1000 8 8 5 15 6
          1001 9 5 0 9 15
          1010 10 3 15 12 0
          1011 11 15 10 5 9
          1100 12 13 3 6 10
          1101 13 0 9 3 4
          1110 14 14 8 0 5
          1111 15 9 6 14 3
          S-BOXE:S6
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 12 10 9 4
          0001 1 1 15 14 3
          0010 2 10 4 15 2
          0011 3 15 2 5 12
          0100 4 9 7 2 9
          0101 5 2 12 8 5
          0110 6 6 9 12 15
          0111 7 8 5 3 10
          1000 8 0 6 7 11
          1001 9 13 1 0 14
          1010 10 3 13 4 1
          1011 11 4 14 10 7
          1100 12 14 0 1 6
          1101 13 7 11 13 0
          1110 14 5 3 11 8
          1111 15 11 8 6 13
          S-BOXE:S7
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 4 13 1 6
          0001 1 11 0 4 11
          0010 2 2 11 11 13
          0011 3 14 7 13 8
          0100 4 15 4 12 1
          0101 5 0 9 3 4
          0110 6 8 1 7 10
          0111 7 13 10 14 7
          1000 8 3 14 10 9
          1001 9 12 3 15 5
          1010 10 9 5 6 0
          1011 11 7 12 8 15
          1100 12 5 2 0 14
          1101 13 10 15 5 2
          1110 14 6 8 9 3
          1111 15 1 6 2 12
          S-BOXE:S8
          Binary d1d6 =>; 00 01 10 11
          / d2..d5 / Dec 0 1 2 3
          0000 0 13 1 7 2
          0001 1 2 15 11 1
          0010 2 8 13 4 14
          0011 3 4 8 1 7
          0100 4 6 10 9 4
          0101 5 15 3 12 10
          0110 6 11 7 14 8
          0111 7 1 4 2 13
          1000 8 10 12 0 15
          1001 9 9 5 6 12
          1010 10 3 6 10 9
          1011 11 14 11 13 0
          1100 12 5 0 15 3
          1101 13 0 14 3 5
          1110 14 12 9 5 6
          1111 15 7 2 8 11

          返回第一步直至8個數(shù)據(jù)塊都被替換。

          把B[1]至B[8]順序串聯(lián)起來得到一個32位數(shù)。對這個數(shù)做如下變換:
          bit goes to bit bit goes to bit
          16 1 2 17
          7 2 8 18
          20 3 24 19
          21 4 14 20
          29 5 32 21
          12 6 27 22
          28 7 3 23
          17 8 9 24
          1 9 19 25
          15 10 13 26
          23 11 30 27
          26 12 6 28
          5 13 22 29
          18 14 11 30
          31 15 4 31
          10 16 25 32

          把得到的結(jié)果與L[i-1]作異或運算。把計算結(jié)果x給R[i]。

          把R[i-1]的值x給L[i]。

          從a循環(huán)執(zhí)行,直到K[16]也被用到。

          把R[16]和L[16] 順序串聯(lián)起來得到一個64位數(shù)。對這個數(shù)實施II變換的逆變換。

          以上就是DES算法如何加密一段64位數(shù)據(jù)塊。解密時用同樣的過程,只需把16個子密鑰的順續(xù)顛倒過來,應用的順序為K[16],K[15],K[14],...K[1]。


          上一頁 1 2 下一頁

          關鍵詞: des 算法原理

          評論


          相關推薦

          技術專區(qū)

          關閉