JAVA SHA-1加密及DES加解密
阿新 • • 發佈:2019-02-06
//獲取祕鑰 public static SecretKey readKey(){ try { String skey = "XXXXXXXXXXXXXXX"; byte[] bs = skey.getBytes("UTF8"); //建立DESKeySpec物件 DESKeySpec dks = new DESKeySpec(bs); //轉換DESKeySpec為SecretKey物件 SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); SecretKey key = keyFactory.generateSecret(dks); return key; } catch (Exception e) { e.printStackTrace(); } return null; } // 加密密碼 public static String enPass(String password){ try { SecretKey key = readKey(); Cipher cip = Cipher.getInstance("DES"); cip.init(Cipher.ENCRYPT_MODE, key); byte[] cipBytes = cip.doFinal(password.getBytes()); String sblob = new BASE64Encoder().encode(cipBytes); return sblob; } catch (Exception e) { e.printStackTrace(); } return null; } //解密密碼 public static String dePass(String password){ try { byte[] keyBuffer = new BASE64Decoder().decodeBuffer(password); SecretKey key = readKey(); Cipher cip = Cipher.getInstance("DES"); cip.init(Cipher.DECRYPT_MODE, key); String stmp = new String(cip.doFinal(keyBuffer),"UTF8"); return stmp; } catch (Exception e) { e.printStackTrace(); } return null; }