信息加密之Base64
Base64是一种最简单的简单的加密形式,经常被使用,记录一下,以便日后可以深入了解。
jdk格式:
//获得密钥
Base64Encoder encoder = new Base64Encoder();
//加密
String encoder_jdk = encoder.encode(src.getBytes());
System.out.println("encoder : "+encoder);
//解密
byte[] decode_jdk = encoder.decode(encoder_jdk);
System.out.print(decode_jdk);
commonsCodes格式:
使用commonsCodesBase64加密需要添加一个jar包:commons-codec-1.10.jar
public static void commonsCodesBase64(){
//加密
byte[] encode_cc = org.apache.commons.codec.binary.Base64.encodeBase64(src.getBytes());
System.out.println("encode : "+encode_cc);
//解密
byte[] decode_cc = org.apache.commons.codec.binary.Base64.decodeBase64(encode_cc);
System.out.println("decode : "+new String(decode_cc));
}
bouncyCastle格式:
使用bouncyCastleBase64加密需要添加一个jar包:bcprov-jdk15on-149.jar
public static void bouncyCastleBase64(){
//加密
byte[] encode_bc = org.bouncycastle.util.encoders.Base64.encode(src.getBytes());
System.out.println("encode : "+encode_bc);
//解密
byte[] decode_bc = org.bouncycastle.util.encoders.Base64.decode(encode_bc);
System.out.println("decode :"+new String(decode_bc));
}
总结到此结束,非常的简单,没有技术含量,本人对信息安全很感兴趣,如果哪位肯赐教,不胜感激!(邮箱:1453296946@qq.com)
信息加密之Base64的更多相关文章
- 谈PHP中信息加密技术
同样是一道面试答错的问题,面试官问我非对称加密算法中有哪些经典的算法? 当时我愣了一下,因为我把非对称加密与单项散列加密的概念弄混淆了,所以更不用说什么非对称加密算法中有什么经典算法,结果当然也让面试 ...
- URL安全的Base64编码
Base64编码可用于在HTTP环境下传递较长的标识信息.在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式.此时,采用Base64编码不仅比较简短,同时也具有不可 ...
- Base64编码
Base64编码 写在前面 今天在做一个Android app时遇到了一个问题:Android端采用ASE对称加密的数据在JavaWeb(jre1.8.0_7)后台解密时,居然解密失败了!经过测试后发 ...
- Android数据加密之Base64编码算法
前言: 前面学习总结了平时开发中遇见的各种数据加密方式,最终都会对加密后的二进制数据进行Base64编码,起到一种二次加密的效果,其实呢Base64从严格意义上来说的话不是一种加密算法,而是一种编码算 ...
- java单向加密算法小结(1)--Base64算法
从这一篇起整理一下常见的加密算法以及在java中使用的demo,首先从最简单的开始. 简单了解 Base64严格来说并不是一种加密算法,而是一种编码/解码的实现方式. 我们都知道,数据在计算机网络之间 ...
- URI编码解码和base64
概述 对于uri的编解码,在js中有3对函数,分别是escape/unescape,encodeURI/decodeURI,encodeURIComponent/decodeURIComponent. ...
- 通过HTML5的Drag and Drop生成拓扑图片Base64信息
HTML5 原生的 Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过 ...
- Base-64 字符数组或字符串的长度无效等问题解决方案
项目特殊需要,调用ActiveX三维控件进行控件某一特殊部位的截图操作,这个截图保存由ActiveX控件控制保存到本地是没问题的,现在需要将这个截图上传到服务器,多人共享,就牵扯到需要读取本地文件…… ...
- android Base64 加密
一 Base64加密 import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStre ...
随机推荐
- javascript练习-扑克牌
下面用枚举类型来实现一副扑克牌的类: //定义一个玩牌的类 function Card(suit,rank){ function inherit(p){ if(p==null) throw TypeE ...
- [Leetcode][JAVA] Recover Binary Search Tree (Morris Inorder Traversal)
Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...
- javascript 中的事件机制
1.javascript中的事件. 事件流 javascript中的事件是以一种流的形式存在的. 一个事件会也有多个元素同时响应. 有时候这不是我们想要的效果, 我们只是需要某个特定的元素相应我们的绑 ...
- 编译系统中的 NFA/DFA算法理解
1.问题概述 NFA 和 DFA浅析---要深入了解正则表达式,必须首先理解有穷自动机. 有穷自动机(Finite Automate)是用来模拟实物系统的数学模型,它包括如下五个部分: 有穷状态集St ...
- 一个demo让你彻底理解Android触摸事件的并发
注:本文涉及的demo的地址:https://github.com/absfree/TouchDispatch 1. 触摸动作及事件序列 (1)触摸事件的动作 触摸动作一共有三种:ACTION_DOW ...
- html5 localStorage实现表单本地存储
随笔开头,我不得不吐槽,为什么我的随笔每次发布之后,都会在分分钟之内移出首页.好气啊!! 进入正题了,项目中有许多表单输入框要填写,还有一些单选复选框之类的.用户可能在填写了大量的信息之后,不小心刷新 ...
- android简单登陆和注册功能实现+SQLite数据库学习
最近初学android,做了实验室老师给的基本任务,就是简单的登陆和注册,并能通过SQLite实现登陆,SQlLite是嵌入在安卓设备中的 好了下面是主要代码: 数据库的建立: 这里我只是建立了一个用 ...
- jquery 获取 scrollHeight
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:匿名用户链接:http://www.zhihu.com/question/20985674/answer/16807177来源 ...
- 找回忘记的Ubuntu用户名和密码
找回忘记的Ubuntu用户名和密码 前端时间使用VMWare安装了个Ubuntn的虚拟机,但是烦于安装后显卡驱动的问题,看着操作界面就有点厌烦,就扔下了.今天打开虚拟机登陆的时候忘了密码,寻思着难道要 ...
- git 本地库提交至远程服务器
1. git init 2. git add . 3. git commit -am "###" -------以上3步只是本地提交 4.git remote add o ...