使用JDK的类 BASE64Decoder  BASE64Encoder

  1. package test;
  2. import sun.misc.BASE64Decoder;
  3. import sun.misc.BASE64Encoder;
  4. /**
  5. * BASE64加密解密
  6. */
  7. public class BASE64
  8. {
  9. /**
  10. * BASE64解密
  11. * @param key
  12. * @return
  13. * @throws Exception
  14. */
  15. public static byte[] decryptBASE64(String key) throws Exception {
  16. return (new BASE64Decoder()).decodeBuffer(key);
  17. }
  18. /**
  19. * BASE64加密
  20. * @param key
  21. * @return
  22. * @throws Exception
  23. */
  24. public static String encryptBASE64(byte[] key) throws Exception {
  25. return (new BASE64Encoder()).encodeBuffer(key);
  26. }
  27. public static void main(String[] args) throws Exception
  28. {
  29. String para = "{\"IdList1\": 1,\"IdList2\": [1,2,3,4,5,6,18],\"IdList3\": [1,2]}";
  30. String data = BASE64.encryptBASE64(para.getBytes());
  31. System.out.println("加密前:"+data);
  32. byte[] byteArray = BASE64.decryptBASE64(data);
  33. System.out.println("解密后:"+new String(byteArray));
  34. }
  35. }

使用Apache commons codec 类Base64获取【下载地址】

  1. package test;
  2. import java.io.UnsupportedEncodingException;
  3. import org.apache.commons.codec.binary.Base64;
  4. public class Base64Util {
  5. public static String encode(byte[] binaryData) throws UnsupportedEncodingException {
  6. return new String(Base64.encodeBase64(binaryData), "UTF-8");
  7. }
  8. public static byte[] decode(String base64String) throws UnsupportedEncodingException {
  9. return Base64.decodeBase64(base64String.getBytes("UTF-8"));
  10. }
  11. public static void main(String[] args) throws UnsupportedEncodingException {
  12. String para = "{\"IdList1\": 1,\"IdList2\": [1,2,3,4,5,6,18],\"IdList3\": [1,2]}";
  13. String data = Base64Util.encode(para.getBytes());
  14. System.out.println("加密前:"+data);
  15. byte[] byteArray = Base64Util.decode(data);
  16. System.out.println("解密后:"+new String(byteArray));
  17. }
  18. }

Java Base64 加密解密的更多相关文章

  1. password学3——Java BASE64加密解密

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之中的一个,大家能够查看RFC2045-RFC2049.上面有MIME的具体规范.Base64编码可用于在HTTP环境下传递较长的标识信息 ...

  2. Java Base64加密解密

    使用Apache commons codec 类Base64 maven依赖 <dependency> <groupId>commons-codec</groupId&g ...

  3. Java Base64 加密/解密

    Base64常用来表示字串加密过后的内容,使用Java 程式语言来实作Base64的编码与解码功能 1.在Java上做Base64的编码与解码,会使用到JDK里sun.misc套件下的BASE64En ...

  4. Java中使用BASE64加密&解密

    package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...

  5. Java Base64加密、解密原理Java代码

    Java Base64加密.解密原理Java代码 转自:http://blog.csdn.net/songylwq/article/details/7578905 Base64是什么: Base64是 ...

  6. Java android DES+Base64加密解密

    服务器与客户端加密解密传输, 中间遇到各种坑,客户端无论用AES还是DES解密时都会出现错误,后来才看到好多人说要用AES/DES加完密后还要BASE64加密,照做时发现android和java的Ba ...

  7. Java语言实现 Base64 加密 & 解密

    Java语言实现 Base64 加密 & 解密 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法. Base64 ...

  8. 使用jframe编写一个base64加密解密工具

    该工具可以使用exe4j来打包成exe工具(如何打包自己百度) 先上截图功能 运行main方法后,会弹出如下窗口 输入密文 然后点击解密,在点格式化 代码分享 package tools;import ...

  9. C# 实现 JAVA AES加密解密[原创]

    以下是网上普遍能收到的JAVA AES加密解密方法. 因为里面用到了KeyGenerator 和 SecureRandom,但是.NET 里面没有这2个类.无法使用安全随机数生成KEY. 我们在接收J ...

随机推荐

  1. ios模拟器未能安装此应用程序

    网上介绍了很多方法,觉得有些不太靠谱.这里只解释我试验过的最简单最粗暴的方法: 删除模拟器上旧的APP 以外,也可以做 CLEAN (cmd+shift+K) 把旧的build 删掉.

  2. Java高级开发工程师

  3. crm 2011 plugin setparent setbusiness 用户更改经理 更改办事处

    背景: 在更改经理或者更改办事处时,使用plugin处理相应的团队. 问题:plugin写完,注册时发现使用update注册没有效果,然后bing得到,这里要使用setbusiness 和 setpa ...

  4. ubuntu 命令行软件包管理

    安装软件包 apt-get install vim 卸载 apt-get remove/autoremove vim autoremove 会顺便卸载未使用,未被依赖的软件包 查询或者搜索软件包:: ...

  5. How to get the date N days ago in Python

    from datetime import datetime, timedelta N = 2 date_N_days_ago = datetime.now() - timedelta(days=N) ...

  6. 光流算法:Brox算法

    参考论文:1. High Accuracy Optical Flow Estimation Based on a Theory for Warping, Thomas Box, ECCV20042. ...

  7. sql 2008 r2

    http://jingyan.baidu.com/article/6c67b1d6ca06f02787bb1ed1.html

  8. 菜鸟-手把手教你把Acegi应用到实际项目中(6)

    在企业应用中,用户的用户名.密码和角色等信息一般存放在RDBMS(关系数据库)中.前面几节我们采用的是InMemoryDaoImpl,即基于内存的存放方式.这节我们将采用RDBMS存储用户信息. Us ...

  9. char nchar varchar nvarchar的区别(转)

    char nchar  varchar nvarchar的区别   今天在论坛里看到有人激烈讨论这几个数据类型的区别跟实际使用情况,很多人都搞不清楚究竟哪个场景使用哪个数据类型 现在就摘录一下sql2 ...

  10. Redis多机功能之复制

    复制的目的:创建具有相同数据库的拷贝服务器:扩展系统处理读请求的能力: 复制的定义 Redis的复制(replication)功能允许用户根据一个Redis服务器来创建任意多个该服务器的复制品,其中被 ...