base64、sha256、MD5加密
异或可逆加密操作:A对B异或结果C;A对C异或结果为A;二次异或是本身
package en_decode; public class test {
public static String xor(String input) {
char[]chars=input.toCharArray();
for(int i=0;i<chars.length;i++) {
chars[i]=(char) (chars[i]^3000); //^异或
}
String new1=new String(chars);
return new1;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String aString="abc";
aString=xor(aString);
System.out.println(aString); aString=xor(aString);
System.out.println(aString);
} }
package en_decode; import org.apache.commons.codec.digest.DigestUtils; public class test {
// public static String xor(String input) {
// char[]chars=input.toCharArray();
// for(int i=0;i<chars.length;i++) {
// chars[i]=(char) (chars[i]^3000); //^异或
// }
// String new1=new String(chars);
// return new1;
// }
//
public static String MD5encode(byte[] input) {//速度快,不可逆 安全性低 return DigestUtils.md5Hex(input); }
public static String SHAencode(byte[] input) {//速度慢 不可逆 安全性高 return DigestUtils.sha256Hex(input); }
public static void main(String[] args) {
// // TODO Auto-generated method stub
// String aString="abc";
// aString=xor(aString);
// System.out.println(aString);
//
// aString=xor(aString);
// System.out.println(aString);
String gg="hello";
String t1=MD5encode(gg.getBytes());
System.out.println(t1); String t2=SHAencode(gg.getBytes());
System.out.println(t2);
} }
package en_decode;
import org.apache.commons.codec.binary.Base64;
public class test { public static byte[] decode( String gg) {
return Base64.decodeBase64(gg);
}
public static String encode(byte[] bytes) {
return new String(Base64.encodeBase64(bytes));
}
public static void main(String[] args) { String gg="hello";
gg=encode(gg.getBytes());
System.out.println(gg);
byte[]hh=decode(gg);
System.out.println(new String(hh)); } }
导入包:commons-codec-1.10
base64、sha256、MD5加密的更多相关文章
- iOS base64编码 MD5 加密
//创建一个Base64编码的NSString对象 //字符串 转二进制 NSData *nsdata = [@"iOS Developer Tips encoded in Base64&q ...
- nodejs 使用crypto实现sha256\md5加密
var crypto = require('crypto'); var hash = crypto.createHash('sha256');// sha256或者md5 hash.update('1 ...
- MD5加密、时间戳转换、base64算法加密、解密
#region MD5加密 /// <summary> /// MD5加密 /// </summary> /// <param name="str"& ...
- MD5加密,Base64加密/解密,AES加密/解密
1.从github上下载GTMBase64-master和AESCrypt-ObjC-master导入工程,如下图所示. 2.使用前的配置及注意事项: (1) 在build phases中的GTMBa ...
- Java实现 Base64、MD5、MAC、HMAC加密
开始对那些基本的加密还不怎么熟练,然后总结了些,写了一个测试:支持 Base64.MD5.MAC.HMAC加密,长话短说,我们都比较喜欢自己理解,看代码吧! 采用的输UTF-8的格式... packa ...
- Java实现 Base64、MD5、MAC、HMAC加密(转)
开始对那些基本的加密还不怎么熟练,然后总结了些,写了一个测试:支持 Base64.MD5.MAC.HMAC加密,长话短说,我们都比较喜欢自己理解,看代码吧! 采用的输UTF-8的格式... packa ...
- Linux下使用MD5加密BASE64加密
这里以字符串123456为例子,它的md5密文值为:e10adc3949ba59abbe56e057f20f883e 这里以1.txt为需要被加密的文件. 一. 用oppnssl md5 加密字符串和 ...
- .net实现md5加密 sha1加密 sha256加密 sha384加密 sha512加密 des加密解密
写项目时,后台一直用md5加密,一天群里人问,除了MD5还有其它的加密方法吗?当时只知道还有个SHA,但怎么实现什么的都不清楚,于是当网上找了下,把几种常见的加密方法都整理了下,用winform写了个 ...
- js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
写前端的时候,很多的时候是避免不了注册这一关的,但是一般的注册是没有任何的难度的,无非就是一些简单的获取用户输入的数据,然后进行简单的校验以后调用接口,将数据发送到后端,完成一个简单的注册的流程,那么 ...
- JS实现的base64加密、md5加密及sha1加密详解
1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset ...
随机推荐
- 探索Redis设计与实现10:Redis的事件驱动模型与命令执行过程
本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...
- jQuery插件之——弹窗框(模态框)leanModal
1.首先在网上下载jquery.leanModal.min.js,添加到你的页面参考网址:https://blog.csdn.net/NTDDLIN... LeanModal.js下载地址: http ...
- 本地安装了flash,前台浏览器还显示需要安装flash?是因为版本需要对应
NPAPI:适用于FireFox(火狐).Safari(苹果).Opera (欧朋,12.17版以下) PPAPI:适用于Chromium浏览器.Opera (欧朋,15.00版以上) ActiveX ...
- maven项目中 把依赖的jar包一起打包
1.pom.xml 配置文件: 在pom.xml配置文件中添加 <build> <plugins> <plugin> <artifactId>maven ...
- c# Winform实现发送邮件
邮件发送类 来源网上 稍作调整...出处忘了 /** * 命名空间: EmailSend * 类 名: EmailSend * * 作者 变更内容 变更日期 * ─ ...
- shiro安全框架的使用流程
最近学了shiro安全框架流程,在这里梳理一下shiro的工作流程和一些代码,方便以后使用的时候,能快速找到对应的代码. 要使用这个shiro框架,还要新建两张表 t_authority(权限表)和t ...
- BUUCTF MISC ZIP
这道题有点烦,拿出来单独写先贴两张图,一会用 首先这题给了68个压缩包,每个压缩包里只有4bytes大小,于是可以想到是crc爆破,自己写的脚本总是被killed,犯懒找了个脚本 import zip ...
- java.sql.BatchUpdateException: ORA-01861: 文字与格式字符串不匹配
解决: to_date(#runtime#,'yyyy-MM-dd HH24:mi:ss'), <!-- 执行时间:DATE -->
- Redis哨兵机制(sentinel)
1.简介: 1.是什么: Redis-Sentinel是Redis官方推荐的高可用(HA)方案,当用Reids 做master-slave高可用方案时,假如master宕机了,redis本身(包括它的 ...
- 2019-5-21-win10-uwp-url-encode
title author date CreateTime categories win10 uwp url encode lindexi 2019-5-21 9:54:7 +0800 2018-2-1 ...