nano-md5
md5/md5crypt functions. UTF8 compatible. Small. Fast. 100% tests coverage. No dependencies.
Example
> var md5 = ;> ;'5d41402abc4b2a76b9719d911017c592'> md5'5d41402abc4b2a76b9719d911017c592'> md5'5d41402abc4b2a76b9719d911017c592'
API
md5(utf8_string)
- utf8_string
String
Returns hexadecimal value of utf8_string MD5 hash. The function is a shortcut for md5.fromUtf8(utf8_string).toHex()
call.
> var md5 = ;> ;'5d41402abc4b2a76b9719d911017c592'
md5.fromBytes(bytes_string)
- bytes_string
String
-- supports only 8-bits characters
Returns binary String object of MD5 hash containings of toHex()
method for converting binary value to hexadecimal string value.
> var md5 = ;> md5; String: ']A@*¼K*v¹q��\u0010\u0017Å�' toHex: Function > md5'5d41402abc4b2a76b9719d911017c592'
md5.fromUtf8(utf8_string)
- utf8_string
String
Returns binary String object of MD5 hash containings of toHex()
method for converting binary value to hexadecimal string value.
> var md5 = ;> md5; String: '4�·�® \u0000>\u001eU\u001bÏM¡a' toHex: Function > md5'3495b78aaea0003e1e551bcf4da18861'
md5.crypt(password, setting)
- password
String
- setting
String
- salt or '$1$'+salt; can be closed with '$' symbol
The function is analogue of md5crypt
unix libc function. Very useful for passwords crypting and checking.
The setting
argument isn`t necessary. If it skipped a salt value will generated automatically.
> var md5 = ;> md5'$1$DgPzWoiS$bMN29fSiiniXY6s.4ShyE1'> md5'$1$nFQVmGdu$m0QpoNNUJ6Ij8ZWh0wavS0'> md5'$1$FmEgm6OI$rvKvF85/aj2n8/64VEytt/'> md5'$1$01234567$8imesxsCtZWLDOPevHEvu.'> md5'$1$01234567$8imesxsCtZWLDOPevHEvu.'> md5'$1$01234567$8imesxsCtZWLDOPevHEvu.'> md5 // crypted password can be used as salt source'$1$01234567$8imesxsCtZWLDOPevHEvu.'