- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Java实现MD5加密》.pdf
Java 实现MD5 加密以及解密类,附带测试类,具体见代码。
MD5 加密解密类——MyMD5Util,代码如下:
view plaincopy to clipboardprint?
package com.zyg.security.md5;
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.Arrays;
public class MyMD5Util {
private static final String HEX_NUMS_STR=0123456789ABCDEF;
private static final Integer SALT_LENGTH = 12;
/**
* 将16 进制字符串转换成字节数组
* @param hex
* @return
*/
public static byte[] hexStringToByte(String hex) {
int len = (hex.length() / 2);
byte[] result = new byte[len];
char[] hexChars = hex.toCharArray();
for (int i = 0; i len; i++) {
int pos = i * 2;
result[i] = (byte) (HEX_NUMS_STR.indexOf(hexChars[pos]) 4
| HEX_NUMS_STR.indexOf(hexChars[pos + 1]));
}
return result;
}
/**
* 将指定byte 数组转换成16 进制字符串
* @param b
* @return
*/
public static String byteToHexString(byte[] b) {
StringBuffer hexString = new StringBuffer();
for (int i = 0; i b.length; i++) {
String hex = Integer.toHexString(b[i] 0xFF);
if (hex.length() == 1) {
hex = 0 + hex;
}
hexString.append(hex.toUpperCase());
}
return hexString.toString();
}
/**
* 验证口令是否合法
* @param password
* @param passwordInDb
* @return
* @throws NoSuchAlgorithmException
* @throws UnsupportedEncodingException
*/
public static boolean validPassword(String password, String passwordInDb)
throws NoSuchAlgorithmException, UnsupportedEncodingException {
//将16 进制字符串格式口令转换成字节数组
byte[] pwdInDb = hexStringToByte(passwordInDb);
//声明盐变量
byte[] salt = new byte[SALT_LENGTH];
//将盐从数据库中保存的口令字节数组中提取出来
System.arraycopy(pwdInDb, 0, salt, 0, SALT_LENGTH);
//创建消息摘要对象
MessageDigest md = MessageDigest.getInstance(MD5);
//将盐数据传入消息摘要对象
md.update(salt);
//将
您可能关注的文档
- 《Introduction to Psychology 9th ed. James W. Kalat Chapter 1 (pp. 1-26)》.pdf
- 《Introduction to Psychology 9th ed. James W. Kalat Chapter 16 (pp. 568-611)》.pdf
- 《Introduction to Psychology 9th ed. James W. Kalat Chapter 7 (pp. 233-271)》.pdf
- 《Introduction to Psychology 9th ed. James W. Kalat Chapter 8 (pp. 272-312)》.pdf
- 《Introduction to Psychology 9th ed. James W. Kalat Chapter 9 (pp. 313-339)》.pdf
- 《Introduction(UK)》.ppt
- 《Inverted_Classroom_Paper》.pdf
- 《investigate spatial hydrogen infrastructure development in a low-carbon UK energy system》.pdf
- 《ioe_citizen_svcs_white_paper_idc_2016》.pdf
- 《iOS7设计规范分享_PartI_UI设计基础by00》.pdf
- 期中复习专项(6年级英语上册 人教版).pdf
- 安徽省合肥市2024-2025学年高二上学期数学统一作业7[含答案].docx
- 甘肃省西北师范大学附属中学2023-2024学年高二上学期期中考试数学试卷[含答案].pdf
- 广东省深圳市2024-2025学年高二上学期第一次质量监测数学试题[含答案].pdf
- 2024-2025学年度上学期高一数学期中模拟试题2[含答案].pdf
- 安徽省淮北市 2024−2025学年高三上学期第二次质量检测数学试题[含答案].docx
- 福建省宁德市2024-2025学年高三上学期期中联考数学试卷[含答案].docx
- 河北省邢台市质检联盟2025届高三上学期10月月考 数学[含答案].pdf
- 广东省湛江市2024−2025学年高二上学期10月月考 数学试题[含答案].docx
- 安徽省黄山市2023-2024年度高一上学期期中数学考试卷[含答案].pdf
最近下载
- 《信息技术应用创新软件适配改造成本评估规范》.pdf
- 中国行业标准 YY/T 1939-2024医疗器械细菌内毒素试验方法 重组C因子法.pdf
- 各类游资炒股心法及感悟,套利模式.pdf
- 【客户管理】龙湖客户细分及工作模式分享精华篇-102p.pptx
- 学校智慧平台管理制度范文.docx VIP
- ASME中国制造-ISO12944-5-2018 中文译稿 第5部分 防护涂料体系.pdf
- 《诫子书》公开课课件(共24张ppt)部编版语文七年级上册.ppt
- 三年级数学下册期中试卷及答案【可打印】.doc
- 关于《佛山市市级财政资金投资建设项目工程概算预算结算.doc
- 二年级上册语文选择题强化练习(一).docx
文档评论(0)