isHash.js 721 B

1234567891011121314151617181920212223242526272829303132333435
  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = isHash;
  6. var _assertString = require('./util/assertString');
  7. var _assertString2 = _interopRequireDefault(_assertString);
  8. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  9. var lengths = {
  10. md5: 32,
  11. md4: 32,
  12. sha1: 40,
  13. sha256: 64,
  14. sha384: 96,
  15. sha512: 128,
  16. ripemd128: 32,
  17. ripemd160: 40,
  18. tiger128: 32,
  19. tiger160: 40,
  20. tiger192: 48,
  21. crc32: 8,
  22. crc32b: 8
  23. };
  24. function isHash(str, algorithm) {
  25. (0, _assertString2.default)(str);
  26. var hash = new RegExp('^[a-f0-9]{' + lengths[algorithm] + '}$');
  27. return hash.test(str);
  28. }
  29. module.exports = exports['default'];