md5加密方法

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: md5加密方法


                   package com.XX.core.myutil;


import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import java.security.MessageDigest;


public class Md5Util {


   private static final Logger LOGGER = LoggerFactory.getLogger(Md5Util.class);


   private static String compute(String inStr) {

       try {

           char[] charArray = inStr.toCharArray();

   

           byte[] byteArray = new byte[charArray.length];

   

           for (int i = 0; i < charArray.length; i++) {

               byteArray[i] = (byte) charArray[i];

           }

           MessageDigest md5 = MessageDigest.getInstance("MD5");

           byte[] md5Bytes = md5.digest(byteArray);

   

           StringBuffer hexValue = new StringBuffer();

   

           for (int i = 0; i < md5Bytes.length; i++) {

               int val = ((int) md5Bytes[i]) & 0xff;

               if (val < 16) {

                   hexValue.append("0");

               }

               hexValue.append(Integer.toHexString(val));

           }

           return hexValue.toString();

       }catch (Exception e) {

           LOGGER.error("MD5 Error...", e);

           return "";

       }

       

   }

   

   /**

    * 按传入编码进行MD5加密

    * @param charsetName

    * @return

    */

   private static String compute(String inStr, String charsetName){

       try{

           byte[] byteArray = inStr.getBytes(charsetName);

           MessageDigest md5 = MessageDigest.getInstance("MD5");

           byte[] md5Bytes = md5.digest(byteArray);

   

           StringBuffer hexValue = new StringBuffer();

   

           for (int i = 0; i < md5Bytes.length; i++) {

               int val = ((int) md5Bytes[i]) & 0xff;

               if (val < 16) {

                   hexValue.append("0");

               }

               hexValue.append(Integer.toHexString(val));

           }

   

           return hexValue.toString();

       }catch (Exception e) {

           LOGGER.error("MD5 Error...", e);

           return "";

       }

   }

   

   public static String encrypt(final String key) {

       return compute(key);

   }

   

   /**

    * 按传入编码进行MD5加密

    * @param key

    * @param charsetName

    * @return

    */

   public static String encrypt(final String key, final String charsetName){

       return compute(key, charsetName);

   }

   

   public static void main(String[] args) {

       System.out.println(Md5Util.encrypt("123456123456"));

   }

}                


相关文章
|
4月前
|
存储 NoSQL 数据库
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
这篇文章讲述了在分布式微服务系统中添加用户注册和登录功能的过程,重点介绍了用户注册时通过远程服务调用第三方服务获取短信验证码、使用Redis进行验证码校验、对密码进行MD5加密后存储到数据库,以及用户登录时的远程服务调用和密码匹配校验的实现细节。
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
|
3月前
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
75 0
|
2月前
|
存储 Java 数据库
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
这篇文章介绍了如何在Java中通过加盐和加密算法(如MD5和SHA)安全地存储密码,并提供了一个密码工具类PasswordUtils和密码编码类PasswordEncoder的实现示例。
73 10
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
|
2月前
|
存储 安全 Java
|
2月前
|
算法 安全 数据安全/隐私保护
链接加密的方法有哪些?
【10月更文挑战第6天】链接加密的方法有哪些?
205 10
|
2月前
|
NoSQL Java Redis
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
这篇文章介绍了如何使用Spring Boot整合Apache Shiro框架进行后端开发,包括认证和授权流程,并使用Redis存储Token以及MD5加密用户密码。
42 0
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
|
2月前
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
110 0
|
2月前
|
安全 数据安全/隐私保护 开发者
保护敏感数据:使用Python加密数据的实用方法
保护敏感数据是一项基本的安全实践,Python通过上述库提供了强大的加密工具来实现这一目标。选择哪种方法取决于具体的应用场景和安全需求:对称加密(如AES)适合快速处理大量数据,而非对称加密(如RSA)更适合安全地交换密钥或进行身份验证。哈希函数则用于验证数据的完整性和一致性。通过合理使用这些技术,开发者可以大大增强其应用程序的安全性。
95 0
|
2月前
|
IDE 开发工具 数据安全/隐私保护
Python编程实现批量md5加密pdf文件
Python编程实现批量md5加密pdf文件
43 0
|
4月前
|
存储 算法 Java
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。
这篇文章详细介绍了在Java项目中如何使用MD5算法对用户密码进行加密存储和登录验证,包括加入依赖、编写MD5工具类、注册时的密码加密和登录时的密码验证等步骤,并通过示例代码和数据库存储信息展示了测试效果。
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。

热门文章

最新文章