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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 截止失真放大电路_技术分享:音频功放失真及常见改善方法「建议收藏」

    截止失真放大电路_技术分享:音频功放失真及常见改善方法「建议收藏」音频功放失真是指重放音频信号波形畸变的现象,通常分为电失真和声失真两大类。电失真就是信号电流在放大过程中产生了失真,而声失真是信号电流通过扬声器,扬声器未能如实地重现声音。无论是电失真还是声失真,按失真的性质来分,主要有频率失真和非线性失真两种。其中,引起信号各频率分量间幅度和相位的关系变化,仅出现波形失真,不增加新的频率成分,属于线性失真。而谐波失真(THD)、互调失真(IMD)等可产生新的频率…

    2022年5月20日
    52
  • python中random函数及用法

    python中random函数及用法1、python中的random函数random()方法返回随机生成的一个实数,它在[0,1)范围内importrandomrandom.random()#randint函数,返回指定范围的一个随机整数,包含上下限random.randint(0,99)#返回0~99之间的整数#randrange函数,randrange(0,101,2)可以用来选曲0~100之间的偶数2、…

    2022年6月9日
    32
  • 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(1)–后端

    购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(1)–后端

    2021年9月10日
    48
  • pycharm激活码2021【2021最新】[通俗易懂]

    (pycharm激活码2021)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html9ZHRNTE33T-eyJsaWNlbnNlSW…

    2022年3月28日
    73
  • 关于random()跟nextInt()方法过不了公司安评测试「建议收藏」

    关于random()跟nextInt()方法过不了公司安评测试「建议收藏」手上的项目最近过不了公司的安平测试,报告处理啊之后,发现问题竟然处在nextInt()跟random()两个方法上面,具体不通过的原因如下:大概意思就是,这两个系统自带的方法会导致安全信息泄露,因此禁止。然后我就进去查看具体代码,发现如下:没有进行任何的安全加密,只是验证码生成随机遮掩线条。安评测试的逻辑估计是只要调用这个方法都是不安全的,呵呵!!崩溃了,在线等C友建议如何改善了!…

    2022年7月21日
    22
  • 单片机sleep函数的头文件_C语言之Sleep函数

    单片机sleep函数的头文件_C语言之Sleep函数Sleep 函数 功能 执行挂起一段时间用法 unsignedslee unsignedseco 注意 在 VC 中使用带上头文件 include 在 Linux 下 gcc 编译器中 使用的头文件因 gcc 版本的不同而不同 include 在 VC 中 Sleep 中的第一个英文字符为大写的 S 在 linux 下不要大写 在标准 C 中是 sleep 不要大写 简单的说 VC 用 Sleep 别的

    2025年10月27日
    4

发表回复

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

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