Samp bcrypt
A bcrypt plugin for samp.
If you are a sampctl user `sampctl install Sreyas-Sreelal/samp-bcrypt` The project is written primarily in Rust, distributed under the MIT License license, first published in 2019. Key topics include: bcrypt, hashing, password-hash, pawn-package, plugin.
Latest release: 0.4.1
April 17, 2024View Changelog →
SampBcrypt
A bcrypt plugin for samp in Rust.
Installation
sampctl
If you are a sampctl user
sampctl install Sreyas-Sreelal/samp-bcrypt
OR
- Download suitable binary files from releases for your operating system
- Add it your
pluginsfolder - Add
samp_bcryptto server.cfg orsamp_bcrypt.so(for linux) - Add samp_bcrypt.inc in includes folder
Building
-
Clone the repo
git clone https://github.com/Sreyas-Sreelal/samp-bcrypt.git -
Setup testing server
make setup -
Build using makefile
make releasefor release buildsmake debugfor debug builds -
Run the tests
make run
API
-
bcrypt_hash(playerid, const callback[], const input[], cost, const args[] = "", {Float, _}:...)
playerid- id of the playercallback[]- callback to execute after hashinginput[]- string to hashcost- work factor (4 - 31)args[]- custom arguments
Example
Pawnmain() { bcrypt_hash(0, "OnPassswordHash", "text", BCRYPT_COST); } forward OnPassswordHash(playerid); public OnPassswordHash(playerid) { // Hashing completed } -
bcrypt_get_hash(dest[], size = sizeof(hash))
dest[]- string to store hashed datasize- max size of dest string
Example
Pawnmain() { bcrypt_hash(0, "OnPassswordHash", "text", BCRYPT_COST); } forward OnPassswordHash(playerid); public OnPassswordHash(playerid) { new dest[BCRYPT_HASH_LENGTH]; bcrypt_get_hash(dest); printf("hash : %s", dest); } -
bcrypt_verify(playerid, const callback[], const input[], const hash[], const args[] = "", {Float, _}:...)
playerid- id of the playercallback[]- callback to execute after hashinginput[]- text to compare with hashhash[]- hash to compare with textargs[]- custom arguments
Example
Pawnmain() { bcrypt_hash(0, "OnPassswordHash", "text", BCRYPT_COST); } forward OnPassswordHash(playerid); public OnPassswordHash(playerid) { new dest[BCRYPT_HASH_LENGTH]; bcrypt_get_hash(dest); bcrypt_verify(playerid, "OnPassswordVerify", "text", dest); } forward OnPassswordVerify(playerid, bool:success); public OnPassswordVerify(playerid, bool:success) { // success denotes verifying was successful or not if (success) { // Verified } else { // Hash doesn't match with text } } -
bcrypt_set_thread_limit(value)
value- number of worker threads at a time
Example
Pawnmain() { bcrypt_set_thread_limit(3); }
Contributors
Showing top 7 contributors by commit count.
This article is auto-generated from Sreyas-Sreelal/samp-bcrypt via the GitHub API.Last fetched: 6/29/2026
