javaMD5加密类

javaMD5加密类importjava.security.MessageDigest;publicclassMyMD5{ privateStringinStr;    privateMessageDigestmd5;  publicMyMD5(StringinStr){   this.inStr=inStr;   try{    this.md5=MessageDige

大家好,又见面了,我是你们的朋友全栈君。

import java.security.MessageDigest;

public class MyMD5 {

  private String inStr;
     private MessageDigest md5;

  public MyMD5 (String inStr) {

   this.inStr = inStr;
   try {

    this.md5 = MessageDigest.getInstance(“MD5”);
   } catch (Exception e){

    System.out.println(e.toString());
    e.printStackTrace();
   }
  }

  public String compute() {

   char[] charArray = this.inStr.toCharArray();
   byte[] byteArray = new byte[charArray.length];

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

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

   byte[] md5Bytes = this.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();
   }

  public static void main(String[] args) {

   MyMD5 md5s=new MyMD5(“abc”);
   String postString = md5s.compute();
   System.out.println(postString);
   if(postString.equals(“900150983cd24fb0d6963f7d28e17f72”)){

    System.out.println(“true”);
   } else {

    System.out.println(“false”);
   }
   }

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159043.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Linux网卡启动失败_restart电脑上哪个键

    Linux网卡启动失败_restart电脑上哪个键Linux重启网卡失败报错如下:Jobfornetwork.servicefailedbecausethecontrolprocessexitedwitherrorcode.See“systemctlstatusnetwork.service”and“journalctl-xe”fordetails.报错原因:network与NetworkManager冲突导致解决办法:[root@localhost~]#systemctlstopNe

  • phpstorm中完成一键快速注释函数头

    phpstorm中完成一键快速注释函数头

    2021年10月31日
  • android蓝牙通讯开发(详细)「建议收藏」

    android蓝牙通讯开发(详细)「建议收藏」新建一个工程之后,我们可以先看到界面左边的项目栏,我们可以看到,除了app目录以外,大多数的文件和目录都是自动生成的,我们也不需要对他们进行修改,而app目录之下的文件才是我们工作的重点。下面,我先对

  • latex大括号错位显示_LaTeX表格

    latex大括号错位显示_LaTeX表格amsmath中\smash妙用样例-大括号错位显示。原始大括号显示\[\text{机器学习}\begin{cases}\text{~~监督学习~}{\begin{cases}\text{回归算法}\\\text{分类算法}{\begin{cases}\text{生成模型}\\\text{判别模型}\end{cases}}

    2022年10月11日
  • 线程池 ManualResetEvent[通俗易懂]

    线程池 ManualResetEvent[通俗易懂]线程池:    “线程池”是可以用来在后台执行多个任务的线程集合。(有关背景信息,请参见使用线程处理。)这使主线程可以自由地异步执行其他任务。线程池通常用于服务器应用程序。每个传入请求都将分配给线程池中的一个线程,因此可以异步处理请求,而不会占用主线程,也不会延迟后续请求的处理。一旦池中的某个线程完成任务,它将返回到等待线程队列中,等待被再次使用。这种重用使应用程序可以避免为每个任…

  • 掌握Redis分布式锁的正确姿势

    掌握Redis分布式锁的正确姿势

    2020年11月20日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号