1. 程式人生 > >SHA-256加密演算法

SHA-256加密演算法


import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class SHA256 {
 private final static String MESSAGE_DIGEST_ALGORITHM = "SHA-256";
 
  public static final synchronized String getMessageDigest(byte[] data) throws NoSuchAlgorithmException {             
         MessageDigest digest = null;
         if(digest == null)
             try{
                 digest = MessageDigest.getInstance(MESSAGE_DIGEST_ALGORITHM);
             }
             catch(NoSuchAlgorithmException nosuchalgorithmexception)
             {
                 System.err.println("Failed to load the MD5 MessageDigest. system will be unable to function normally.");
                 nosuchalgorithmexception.printStackTrace();
             }
         digest.reset();
         digest.update(data);
         return encodeHex(digest.digest());
        
     }
 
   public static final String encodeHex(byte abyte0[])
     {
         StringBuffer stringbuffer = new StringBuffer(abyte0.length * 2);
         for(int i = 0; i < abyte0.length; i++)
         {
             if((abyte0[i] & 0xff) < 16)
                 stringbuffer.append("0");
             stringbuffer.append(Long.toString(abyte0[i] & 0xff, 16));
         }

         return stringbuffer.toString();
     }
  
   public static void main(String[] args){
    try{
    String name="admin43";
    String password="12345623";
    String svalue=name+"--"+ password;
   System.out.println(getMessageDigest(svalue.getBytes("UTF-8")));
    }
    catch(Exception e){
     e.printStackTrace();
    }
   }
}