SYNOPSIS¶
| string | hash | ( | int method, | string arg [, | int iterations ] | )¶ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| string | hash | ( | int method, | int * arg [, | int iterations ] | ) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DESCRIPTION¶
Calculate the hash from arg as determined by method. The hash is calculated with iterations iterations, default is 1 iteration.
method is one of the constants defined in tls.h; not all recognized methods may be supported for a given driver:
- TLS_HASH_SHA1(1)
- TLS_HASH_SHA224(2)
- TLS_HASH_SHA256(3)
- TLS_HASH_SHA384(4)
- TLS_HASH_SHA512(5)
- TLS_HASH_MD5(6)
- TLS_HASH_RIPEMD160(7)
If the driver is compiled without OpenSSL or GCrypt support only TLS_HASH_SHA1 and TLS_HASH_MD5 are available.
The efun costs 10 ticks per iteration.
USAGE¶
The example below shows how to compute the SHA1 hash of a string and an array of characters:
string s;
s = hash(TLS_HASH_SHA1, "Hello", 2);
s = hash(TLS_HASH_SHA1, ({ 'H', 'e', 'l', 'l', 'o' }) );
HISTORY¶
- introduced (3.3.714)
- changed (3.3.719) – added the iteration-based evaluation cost