DES加解密

@Test

public void test() throws Exception {

       String data = "lala";

        String key = "helloworld";

       String result = SystemUtil.encryptDES(data, key);

       Assert.assertEquals(SystemUtil.decryptDES(result, key), data);

       System.out.println(result);

  }

/**

     * DES

     *  加密

     * @param data

     * @param key

     * @return

     * @throws Exception

     */

    public static byte[] encryptDES(byte[] data, byte[] key) throws Exception {

       SecureRandom sr = new SecureRandom();

       DESKeySpec dks = new DESKeySpec(key);

       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(SystemUtil.KEY_ALGORITHM_DES);

       SecretKey securekey = keyFactory.generateSecret(dks);

      Cipher cipher = Cipher.getInstance(SystemUtil.KEY_ALGORITHM_DES);

       cipher.init(Cipher.ENCRYPT_MODE, securekey, sr);

       return cipher.doFinal(data);

    }

/**

     * DES

     *解密

     * @param data

     * @param key

     * @return

     * @throws Exception

     */

    public static byte[] decryptDES(byte[] data, byte[] key) throws Exception {

       SecureRandom sr = new SecureRandom();

       DESKeySpec dks = new DESKeySpec(key);

       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(SystemUtil.KEY_ALGORITHM_DES);

       SecretKey securekey = keyFactory.generateSecret(dks);

       Cipher cipher = Cipher.getInstance(SystemUtil.KEY_ALGORITHM_DES);

       cipher.init(Cipher.DECRYPT_MODE, securekey, sr);

       return cipher.doFinal(data);

    }

原文地址:https://www.cnblogs.com/jincieryi/p/9630052.html