• Source
    1. import java.security.*;
    2. import java.math.BigInteger;
    3.  
    4. public class Main {
    5. public static String getSHA256(String data){
    6. String sb = "";
    7. try{
    8. MessageDigest md = MessageDigest.getInstance("SHA-256");
    9. md.update(data.getBytes("UTF-8"));
    10. byte byteData[] = md.digest();
    11. sb=new BigInteger(1, byteData).setBit(256).toString(16);
    12. sb=sb.substring(1);
    13. } catch(Exception e){
    14. e.printStackTrace();
    15. }
    16. return sb;
    17. }
    18.  
    19. public static void main(String[] args) throws Exception {
    20. String m="虛擬貨幣用的雜湊函數";
    21. byte[] mm=m.getBytes("UTF-8");
    22. System.out.print("UTF-8 code for \"虛擬貨幣用的雜湊函數\":");
    23. for(int i=0; i<mm.length; i++){
    24. System.out.printf("%02x", mm[i]);
    25. }
    26. m=new String(m.getBytes("UTF-8"), "UTF-8");
    27.  
    28. System.out.println(" , SHA-256 digest="+getSHA256(m));
    29.  
    30. }
    31.  
    32. }
    33.