samp.directory
← Скрипты и библиотеки

Sreyas-Sreelal/samp-bcrypt

A bcrypt plugin for samp.

Плагин★ 83обновлён апр. 2024 г.MITRustsampctl
Открыть на GitHub

Установка через sampctl

sampctl package install Sreyas-Sreelal/samp-bcrypt

Выполните в папке проекта. sampctl скачает пакет и его зависимости.

Зависит от 1 пакета

README.md

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 plugins folder
  • Add samp_bcrypt to server.cfg or samp_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 release for release builds

    make debug for debug builds

  • Run the tests

    make run

API

  • bcrypt_hash(playerid, const callback[], const input[], cost, const args[] = "", {Float, _}:...)
    • playerid - id of the player
    • callback[] - callback to execute after hashing
    • input[] - string to hash
    • cost - work factor (4 - 31)
    • args[] - custom arguments

    Example

    main()
    {
    	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 data
    • size - max size of dest string

    Example

    main()
    {
    	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 player
    • callback[] - callback to execute after hashing
    • input[] - text to compare with hash
    • hash[] - hash to compare with text
    • args[] - custom arguments

    Example

    main()
    {
    	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

    main()
    {
    	bcrypt_set_thread_limit(3);
    }
    

bcrypthashingpassword-hashpawn-packagepluginrustsa-mpsa-mp-pluginsamp

Страница собрана из того, что GitHub публикует о репозитории. samp.directory не хранит этот код. Сообщить о проблеме с этой записью