package cn.springmvc.util;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class SecurityIDUtil {
/**
* Encrypt string using MD5 algorithm
*/
public final static String encryptMD5(String source) {
if (source == null) {
source = "";
}
String result = "";
try {
result = encrypt(source, "MD5");
} catch (NoSuchAlgorithmException ex) {
// this should never happen
throw new RuntimeException(ex);
}
return result;
}
/**
* Encrypt string using SHA algorithm
*/
public final static String encryptSHA(String source) {
if (source == null) {
source = "";
}
String result = "";
try {
result = encrypt(source, "SHA");
} catch (NoSuchAlgorithmException ex) {
// this should never happen
throw new RuntimeException(ex);
}
return result;
}
/**
* Encrypt string
*/
private final static String encrypt(String source, String algorithm)
throws NoSuchAlgorithmException {
byte[] resByteArray = encrypt(source.getBytes(), algorithm);
return toHexString(resByteArray);
}
/**
* Encrypt byte array.
*/
private final static byte[] encrypt(byte[] source, String algorithm)
throws NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance(algorithm);
md.reset();
md.update(source);
return md.digest();
}
/**
* Get hex string from byte array
*/
private final static String toHexString(byte[] res) {
StringBuffer sb = new StringBuffer(res.length << 1);
for (int i = 0; i < res.length; i++) {
String digit = Integer.toHexString(0xFF & res[i]);
if (digit.length() == 1) {
digit = '0' + digit;
}
sb.append(digit);
}
return sb.toString().toUpperCase();
}
}

正在做一个项目记录项目点点滴滴

密码加密md5和sha的更多相关文章

  1. Java 自带的加密类MessageDigest类(加密MD5和SHA)

    Java 自带的加密类MessageDigest类(加密MD5和SHA) - X-rapido的专栏 - CSDN博客 https://blog.csdn.net/xiaokui_wingfly/ar ...

  2. 密码加密MD5,Bash64

    基于jar : org.apache.commons.codec 一.MD5概述:不可逆加密 Message Digest Algorithm MD5(中文名为消息摘要算法第 五版)为计算机安全领域广 ...

  3. 用户角色权限查询添加bug集锦 用户密码加密 MD5 加盐 随机盐 spring的加密bcrypt

    package cn.itcast.encode; import org.apache.commons.lang3.RandomStringUtils; import org.springframew ...

  4. 文件加密,密码加密,os模块

    序列化模块 (非常非常重要) 序列化:将一个数据结构(list,dict....)转化成一个特殊的序列(特殊的字符串)的过程. # l1 = [1, 2, 3] # ret = str(l1) # p ...

  5. MD5 与 SHA 在 Delphi 中函数实现,加密密码

    MD5 与 SHA 在 Delphi 中函数实现. 为了加密密码,必须使用一种算法,查询资料,比较好的方法是使用:MD5等算法,参考:Delphi XE8 支持MD5 第一种方式是:引用 System ...

  6. (转)DES、RSA、MD5、SHA、随机生成加密与解密

    一.数据加密/编码算法列表   常见用于保证安全的加密或编码算法如下:   1.常用密钥算法   密钥算法用来对敏感数据.摘要.签名等信息进行加密,常用的密钥算法包括:   DES(Data Encr ...

  7. MD5和SHA加密实现

    @Test public void TestMD5AndSHA() throws NoSuchAlgorithmException { String MD5=Md5("123456" ...

  8. Java的单向加密算法MD5和SHA——加密和解密

    出自:http://www.cnblogs.com/onetwo/p/3875551.html 1.JDK中MD5和SHA加密的主要类 在JDK6.0中,与MD5与SHA密切相关的几个类的类图如下:  ...

  9. Spring-Security (学习记录五)--配置登录时,密码采用md5加密,以及获取登录信息属性监听同步自己想要的登录信息

    目录 1. PasswordEncoder 采用密码加密 2. 获取当前的用户信息 1. PasswordEncoder 采用密码加密 使用前面的例子.可以看出我们数据库密码是采用明文的,我们在登录的 ...

随机推荐

  1. linux下tomcat的安装

    本文主要内容: (1)安装apr,这是 Apache 为了提升 Tomcat 的性能搞的一套本地化 Socket, Thread, IO 组件也就是说它有高级 IO 功能, 操作系统级别的功能调用, ...

  2. css important

    !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权.语法格式{ cssRule !important },即 写在定义的最后面,例如:box{color:red !impo ...

  3. Linux查看目录挂载点

    用命令 df 即可 # df /var/lib/ Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda3 135979984 669 ...

  4. Sqlserver循环嵌套

    1.游标的状态,游标的开启游标的选择都是需要注意的. USE [ccnu] GO /****** Object: StoredProcedure [dbo].[P_ADD_DATA_XSBLHYCQK ...

  5. opengl雾开启

    #include <GL/glut.h> #include <stdio.h> #include <iostream> using namespace std; s ...

  6. Python守护进程(多线程开发)

    本段代码主要作用是httpsqs队列的消费端守护进程,从httpsqs中取出数据,放入mongodb #!/usr/bin/python import sys,time,json,logging im ...

  7. Web程序发布后显示个性化图标

    采用Tomcat发布程序后,浏览器上默认显示程序的图标是Tomcat图标.如下图所示: 需要显示自己个性化的图标,比如,这里显示一个图标. 只需要如下三步设置即可. 将制作的ico图标放在程序的根目录 ...

  8. Anagrams问题

    #include<stdio.h> #include<string.h> int main() { int i; ],word2[]; //分别用于存储输入的两个单词 int ...

  9. JS & DOM 对象

    22:36 2013/6/4 详情参照W3C文档标准 Browser 对象(顶层对象) DOM Window DOM Navigator DOM Screen DOM History DOM Loca ...

  10. spring framework 各版本源码下载地址

    现在spring的源码下载地址真是不好找,这次终于找到了.记录一下,以帮助需要的朋友. https://github.com/spring-projects/spring-framework/tags ...