Android 3DES加密
来源:互联网 发布:炒股软件接口 编辑:程序博客网 时间:2024/04/30 12:16
/** * 3DES加密解密工具类 * Created by 犀利的小牛 on 2016/7/29. */public class DES3Util { // 密钥 private final static String secretKey = "aaaaaaaaaaaaaaaaaaadaaaaa"; // 向量 private final static String iv = "999929999"; // 加解密统一使用的编码方式 private final static String encoding = "UTF-8"; /** * 3DES加密并UrL转码 */ public static String encode(String plainText) { try { SecretKey deskey = null; DESedeKeySpec spec = new DESedeKeySpec(secretKey.getBytes()); SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede"); deskey = keyfactory.generateSecret(spec); Cipher cipher = Cipher.getInstance("desede/CBC/PKCS5Padding"); IvParameterSpec ips = new IvParameterSpec(iv.getBytes()); cipher.init(Cipher.ENCRYPT_MODE, deskey, ips); byte[] encryptData = cipher.doFinal(plainText.getBytes(encoding)); return URLEncoder.encode(Base64.encode(encryptData), encoding); } catch (Exception e) { e.printStackTrace(); return null; } } /** * UrL解码并3DES解密 */ public static String decode(String encryptText) { try { SecretKey deskey = null; DESedeKeySpec spec = new DESedeKeySpec(secretKey.getBytes()); SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede"); deskey = keyfactory.generateSecret(spec); Cipher cipher = Cipher.getInstance("desede/CBC/PKCS5Padding"); IvParameterSpec ips = new IvParameterSpec(iv.getBytes()); cipher.init(Cipher.DECRYPT_MODE, deskey, ips); byte[] decryptData = cipher.doFinal(Base64.decode(URLDecoder.decode(encryptText, encoding))); return new String(decryptData, encoding); } catch (Exception e) { e.printStackTrace(); return null; } }}
0 0
- android 3des 加密
- Android 3DES加密
- [android]DES/3DES/AES加密方式
- Android DES/3DES/AES加密方式
- Android数据加密DES、3DES、AES
- Android端3DES加密
- Android实现3DES加密
- Android实现3DES加密
- android 3DES加密解密
- Java、Android和iPhone 3DES加密
- android java 3des加密 ECB/CBC
- android 的Base64+3DES加密
- android 基础 加密实现3DES
- Java/Android中的3DES加密
- android des 加密
- android DES加密
- Android DES加密解密
- android des 加密解密
- 数学理论部分
- JavaScript引用类型--Object类型
- 华为OJ——求int型数据在内存中存储时1的个数
- 关于spoolsv.exe 报错,并打印服务停止的问题
- CODEFORCES 430D Working out <动态规划 + 分治>
- Android 3DES加密
- 自动类型转换
- MPAndroidChart(GitHub上优秀得图表功能库)
- 评价人工神经部分
- c#学习笔记之获取当前路径
- Xcode的Product Name、Bundle Name、Bundle Display Name区别
- ajax提交数据到后台php接收
- 图论 BFS HDU 1175
- android studio 线程安全Only the original thread that created a view hierarchy can touch its views