30 lines
		
	
	
		
			716 B
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			716 B
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
| "use strict";
 | |
| 
 | |
| Object.defineProperty(exports, "__esModule", {
 | |
|   value: true
 | |
| });
 | |
| exports.default = isHash;
 | |
| var _assertString = _interopRequireDefault(require("./util/assertString"));
 | |
| function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
 | |
| var lengths = {
 | |
|   md5: 32,
 | |
|   md4: 32,
 | |
|   sha1: 40,
 | |
|   sha256: 64,
 | |
|   sha384: 96,
 | |
|   sha512: 128,
 | |
|   ripemd128: 32,
 | |
|   ripemd160: 40,
 | |
|   tiger128: 32,
 | |
|   tiger160: 40,
 | |
|   tiger192: 48,
 | |
|   crc32: 8,
 | |
|   crc32b: 8
 | |
| };
 | |
| function isHash(str, algorithm) {
 | |
|   (0, _assertString.default)(str);
 | |
|   var hash = new RegExp("^[a-fA-F0-9]{".concat(lengths[algorithm], "}$"));
 | |
|   return hash.test(str);
 | |
| }
 | |
| module.exports = exports.default;
 | |
| module.exports.default = exports.default; |