亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? subkey.java

?? DES加密算法 早期的源代碼  本人覺得對初學者很有用
?? JAVA
字號:
//SubKey.java
package Cipher;

public class SubKey {
  private String inKey;
  private StringBuffer keyBuf;
  private byte[] key=new byte[64];  //保存密鑰的64位二進制表示
  private byte[] kwork=new byte[56];
  private static byte[] shift={1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1 };
  protected byte[] k1=new byte[48];
  protected byte[] k2=new byte[48];
  protected byte[] k3=new byte[48];
  protected byte[] k4=new byte[48];
  protected byte[] k5=new byte[48];
  protected byte[] k6=new byte[48];
  protected byte[] k7=new byte[48];
  protected byte[] k8=new byte[48];
  protected byte[] k9=new byte[48];
  protected byte[] k10=new byte[48];
  protected byte[] k11=new byte[48];
  protected byte[] k12=new byte[48];
  protected byte[] k13=new byte[48];
  protected byte[] k14=new byte[48];
  protected byte[] k15=new byte[48];
  protected byte[] k16=new byte[48];
  protected byte[] kn=new byte[48];

  public SubKey(String inKey) {
        byte j;
        this.inKey=inKey;
        int len=inKey.length();
        //密鑰必須是8位,若小于8位不夠的補空格 ,大于8位取前8位
        keyBuf=new StringBuffer(inKey);
        if (len<8){
                for (int i = 1; i<=8-len; i++)
                        keyBuf.append("?");
        }
        inKey=keyBuf.toString();
        //將8個字符的密鑰轉換成64位二進制表示
        for (int i = 0; i<8; i++) {
                j=(byte)(inKey.charAt(i));
                key[8*i]=(byte)((j/128)%2);
                key[8*i+1]=(byte)((j/64)%2);
                key[8*i+2]=(byte)((j/32)%2);
                key[8*i+3]=(byte)((j/16)%2);
                key[8*i+4]=(byte)((j/8)%2);
                key[8*i+5]=(byte)((j/4)%2);
                key[8*i+6]=(byte)((j/2)%2);
                key[8*i+7]=(byte)(j%2);
        }
        //初始化鍵的排列順序
        kwork[ 0] = key[56];
        kwork[ 1] = key[48];
        kwork[ 2] = key[40];
        kwork[ 3] = key[32];
        kwork[ 4] = key[24];
        kwork[ 5] = key[16];
        kwork[ 6] = key[ 8];
        kwork[ 7] = key[ 0];
        kwork[ 8] = key[57];
        kwork[ 9] = key[49];
        kwork[10] = key[41];
        kwork[11] = key[33];
        kwork[12] = key[25];
        kwork[13] = key[17];
        kwork[14] = key[ 9];
        kwork[15] = key[ 1];
        kwork[16] = key[58];
        kwork[17] = key[50];
        kwork[18] = key[42];
        kwork[19] = key[34];
        kwork[20] = key[26];
        kwork[21] = key[18];
        kwork[22] = key[10];
        kwork[23] = key[ 2];
        kwork[24] = key[59];
        kwork[25] = key[51];
        kwork[26] = key[43];
        kwork[27] = key[35];
        kwork[28] = key[62];
        kwork[29] = key[54];
        kwork[30] = key[46];
        kwork[31] = key[38];
        kwork[32] = key[30];
        kwork[33] = key[22];
        kwork[34] = key[14];
        kwork[35] = key[ 6];
        kwork[36] = key[61];
        kwork[37] = key[53];
        kwork[38] = key[45];
        kwork[39] = key[37];
        kwork[40] = key[29];
        kwork[41] = key[21];
        kwork[42] = key[13];
        kwork[43] = key[ 5];
        kwork[44] = key[60];
        kwork[45] = key[52];
        kwork[46] = key[44];
        kwork[47] = key[36];
        kwork[48] = key[28];
        kwork[49] = key[20];
        kwork[50] = key[12];
        kwork[51] = key[ 4];
        kwork[52] = key[27];
        kwork[53] = key[19];
        kwork[54] = key[11];
        kwork[55] = key[ 3];

        /* 開始計算子鍵*/
        byte nbrofshift;
        byte temp1,temp2;
        for (int iter = 0; iter<16; iter++) {
                nbrofshift = shift[iter];
                for (int i = 0; i < (int) nbrofshift; i++) {
                        temp1 = kwork[0];
                        temp2 = kwork[28];
                        for (int k = 0; k < 27; k++) {
                                kwork[k] = kwork[k+1];
                                kwork[k+28] = kwork[k+29];
                        }
                        kwork[27] = temp1;
                        kwork[55] = temp2;
                }
                /* Permute kwork - PC2 */
                kn[ 0] = kwork[13];
                kn[ 1] = kwork[16];
                kn[ 2] = kwork[10];
                kn[ 3] = kwork[23];
                kn[ 4] = kwork[ 0];
                kn[ 5] = kwork[ 4];
                kn[ 6] = kwork[ 2];
                kn[ 7] = kwork[27];
                kn[ 8] = kwork[14];
                kn[ 9] = kwork[ 5];
                kn[10] = kwork[20];
                kn[11] = kwork[ 9];
                kn[12] = kwork[22];
                kn[13] = kwork[18];
                kn[14] = kwork[11];
                kn[15] = kwork[ 3];
                kn[16] = kwork[25];
                kn[17] = kwork[ 7];
                kn[18] = kwork[15];
                kn[19] = kwork[ 6];
                kn[20] = kwork[26];
                kn[21] = kwork[19];
                kn[22] = kwork[12];
                kn[23] = kwork[ 1];
                kn[24] = kwork[40];
                kn[25] = kwork[51];
                kn[26] = kwork[30];
                kn[27] = kwork[36];
                kn[28] = kwork[46];
                kn[29] = kwork[54];
                kn[30] = kwork[29];
                kn[31] = kwork[39];
                kn[32] = kwork[50];
                kn[33] = kwork[44];
                kn[34] = kwork[32];
                kn[35] = kwork[47];
                kn[36] = kwork[43];
                kn[37] = kwork[48];
                kn[38] = kwork[38];
                kn[39] = kwork[55];
                kn[40] = kwork[33];
                kn[41] = kwork[52];
                kn[42] = kwork[45];
                kn[43] = kwork[41];
                kn[44] = kwork[49];
                kn[45] = kwork[35];
                kn[46] = kwork[28];
                kn[47] = kwork[31];

                switch(iter){
                        case 0:
                                for (int k = 0; k<48;k++) { k1[k]=kn[k]; }
                                break;
                        case 1:
                                for (int k = 0; k<48;k++) { k2[k]=kn[k]; }
                                break;
                        case 2:
                                for (int k = 0; k<48;k++) { k3[k]=kn[k]; }
                                break;
                        case 3:
                                for (int k = 0; k<48;k++) { k4[k]=kn[k]; }
                                break;
                        case 4:
                                for (int k = 0; k<48;k++) { k5[k]=kn[k]; }
                                break;
                        case 5:
                                for (int k = 0; k<48;k++) { k6[k]=kn[k]; }
                                break;
                        case 6:
                                for (int k = 0; k<48;k++) { k7[k]=kn[k]; }
                                break;
                        case 7:
                                for (int k = 0; k<48;k++) { k8[k]=kn[k]; }
                                break;
                        case 8:
                                for (int k = 0; k<48;k++) { k9[k]=kn[k]; }
                                break;
                        case 9:
                                for (int k = 0; k<48;k++) { k10[k]=kn[k]; }
                                break;
                        case 10:
                                for (int k = 0; k<48;k++) { k11[k]=kn[k]; }
                                break;
                        case 11:
                                for (int k = 0; k<48;k++) { k12[k]=kn[k]; }
                                break;
                        case 12:
                                for (int k = 0; k<48;k++) { k13[k]=kn[k]; }
                                break;
                        case 13:
                                for (int k = 0; k<48;k++) { k14[k]=kn[k]; }
                                break;
                        case 14:
                                for (int k = 0; k<48;k++) { k15[k]=kn[k]; }
                              break;
                        case 15:
                                for (int k = 0; k<48;k++) { k16[k]=kn[k]; }
                                break;
                }
        }
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩亚州综合| 久久成人免费网| 美国毛片一区二区| av中文字幕在线不卡| 这里只有精品视频在线观看| 国产精品乱码久久久久久| 久久99精品久久久久久国产越南| 91国偷自产一区二区三区成为亚洲经典 | 欧美精品一区二区蜜臀亚洲| 亚洲乱码国产乱码精品精的特点| 国产自产高清不卡| 欧美久久久久久久久中文字幕| 国产清纯白嫩初高生在线观看91| 天涯成人国产亚洲精品一区av| 一本一道综合狠狠老| 欧美经典三级视频一区二区三区| 久久精品99久久久| 欧美老肥妇做.爰bbww| 亚洲综合色区另类av| 91色九色蝌蚪| 国产精品欧美久久久久无广告| 国产一区二区三区最好精华液| 91精品综合久久久久久| 亚洲精品亚洲人成人网在线播放| 成人午夜在线播放| 精品成人一区二区三区四区| 精品亚洲免费视频| 欧美成人国产一区二区| 免费在线视频一区| 日韩免费观看高清完整版| 日本网站在线观看一区二区三区| 在线观看视频欧美| 亚洲综合色婷婷| 欧美日精品一区视频| 亚洲最色的网站| 欧美中文字幕亚洲一区二区va在线| 伊人婷婷欧美激情| 欧美色图一区二区三区| 亚洲国产成人av网| 欧美日韩久久一区二区| 日韩二区三区四区| 日韩欧美一二区| 国产精品一区二区久久不卡| 国产三级久久久| av高清久久久| 亚洲二区视频在线| 欧美一区二区视频免费观看| 精品一区二区av| 欧美国产一区二区在线观看| va亚洲va日韩不卡在线观看| 一区二区三区.www| 欧美一级片在线观看| 国产精品白丝jk白祙喷水网站 | 国产精品网站在线| 91丨porny丨蝌蚪视频| 亚洲高清视频中文字幕| 日韩一区二区影院| 国产精品99久久久久| 亚洲精品欧美在线| 欧美福利视频一区| 国产1区2区3区精品美女| 亚洲精选视频免费看| 欧美一卡二卡在线观看| 成人自拍视频在线| 日韩av成人高清| 国产精品久久久久久久久图文区| 色婷婷激情一区二区三区| 蜜桃一区二区三区在线观看| 欧美国产成人精品| 91麻豆精品国产91久久久 | 欧美性xxxxxxxx| 激情文学综合丁香| 亚洲黄色小视频| 久久亚区不卡日本| 欧美这里有精品| 国产高清久久久| 婷婷成人激情在线网| 国产精品卡一卡二卡三| 日韩欧美在线观看一区二区三区| 国产麻豆精品视频| 日韩精品一级二级| 亚洲欧美另类图片小说| 欧美tickling挠脚心丨vk| 色综合天天综合网天天看片| 激情综合色综合久久综合| 一区二区三区影院| 中文字幕高清不卡| 欧美大度的电影原声| 91在线播放网址| 成人免费观看av| 久久精品久久综合| 亚洲国产精品久久人人爱| 综合分类小说区另类春色亚洲小说欧美| 欧美日韩国产欧美日美国产精品| jlzzjlzz亚洲女人18| 国产在线精品一区二区不卡了| 午夜欧美在线一二页| 亚洲精品日日夜夜| 国产精品乱子久久久久| 国产校园另类小说区| 欧美tickling网站挠脚心| 制服丝袜中文字幕一区| 欧美日韩在线一区二区| 日本乱人伦aⅴ精品| 成人avav在线| 成人av在线播放网站| 懂色av一区二区三区免费看| 久久99精品久久久久久久久久久久| 日本中文字幕不卡| 琪琪一区二区三区| 日本三级韩国三级欧美三级| 亚洲不卡av一区二区三区| 亚洲午夜激情网页| 国产另类ts人妖一区二区| 精品一区免费av| 久久国产成人午夜av影院| 秋霞影院一区二区| 免费三级欧美电影| 国产精品一区二区免费不卡 | 在线观看不卡视频| 欧美专区亚洲专区| 欧美性色综合网| 欧美日韩国产精选| 欧美欧美欧美欧美| 欧美第一区第二区| 中文字幕不卡的av| 亚洲欧美成人一区二区三区| 亚洲另类中文字| 午夜激情综合网| 国产又黄又大久久| proumb性欧美在线观看| 在线观看不卡一区| 欧美成人精品3d动漫h| 欧美国产日本视频| 夜夜操天天操亚洲| 久久激情五月婷婷| a亚洲天堂av| 欧美精品 日韩| 国产香蕉久久精品综合网| 亚洲欧美偷拍卡通变态| 午夜亚洲福利老司机| 国产综合色精品一区二区三区| 成人在线综合网| 欧美乱妇20p| 国产精品福利影院| 午夜精品免费在线| 国产大陆a不卡| 欧美在线一二三| 欧美精品一区二区三区一线天视频| 国产欧美日韩麻豆91| 午夜精品福利视频网站| 国产精品一区二区三区四区| 欧美日韩精品一区二区天天拍小说| 久久一区二区视频| 亚洲va韩国va欧美va精品| 国产尤物一区二区在线| 欧美在线影院一区二区| 国产亚洲精品福利| 日韩高清不卡一区二区三区| 成人a免费在线看| 精品国产乱码久久久久久久久| 亚洲视频一二区| 国产激情一区二区三区四区| 欧美日韩情趣电影| 国产精品久久久久国产精品日日| 天堂午夜影视日韩欧美一区二区| 成人午夜av在线| 日韩欧美一区电影| 亚洲成av人影院在线观看网| 成人开心网精品视频| 91精品在线免费观看| av一本久道久久综合久久鬼色| 日韩精品一区二区三区视频| 亚洲精品v日韩精品| 国产91综合一区在线观看| 欧美成人免费网站| 日韩经典一区二区| 在线观看免费视频综合| 亚洲手机成人高清视频| 风间由美一区二区三区在线观看 | 亚洲美女视频在线观看| 国产精选一区二区三区| 欧美电影免费观看高清完整版| 亚洲一区二区三区视频在线播放| 成人午夜激情片| 欧美国产日韩a欧美在线观看| 九色|91porny| 2019国产精品| 久久99热这里只有精品| 欧美精品日韩一本| 亚洲成人午夜影院| 在线视频一区二区三| 亚洲图片有声小说| 91久久精品一区二区| 自拍偷拍亚洲欧美日韩| av福利精品导航| 亚洲免费三区一区二区| 99久久精品一区| 亚洲精品中文在线影院| 99精品视频在线观看|