android 字符串加解密算法
16lz
2021-01-23
android 字符串加解密算法
/** *加密 **/ private String encryptPassword(String clearText) { try { DESKeySpec keySpec = new DESKeySpec( BuildConfig.PASSWORD_ENC_SECRET.getBytes("UTF-8")); SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); SecretKey key = keyFactory.generateSecret(keySpec); Cipher cipher = Cipher.getInstance("DES"); cipher.init(Cipher.ENCRYPT_MODE, key); String encrypedPwd = Base64.encodeToString(cipher.doFinal(clearText .getBytes("UTF-8")), Base64.DEFAULT); return encrypedPwd; } catch (Exception e) { } return clearText; }/** *解密 **/ private String decryptPassword(String encryptedPwd) { try { DESKeySpec keySpec = new DESKeySpec(BuildConfig.PASSWORD_ENC_SECRET.getBytes("UTF-8")); SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); SecretKey key = keyFactory.generateSecret(keySpec); byte[] encryptedWithoutB64 = Base64.decode(encryptedPwd, Base64.DEFAULT); Cipher cipher = Cipher.getInstance("DES"); cipher.init(Cipher.DECRYPT_MODE, key); byte[] plainTextPwdBytes = cipher.doFinal(encryptedWithoutB64); return new String(plainTextPwdBytes); } catch (Exception e) { } return encryptedPwd; }
更多相关文章
- 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜
- Android通过AES128加密解密字符串
- 2011.07.11(3)——— android xliff字符串操作
- android 加密字符串
- Android解析Xml字符串例子
- Android技能树 — 排序算法基础小结
- C#中算法的实例详解
- 解决 ASP.NET Core MySql varchar 字符串截取实例教程