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 ...
随机推荐
- Emgucv图像处理工具
此工具是当年自己在学习Emgucv的时候,慢慢积累的,包含了常用的图像处理算法,非常适合新人学习,现放出源码,由于是以前做的,功能不全. 当时Emgucv的学习资料非常之少,没有一本书是讲Emgucv ...
- What is the difference between UserControl, WebControl, RenderedControl and CompositeControl?
What is the difference between UserControl, WebControl, RenderedControl and CompositeControl? UserCo ...
- 95、自然语言处理svd词向量
import numpy as np import matplotlib.pyplot as plt la = np.linalg words = ["I","like& ...
- Django 模型中的CRUD
一.通过 ORM 向 DB 中增加数据 1.Entry.objects.create(属性=值,属性=值) Entry:具体要操作的Model类 ex: Author.objects.create(n ...
- mysql 个人博客应用的建表和相关查询
一.建表 用户表tb_user create table if not exists tb_user( user_id int auto_increment, ) not null, user_pas ...
- 03、python的基础-->str字符串的使用
1.字符串首字母大写 s = "aksjdjjhfhdhjaGGGGkkk" s1 = s.capitalize() print(s1) 2.字符串全部字母大写 s = " ...
- 使用正则限制input框只能输入数字/英文/中文等等
常用HTML正则表达式 1.只能输入数字和英文的: 复制代码代码如下: <input onkeyup="value=value.replace(/[/W]/g,'') " o ...
- jsp页面间的传值方法
JSP页面间传递参数是经常需要使用到的功能,有时还需要多个JSP页面间传递参数.下面介绍一下实现的方法. (1)直接在URL请求后添加 如:< a href="thexuan.jsp? ...
- 热修复设计之CLASS_ISPREVERIFIED(二)
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将继续从CLASS_ISPREVERIFIED实战来介绍热 ...
- [已解决]报错: Python Scrapy - service_identity(opentype) not working and cannot install
解决:更新安装service_identity pip3 install service_identity --force --upgrade