几种常见的加密算法
下面写几种常见的方法涉及到的工具方法。
1. Base64加密算法
Base64加密算法是网络上最常见的用于传输8bit字节代码的编码方式之一,Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在JAVAPERSISTENCE系统HIBEMATE中,采用了Base64来将一个较长的唯一标识符编码为一个字符串,用作HTTP表单和HTTPGETURL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。
String 和 base64 的相互转换:
public static String stringtobase64(String s) {
try {
String encodeStr = Base64.encodeToString(s.getBytes(), Base64.DEFAULT);
return encodeStr;
} catch (Exception e) {
return s;
}
}
public static String base64tostring(String s) {
try {
String decodeStr = new String(Base64.decode(s.getBytes(), Base64.DEFAULT));
return decodeStr;
} catch (Exception e) {
return s;
}
}
2.Md5(消息摘要)
MD5为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。对MD5加密算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成—个128位散列值。
MD5被广泛用于各种软件的密码认证和钥匙识别上。MD5用的是哈希函数,它的典型应用是对一段信息产生信息摘要,以防止被篡改。MD5的典型应用是对一段Message产生fingerprin指纹,以防止被“篡改”。如果再有—个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。MD5还广泛用于操作系统的登陆认证上,如UNIX、各类BSD系统登录密码、数字签名等诸多方。
/**
* Md5Encoder
*
*/
public static String encodeMD5toUpperCase32(String str) {
try {
MessageDigest md;
md = MessageDigest.getInstance("MD5");
byte[] bt = str.getBytes();
md.update(bt);
str = bytes2Hex(md.digest()); // to HexString
} catch (Exception e) {
e.printStackTrace();
}
return str.trim().toUpperCase();
}
private static String bytes2Hex(byte[] bts) {
StringBuilder des = new StringBuilder();
String tmp;
for (byte bt : bts) {
tmp = (Integer.toHexString(bt & 0xFF));
if (tmp.length() == 1) {
des.append("0");
}
des.append(tmp);
}
return des.toString();
}
关于更多加密算法的介绍和区别,详情参考如下文章:
https://www.cnblogs.com/sunxuchu/p/5483956.html
https://blog.csdn.net/ddffr/article/details/77153127
上一篇: springmvc简单构建一个项目(一) 博客分类: springmvc springmvcjava
下一篇: Spring MVC纯注解配置工程简单实例——Hello World 博客分类: 搭建工程 springmvc无web.xml纯注解配置Hello World
推荐阅读
-
Java的加密技术(BASE64与单向加密算法MD5,SHA,MAC)
-
几种常见的加密算法
-
常见加密算法
-
Java追加内容到文件末尾的几种常用方法 博客分类: Java追加内容到文件末尾的几种常用方法 javaio
-
MySQL:replace函数的几种实用场景
-
Android 加密解密的几种方式总结
-
Android中常用的加密算法——MD5加密
-
cocos2dx-lua捕获用户touch事件的几种方式
-
Gson 过滤字段的几种方法
-
在UpdatePanel下导出excel出现无法分析从服务器收到的消息。之所以出现此错误,常见的原因是: 在通过调用 Response.Write() 修改响应 博客分类: ASP.NET excel