Przejdź do głównej zawartości

SHA256_PassHash

warning

This function was added in SA-MP 0.3.7 R1 and will not work in earlier versions!

warning

This function is deprecated in open.mp, Use samp-bcrypt plugin for hashing.

Description

Hashes a password using the SHA-256 hashing algorithm. Includes a salt. The output is always 256 bits in length, or the equivalent of 64 Pawn cells.

NameDescription
const password[]The password to hash.
const salt[]The salt to use in the hash.
output[]The returned hash in uppercase hexadecimal digest.
size = sizeof (output)The returned hash maximum length.

Returns

The hash is stored in the specified array.

Examples

public OnGameModeInit()
{
new MyHash[64 + 1]; // + 1 to account for the required null terminator
SHA256_PassHash("test", "78sdjs86d2h", MyHash, sizeof MyHash);
printf("Returned hash: %s", MyHash); // Returned hash: CD16A1C8BF5792B48142FF6B67C9CB5B1BDC7260D8D11AFBA6BCDE0933A3C0AF
return 1;
}

Notes

wskazówka

The returned hash has zero padding (i.e. possible prefix 00ABCD123...).

wskazówka

The salt is appended to the end of the password, meaning password 'foo' and salt 'bar' would form 'foobar'. The salt should be random, unique for each player and at least as long as the hashed password. It is to be stored alongside the actual hash in the player's account.

warning

This function is not binary-safe. Using binary values on password and salt might give unexpected result.