⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 initpsw.java

📁 S-DES加、解密程序
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package s_des;/** * * @author CJPHENRY */public class InitPSW {    /**     * @param args the command line arguments     */    public int[] PSW;    public int[] P10;    public int[] LS1;    public int[] K1;    public int[] LS2;    public int[] K2;        InitPSW(){        PSW = new int[10];        P10 = new int[10];        LS1 = new int[10];        K1 = new int[8];        LS2 = new int[10];        K2 = new int[8];    }    public void calculate(int[] inf){        setPSW(inf);        setP10();        LS1();        createK1();        LS2();        createK2();        disPlay(PSW);        disPlay(P10);        disPlay(LS1);        disPlay(K1);        disPlay(LS2);        disPlay(K2);    }    private void setPSW(int[] inf){        for(int i = 0; i < inf.length ;i++){            PSW[i] = inf[i];        }    }        private void setP10(){        P10[0] = PSW[2];        P10[1] = PSW[4];        P10[2] = PSW[1];        P10[3] = PSW[6];        P10[4] = PSW[3];        P10[5] = PSW[9];        P10[6] = PSW[0];        P10[7] = PSW[8];        P10[8] = PSW[7];        P10[9] = PSW[5];    }    private void createK1(){        K1[0] = LS1[5];        K1[1] = LS1[2];        K1[2] = LS1[6];        K1[3] = LS1[3];        K1[4] = LS1[7];        K1[5] = LS1[4];        K1[6] = LS1[9];        K1[7] = LS1[8];    }    private void createK2(){        K2[0] = LS2[5];        K2[1] = LS2[2];        K2[2] = LS2[6];        K2[3] = LS2[3];        K2[4] = LS2[7];        K2[5] = LS2[4];        K2[6] = LS2[9];        K2[7] = LS2[8];    }    private void LS1(){                //LS1,左半密钥循环左移一位        for(int i = 0; i < 4; i++)LS1[i] = P10[i+1];        LS1[4] = P10[0];                //LS1,右半密钥循环左移一位        for(int i = 5; i < 9; i++)LS1[i] = P10[i+1];        LS1[9] = P10[5];    }    private void LS2(){        //LS2,左半密钥循环左移两位        for(int i = 0; i < 3; i++)LS2[i] = LS1[i+2];        LS2[3] = LS1[0];        LS2[4] = LS1[1];                //LS2,右半密钥循环左移两位        for(int i = 5; i < 8; i++)LS2[i] = LS1[i+2];        LS2[8] = LS1[5];        LS2[9] = LS1[6];    }        private void disPlay(int[] inf){        System.out.println(inf.length);        for(int i = 0;i < inf.length;i++){            System.out.print(" " + inf[i]);        }        System.out.println();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -