java之MessageDigest简单使用总结

java之MessageDigest简单使用总结1、说明MessageDigest是Java自带的类2、简单代码比如我们需要实现md5,或者sha加密publicclassMD5AndSHA{publicfinalstaticStringMD5_SHA(Strings,Stringmethod){charhexDigits[]=

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

1、说明

MessageDigest是Java自带的类

2、简单代码

 
比如我们需要实现md5,或者sha加密
 
 
public class MD5AndSHA {  
      
    public final static String MD5_SHA(String s, String method) {  
        char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',  
                'a', 'b', 'c', 'd', 'e', 'f' };  
        try {  
            byte[] strTemp = s.getBytes();  
            //如果输入“SHA”,就是实现SHA加密。  
            MessageDigest mdTemp = MessageDigest.getInstance(method);   
            mdTemp.update(strTemp);  
            byte[] md = mdTemp.digest();  
            int j = md.length;  
            char str[] = new char[j * 2];  
            int k = 0;  
            for (int i = 0; i < j; i++) {  
                byte byte0 = md[i];  
                str[k++] = hexDigits[byte0 >>> 4 & 0xf];  
                str[k++] = hexDigits[byte0 & 0xf];  
            }  
            return new String(str);  
        } catch (Exception e) {  
            return null;  
        }  
    }  
  
    public static void main(String[] args) {  
        //System.out.print(MD5AndSHA.MD5_SHA("123456"), "MD5");  
	//System.out.print(MD5AndSHA.MD5_SHA("123456"), "SHA");  
    }  
}  

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149243.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 全源最短路径问题采用Floyd算法进行求解_floyd算法求最短路径是贪心吗

    全源最短路径问题采用Floyd算法进行求解_floyd算法求最短路径是贪心吗前言在图论中,在寻路最短路径中除了Dijkstra算法以外,还有Floyd算法也是非常经典,然而两种算法还是有区别的,Floyd主要计算多源最短路径。在单源正权值最短路径,我们会用Dijkstra算法来求最短路径,并且算法的思想很简单—贪心算法:每次确定最短路径的一个点然后维护(更新)这个点周围点的距离加入预选队列,等待下一次的抛出确定。虽然思想很简单,实现起来是非常复杂的,我们需要邻接矩阵(表)储存长度,需要优先队列(或者每次都比较)维护一个预选点的集合。还要用一个boolean数组标记是否已经确定、

    2025年8月12日
    2
  • deepin自带wine使用方法_ubuntu安装deepin桌面环境

    deepin自带wine使用方法_ubuntu安装deepin桌面环境腾讯从19年10月底启用了ipv6技术,接收图片和显示头像需要连接到ipv6地址,然而某些地区运营商的ipv6服务不稳定,这就导致在deepin上QQ加载不了图片和表情。因此,禁用ipv6即可解决该问题,操作如下。1.打开终端(Ctrl+Alt+T)2.输入命令:$sudogedit/etc/sysctl.conf3.在打开的文档末尾添加如下代码:#IPv6disablednet.ipv6.conf.all.disable_ipv6=1net.ipv6.conf.default

    2022年8月10日
    4
  • java异常处理 Exception、error、运行时异常和一般异常有何异同「建议收藏」

    java异常处理 Exception、error、运行时异常和一般异常有何异同「建议收藏」一、开场白对于程序运行过程中的可能出现异常情况,java语言使用一种称为异常处理的错误捕捉机制进行处理。相信大家对try{}catch(){}finally{}这种结构非常熟悉,使用频率极高。既然经常使用它,而且也是面试常问知识点,我们就有必要去深入地了解一下。也谈不上深入,只是java语言的基本功。下面,开始吧!二、异常分类在java中,异常对象都是派生于Throwabl…

    2022年9月27日
    2
  • 深入浅出Java垃圾回收机制

    深入浅出Java垃圾回收机制

    2022年3月13日
    40
  • 测试报告范文_数据处理测试

    测试报告范文_数据处理测试前言受益于pytest的集成,HttpRunnerv3.x可以使用pytest所有插件,包括pytest-html和allure-pytest,也可以实现这2种方式的报告内置html报告pyt

    2022年7月29日
    9
  • openssl升级方法(升级怎么玩)

    1.Linux系统版本:[root@bogon~]#cat/etc/redhat-releaseCentOSLinuxrelease7.3.1611(Core)图1查看Linux系统版本2.查看Openssl安装的版本[root@bogon~]#opensslversionOpenSSL1.0.2k-fips26Jan2017图2查看openssl版本3.查看Openssl路径[root@bogon~]#which

    2022年4月13日
    88

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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