加解密---Base64
1、算法实现:
1.1 JDK提供;
package com.exiuge.mytest; import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder; public class JdkBase64 { private static String src="hello,rose"; public static void main(String[] args)throws Exception{
endeCode(src);
} public static void endeCode(String src)throws Exception{
BASE64Encoder base64Encoder=new BASE64Encoder();
String des=base64Encoder.encode(src.getBytes());
System.out.println(des); BASE64Decoder base64Decoder=new BASE64Decoder();
String deSrc=new String(base64Decoder.decodeBuffer(des));
System.out.println(deSrc);
}
}
1.2 Commons Codec提供;
package com.exiuge.mytest;
import org.apache.commons.codec.binary.Base64;
public class CommonsCodecBase64 {
private static String src="hello,rose";
public static void main(String[] args){
enDeCode(src);
}
public static void enDeCode(String src){
String des=new String(Base64.encodeBase64(src.getBytes()));
System.out.println(des);
String deSrc=new String(Base64.decodeBase64(des));
System.out.println(deSrc);
}
}
1.3 Bouncy Castle提供:
package com.exiuge.mytest;
import org.bouncycastle.util.encoders.Base64;
public class BouncyCastleBase64 {
private static String src="hello,rose";
public static void main(String[] args){
enDeCode(src);
}
public static void enDeCode(String src){
String des=new String(Base64.encode(src.getBytes()));
System.out.println(des);
String deSrc=new String(Base64.decode(des));
System.out.println(deSrc);
}
}
2、应用场景
e-mail、秘钥、证书文件
3、Base64算法产生原因
邮件的“历史问题”
4、Base64算法定义
基于64个字符的编码算法
加解密---Base64的更多相关文章
- JAVA加解密 -- Base64加解密
Base64算法实现:可以将任意的字节数组数据,通过算法,生成只有(大小写英文.数字.+./)(一共64个字符)内容表示的字符串数据. private static final String str ...
- base64/62 加解密的实现。
base64/62加解密代码下载地址: http://files.cnblogs.com/files/Kingfans/base64(62)加解密.zip base64: base62:
- iOS - (base64对字符串加解密)
今天公司让做支付系统,为了安全起见,需要对一些数据进行加密,然而我首想到的就是 base64 ,严格来说这不是一种加密方式,这只是将原有的一些字符串或者其它的一些文本进行一个转化而已,就是转化成数字, ...
- 1.Java 加解密技术系列之 BASE64
Java 加解密技术系列之 BASE64 序号 背景 正文 总结 序 这段时间,工作中 用到了 Java 的加解密技术,本着学习的态度,打算从这篇文章开始,详细的研究一番 Java 在加解密技术上有什 ...
- 讲讲网络模块中加解密那点儿事--AES+BASE64
本篇文章已授权微信公众号 dasuAndroidTv(大苏)独家发布 这次想来讲讲网络安全通信这一块,也就是网络层封装的那一套加密.解密,编码.解码的规则,不会很深入,但会大概将这一整块的讲一讲. 之 ...
- 前端base64、baseurl加解密和RSA加解密
由于项目最近要进行安全测试,前端的用户和密码都是明文数据传送给后台那里,其实这样很很不安全的,容易泄露个人信息和密码.中间服务器的同事就提出,可以通过前端接收公钥,利用公钥对密码进行加密,把加密过密码 ...
- 使用Apache commons-codec Base64实现加解密(转)
commons-codec是Apache下面的一个加解密开发包 官方地址为:http://commons.apache.org/codec/ 官方下载地址:http://commons.apache. ...
- android中的MD5、Base64、DES/3DES/ADES加解密
MD5摘要算法: <span style="font-size:18px;">主要代码: String s = edit.getText().toString(); i ...
- 【VBA研究】如何用Base64 编解码方法实现简单的加解密
Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码,将数据变成字符串实现文本传输.由于编码简单,所以很容易实现,代码也是现成的.利用这个编码规则可以实现简单的加解密.编解码方 ...
随机推荐
- 100198H Royal Federation
传送门 题目大意 国家有N个城市,任意城市可以到达任意城市,是一棵树.国王要给这些城市分省份.每个省份最少M个城市,最多3M个城市.每个省有一个首府,首府不一定是这个省的城市,只是首府到这个省各个城市 ...
- 2015年阿里实习生面试Java研发工程师 小记
5月5日,广州,阿里实习生面试,Java研发工程师,完全被虐orz 几乎没有Java项目开发经验,接近零基础,去水了一发,毫无悬念的被刷了..RP也是杠杠的,准备过的题目一个都没被问到,算法题也是一条 ...
- 在windows中安装OpenSSH,无密码登录,永远不断线
到这里下载最新安装包:https://github.com/PowerShell/Win32-OpenSSH/releases下载下来解压,然后用管理员打开服务器自带的PowerShell,运行下列命 ...
- WordCount编码和测试
WordCount编码和测试 项目地址:https://github.com/handsomesnail/WordCount PSP表格 PSP2.1 PSP阶段 预估耗时(分钟) 实际耗时(分钟) ...
- LeetCode第114题:二叉树展开为链表
问题描述 给定一个二叉树,原地将它展开为链表. 例如,给定二叉树 1 / \ 2 5 / \ \ 3 4 6 将其展开为: 1 \ 2 \ 3 \ 4 \ 5 \ 6 解题思路 二叉树的一些算法题都可 ...
- String的split(String regex, int limit)方法小结
split(String regex, int limit)方法,头一个参数String regex表示字符串分割的模式,包括分隔符和正则表达式:但是第二个参数limit比较迷糊人,api中这样解释: ...
- ASP.NET MVC之"重定向/页面跳转"(关键词RedirectToAction,Redirect)
MVC5 API(官方) 1.RedirectToRouteResult RedirectToAction(string actionName); RedirectToRouteResult Redi ...
- javascript dom与字符串相互转换
js dom与字符串相互转换 一.字符串转换dom: function stringToDom(str){ var obj=document.createElement("div" ...
- cin、cout、cerr、clog------c++ Primer Plus
cin对象与标准输入流相对应. cout对象与标准输出流相对应. cerr对象与标准错误流相对应,常用于程序错误信息,不缓冲,直接被发送给屏幕. clog对象也对应标准错误流(这点儿和cerr是一样的 ...
- LINQ和Lambda表达式
前言 前段时间接触了一种新的表达式,但是不知道这个是什么意思,所以就先站在巨人的肩膀用了,现在听师哥说这种写法是Lambda表达式.我一直以为,这个Lambda表达式和LINQ查询有异曲同工之妙,可惜 ...