public String encrypt(String str) { try { SecretKeySpec key = new SecretKeySpec(this.key.getBytes(), "Blowfish"); Cipher cipher = Cipher.getInstance("Blowfish/ECB/NoPadding"); cipher.init(Cipher.ENCRYPT_MODE, key); return Base64.encodeBytes(cipher.doFinal(pad(str).getBytes())); } catch (Exception e) { return null; } }
public String decrypt(String str) { try { SecretKeySpec key = new SecretKeySpec(this.key.getBytes(), "Blowfish"); Cipher cipher = Cipher.getInstance("Blowfish/ECB/NoPadding"); cipher.init(Cipher.DECRYPT_MODE, key); byte[] decrypted = cipher.doFinal(Base64.decode(str)); return new String(decrypted).replaceAll("\\x00+$", ""); } catch (Exception e) { return null; } }