SHA加密

package com.dc;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;  
import java.security.NoSuchAlgorithmException;  

/* ******************  类说明  *********************
 * class       :  DcSHAUtil
 * @author     :  ncc
 * create time :  2017-12-19 上午10:36:08
 * @version    :  1.0  
 * description :  SHA 是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,
 * 现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,
 * 然后以一种不可逆的方式将它转换成一段(通常更小)密文,
 * 也可以简单的理解为取一串输入码(称为预映射或信息),
 * 并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。
 * 散列函数值可以说时对明文的一种“指纹”或是“摘要”所以对散列值的数字签名就可以视为对此明文的数字签名。
 * @see        :                        
 * ************************************************/   
public class DcSHAUtil {  
      
    /* ********************************************
     * method name   : eccrypt 
     * description   : 加密字符串
     * @return       : byte[]
     * @param        : @param info
     * @param        : @return
     * @param        : @throws NoSuchAlgorithmException
     * modified      : ncc ,  2017-12-19
     * @see          : 
     * ********************************************/      
    public byte[] eccrypt(String info) throws NoSuchAlgorithmException{  
        MessageDigest md5 = MessageDigest.getInstance("SHA");  
        byte[] srcBytes = info.getBytes();  
        //使用srcBytes更新摘要  
        md5.update(srcBytes);  
        //完成哈希计算,得到result  
        byte[] resultBytes = md5.digest();  
        return resultBytes;  
    }  
  
    /** 
     * @param args 
     * @throws NoSuchAlgorithmException  
     * @throws UnsupportedEncodingException 
     */  
    public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {  
        String msg = "欢迎光临得草之家!";  
        DcSHAUtil sha = new DcSHAUtil();  
        byte[] resultBytes = sha.eccrypt(msg);  
        System.out.println("明文是:" + msg);
        System.out.println("密文是:" + new String(resultBytes));  
    }  
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值