digest.gradle 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import java.security.MessageDigest
  2. def getMD5Hash(input) {
  3. if (!(input instanceof File)) {
  4. logger.warn("getMD5Hash(): Input is no File. Maybe you forgot file()?")
  5. }
  6. MessageDigest digest = MessageDigest.getInstance("MD5")
  7. digest.update(input.getBytes())
  8. return new BigInteger(1, digest.digest()).toString(16).padLeft(32, "0");
  9. }
  10. def getSHA1Hash(input) {
  11. if (!(input instanceof File)) {
  12. logger.warn("getSHA1Hash(): Input is no File. Maybe you forgot file()?")
  13. }
  14. MessageDigest digest = MessageDigest.getInstance("SHA-1")
  15. digest.update(input.getBytes())
  16. return new BigInteger(1, digest.digest()).toString(16).padLeft(40, "0");
  17. }
  18. def getSHA256Hash(input) {
  19. if (!(input instanceof File)) {
  20. logger.warn("getSHA256Hash(): Input is no File. Maybe you forgot file()?")
  21. }
  22. MessageDigest digest = MessageDigest.getInstance("SHA-256")
  23. digest.update(input.getBytes())
  24. return new BigInteger(1, digest.digest()).toString(16).padLeft(64, "0");
  25. }
  26. ext { /* hax to export the methods */
  27. getMD5Hash = this.&getMD5Hash
  28. getSHA1Hash = this.&getSHA1Hash
  29. getSHA256Hash = this.&getSHA256Hash
  30. }