HashSignUtil.java 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package com.fuint.common.util;
  2. import java.io.UnsupportedEncodingException;
  3. import java.security.MessageDigest;
  4. import java.security.NoSuchAlgorithmException;
  5. import java.util.Formatter;
  6. /**
  7. * 哈稀签名工具类
  8. *
  9. * Created by FSQ
  10. * CopyRight https://www.fuint.cn
  11. */
  12. public class HashSignUtil {
  13. /**
  14. * 哈稀签名
  15. * @param signSource - 源字符串
  16. * @return
  17. */
  18. public static String sign(String signSource) {
  19. String signature = "";
  20. try {
  21. MessageDigest crypt = MessageDigest.getInstance("SHA-1");
  22. crypt.reset();
  23. crypt.update(signSource.getBytes("UTF-8"));
  24. signature = byteToHex(crypt.digest());
  25. }
  26. catch (NoSuchAlgorithmException e) {
  27. e.printStackTrace();
  28. }
  29. catch (UnsupportedEncodingException e) {
  30. e.printStackTrace();
  31. }
  32. return signature;
  33. }
  34. private static String byteToHex(final byte[] hash) {
  35. Formatter formatter = new Formatter();
  36. for (byte b : hash)
  37. {
  38. formatter.format("%02x", b);
  39. }
  40. String result = formatter.toString();
  41. formatter.close();
  42. return result;
  43. }
  44. }