在我们的程序员之路上,肯定少不了加密的协助,比如最常见的MD5与sha这两种加密,这次我给大家带来的是不用任何操作,直接粘上就能用的加密工具类(懒惰程序员的福音),好了话不多说,直接如下:

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;/*** 加密工具类* * md5加密出来的长度是32位* * sha加密出来的长度是40位* * @author 菜B程序员* */public class Encrypt {/*** 加密* * @param inputText* @return*/public static String e(String inputText) {return md5(inputText);}/*** 二次加密,应该破解不了了吧?* * @param inputText* @return*/public static String md5AndSha(String inputText) {return sha(md5(inputText));}/*** md5加密* * @param inputText* @return*/public static String md5(String inputText) {return encrypt(inputText, "md5");}/*** sha加密* * @param inputText* @return*/public static String sha(String inputText) {return encrypt(inputText, "sha-1");}/*** md5或者sha-1加密* * @param inputText*            要加密的内容* @param algorithmName*            加密算法名称:md5或者sha-1,不区分大小写* @return*/private static String encrypt(String inputText, String algorithmName) {if (inputText == null || "".equals(inputText.trim())) {throw new IllegalArgumentException("请输入要加密的内容");}if (algorithmName == null || "".equals(algorithmName.trim())) {algorithmName = "md5";}String encryptText = null;try {MessageDigest m = MessageDigest.getInstance(algorithmName);m.update(inputText.getBytes("UTF8"));byte s[] = m.digest();// m.digest(inputText.getBytes("UTF8"));return hex(s);} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (UnsupportedEncodingException e) {e.printStackTrace();}return encryptText;}/*** 返回十六进制字符串* * @param arr* @return*/private static String hex(byte[] arr) {StringBuffer sb = new StringBuffer();for (int i = 0; i < arr.length; ++i) {sb.append(Integer.toHexString((arr[i] & 0xFF) | 0x100).substring(1, 3));}return sb.toString();}}

最后我们直接调用:

String pwd="123456";
System.out.println(Encrypt.md5AndSha(pwd));

结果:

10470c3b4b1fed12c3baac014be15fac67c6e815

Java实现几种加密工具类相关推荐

  1. java md5 c_java MD5加密工具类

    package com.person.util; import java.lang.reflect.Array; public class MD5 { /* 下面这些 S11-S44 实际上是 \uF ...

  2. Java各种方式加解密工具类

    文章目录 前言 1.AES 2.DES 3.BCrypt 4.Http Basic 5.MD5 6.RSA 7.SHA256 8.SM3 9.SM4 前言 JAVA能够实现各种加解密方式,这里对各种加 ...

  3. Java 开发中常用的 4 种加密方法。MD5加密工具类测试 base64加密工具类测试 SHA加密工具类测试 BCrypt加密工具类测试

    一.工具类 1, md5加密工具类 2, base64加密工具类 3, Bcrypt工具类 二.加密测试 MD5加密测试 base64加密测试 SHA加密测试 BCrypt加密测试 一.工具类 1, ...

  4. JAVA加密工具类实例

    工具类还是老套路,要让用户可扩展,同时提供一个基础工具即可,本文分享BeginCode的用户密码加密工具类的使用, 如果不为了扩展性,可以写成工具类即可,提供两个静态方法如下 一个方法是直接MD5加密 ...

  5. 加密工具类 - CryptoUtils.java

    加密工具类,包含MD5,BASE64,SHA,CRC32的加密与解密方法. 源码如下:(点击下载  - CryptoUtils.java.commons-io-2.4.jar.commons-code ...

  6. java在线支付---04_编写易宝支付的客户端加密工具类

    2013/5/30 04_编写易宝支付的客户端加密工具类 创梦综合技术qq交流群:CreDream:251572072 ---------------------------------------- ...

  7. Java教程:微信排序并加密工具类

    Java教程:微信排序并加密工具类 源码: import cn.bsit.commons.md5.MD5Utils;import java.util.Arrays; import java.util. ...

  8. Java加密工具类EncryptUtils

    Java 提供了一些常见的加密算法,如 MD5.SHA.AES.DES,现将这些实现方法放进加密工具类 EncryptionUtils 使用了 String.format() 来确保每个字节都能够正确 ...

  9. 一、java项目常用工具类之加密工具类

    项目环境: jdk1.8+spring4.3.12 一.问题描述及试用场景: 在项目规范中,有时需要对一些数据进行加密解密,常见的就是前后端加密参数在网络上传输.一方面,数据在网络上是以加密的方式传输 ...

最新文章

  1. 为什么你应该尝试全栈
  2. 洛谷3613睡觉困难综合征(LCT维护链信息(前后缀)+贪心)
  3. 剑指offer-用两个栈实现一个队列
  4. slatstack Master的配置
  5. 【读书笔记】非暴力沟通
  6. python学习之面向对象学习进阶
  7. unzip直接覆盖解压
  8. WinForm开发(36)——WinForm开发微软官方最全综合详解指南(包括bug出现的可能原因分析及解决方法)
  9. Python 之 pip安装 及 使用详解
  10. Deep Retinex Decomposition for Low-Light Enhancement
  11. 游戏模型提取工具NinjaRipper
  12. 55欧式空间02——正交矩阵、欧氏空间的同构
  13. Qt 编程 keySight 34401A 万用表(串口232编程)
  14. 什么是模型?什么是建模?
  15. 一个微信小程序开发示例
  16. Redis set 类型 查询命令
  17. 如何在linux中连接sybase数据库
  18. 【TPM设备管理】企业设备管理改善的五大落地要点
  19. android 12.0 第三方输入法app设置系统默认输入法
  20. AWS 使用 VM Import/Export 将 VM 作为映像导入

热门文章

  1. Mysql如何实现可重复读
  2. 输入一个0~6的整数,输出星期几
  3. python的格式转换库_3个Python PDF库,提取信息、转换格式、分割剪裁有它就够了!...
  4. iframe 加载完成后回调事件(怎么判断iframe是否加载完成)
  5. oracle数据库数据迁移三部曲(一)oracle 11g的安装
  6. C语言八进制转十进制(包括小数点)
  7. Beego generate命令
  8. 推荐一款多平台快速开发的前端UI框架 —— uView !
  9. js数组中splice和slice的区别
  10. 《棒球殿堂》:棒球联盟LEAGUE·北海道火腿斗士