|
|
|
|
- Availability of algorithms
- HashCheckString and UNICODE
HashCheckString (Function) In french: HashVérifieChaîne Syntax
Checking a simple hash Hide the details
<Result> = HashCheckString(<Type of algorithm> , <String> , <Hash>)
<Result>: Boolean - True if the result when <String> was hashed by <Type of algorithm> corresponds to <Hash>,
- False otherwise.
<Type of algorithm>: Integer constant Indicates the type of algorithm used when hashing the <String>:
| | DJB2 family (Bernstein) | | MD4 family | HA_MD4 | MD5 family | HA_MD5_128 Caution: this type of algorithm is currently deprecated. | MURMUR family | - HA_MURMUR_1: Murmur algorithm version 1: 32-bit hash result
- HA_MURMUR_2: Murmur algorithm version 2: 32-bit hash result
- HA_MURMUR_2_64A: Murmur algorithm version 2: 64-bit hash result optimized for 64-bit processors
- HA_MURMUR_2_64B: Murmur algorithm version 2: 64-bit hash result optimized for 32-bit processors
- HA_MURMUR_2_A: Incremental Murmur algorithm version 2: 32-bit hash result
- HA_MURMUR_2_BIG_ENDIAN: Murmur algorithm version 2 for big-endian machine: 32-bit hash result
- HA_MURMUR_2_ALIGNE: Murmur algorithm version 2 for aligned machine: 32-bit hash result
- HA_MURMUR_3_32: Murmur algorithm version 3: 32-bit hash result
- HA_MURMUR_3_128_X86: Murmur algorithm version 3: 128-bit hash result optimized for 32-bit processors
- HA_MURMUR_3_128_X64: Murmur algorithm version 3: 128-bit hash result optimized for 64-bit processors
| RIPEMD family | - HA_RIPEMD_128
- HA_RIPEMD_160
| SHA family | - HA_SHA_160 (also called SHA-1)
- HA_SHA_256 (FIPS PUB 198 specifications)
- HA_SHA_256_DOUBLE
- HA_SHA_384
- HA_SHA_512
| SHA-3 family | - HA_SHA3_224
- HA_SHA3_256
- HA_SHA3_384
- HA_SHA3_512
| TIGER family | - HA_TIGER_128
- HA_TIGER_160
- HA_TIGER_192
| WHIRLPOOL family | HA_WHIRLPOOL | CKSUM family | - HA_CKSUM_8
- HA_CKSUM_16
- HA_CKSUM_32
- HA_CKSUM_64
|
- MD4 / MD5 / SHA / RIPEMD algorithms: standard cryptographic hash functions.
- TIGER/WHIRLPOOL algorithms: hash functions with high cryptographic properties optimized for the 64-bit mode (but can also be used in 32-bit mode).
- CKSUM algorithms: hash functions with no cryptographic property, should be used to perform low-level checks or with hashing tables.
- DJB2 algorithm (Bernstein): hash functions reserved to strings and with no cryptographic property, should be used to perform low-level checks or with hashing tables. Few risks to get an identical hash.
- MURMUR algorithm: very fast hash functions with no cryptographic properties. This algorithm is used by the "bloom filter" of bitcoin wallets.
<String>: Character string String for which the Hash will be checked. <Hash>: Character string Hash of string to check. This Hash must be the result of HashString previously called for <String> using the <Type of algorithm>.
Checking a hash with message authentication (HMAC/MURMUR algorithm) Hide the details
<Result> = HashCheckString(<Type of algorithm> , <String> , <Hash> , <Secret key>)
<Result>: Boolean - True if the result when <String> was hashed by <Type of algorithm> corresponds to <Hash>,
- False otherwise.
<Type of algorithm>: Integer constant Indicates the type of algorithm (HMAC or MURMUR) used to hash the <String>:
| | MD4 family | HA_HMAC_MD4
| MD5 family | HA_HMAC_MD5_128 Caution: this type of algorithm is currently deprecated. | MURMUR family | - HA_MURMUR_1: Murmur algorithm version 1: 32-bit hash result
- HA_MURMUR_2: Murmur algorithm version 2: 32-bit hash result
- HA_MURMUR_2_64A: Murmur algorithm version 2: 64-bit hash result optimized for 64-bit processors
- HA_MURMUR_2_64B: Murmur algorithm version 2: 64-bit hash result optimized for 32-bit processors
- HA_MURMUR_2_A: Incremental Murmur algorithm version 2: 32-bit hash result
- HA_MURMUR_2_BIG_ENDIAN: Murmur algorithm version 2 for big-endian machine: 32-bit hash result
- HA_MURMUR_2_ALIGNE: Murmur algorithm version 2 for aligned machine: 32-bit hash result
- HA_MURMUR_3_32: Murmur algorithm version 3: 32-bit hash result
- HA_MURMUR_3_128_X86: Murmur algorithm version 3: 128-bit hash result optimized for 32-bit processors
- HA_MURMUR_3_128_X64: Murmur algorithm version 3: 128-bit hash result optimized for 64-bit processors
| RIPEMD family | - HA_HMAC_RIPEMD_128
- HA_HMAC_RIPEMD_160
| SHA family | - HA_HMAC_SHA_160
- HA_HMAC_SHA_256
- HA_HMAC_SHA_256_DOUBLE
- HA_HMAC_SHA_384
- HA_HMAC_SHA_512
| SHA-3 family | - HA_HMAC_SHA3_224
- HA_HMAC_SHA3_256
- HA_HMAC_SHA3_384
- HA_HMAC_SHA3_512
| TIGER family | - HA_HMAC_TIGER_128
- HA_HMAC_TIGER_160
- HA_HMAC_TIGER_192
| WHIRLPOOL family | HA_HMAC_WHIRLPOOL |
- MD4 / MD5 / SHA / RIPEMD algorithms: standard cryptographic hash functions.
- TIGER/WHIRLPOOL algorithms: hash functions with high cryptographic properties optimized for the 64-bit mode (but can also be used in 32-bit mode).
- MURMUR algorithm: very fast hash functions with no cryptographic properties. This algorithm is used by the "bloom filter" of bitcoin wallets.
<String>: Character string String for which the Hash will be checked. <Hash>: Character string Hash of string to check. This Hash must be the result of HashString previously called for <String> using the <Type of algorithm>. <Secret key>: Character string or Integer Authentication key of message. This key must be identical to the one used to calculate the Hash. Remarks HashCheckString and UNICODE Cross-platform development: To use Hash of strings between several platforms (a hash generated in iOS and checked in Android or Windows for example), no Unicode string must be used. Indeed, the Unicode strings do not have the same format according to the platforms. In this case, we advise you to use strings in ANSI or UTF 8 format (and to convert the Unicode strings if necessary). Business / UI classification: Business Logic
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|