• Start

Functions

/

Database functions

Crypto

These functions can be used when hashing data, encrypting data, and for securely authenticating users into the database.

These functions can be used when hashing data, encrypting data, and for securely authenticating users into the database.

FunctionDescription
crypto::blake3()Returns the blake3 hash of a value
crypto::joaat()Returns the joaat hash of a value
crypto::md5()Returns the md5 hash of a value
crypto::sha1()Returns the sha1 hash of a value
crypto::sha256()Returns the sha256 hash of a value
crypto::sha512()Returns the sha512 hash of a value
crypto::argon2::compare()Compares an argon2 hash to a password
crypto::argon2::generate()Generates a new argon2 hashed password
crypto::bcrypt::compare()Compares an bcrypt hash to a password
crypto::bcrypt::generate()Generates a new bcrypt hashed password
crypto::pbkdf2::compare()Compares an pbkdf2 hash to a password
crypto::pbkdf2::generate()Generates a new pbkdf2 hashed password
crypto::scrypt::compare()Compares an scrypt hash to a password
crypto::scrypt::generate()Generates a new scrypt hashed password
Available since: v2.0.0

The crypto::blake3 function returns the blake3 hash of the input value.

API DEFINITION

crypto::blake3(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::blake3("tobie");

-- '85052e9aab1b67b6622d94a08441b09fd5b7aca61ee360416d70de5da67d86ca'


Available since: v3.0.0

The crypto::joaat function returns the joaat hash of the input value.

API DEFINITION

crypto::joaat(string) -> number

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::joaat("tobie");

-- 2129482046


The crypto::md5 function returns the md5 hash of the input value.

API DEFINITION

crypto::md5(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::md5("tobie");

-- "4768b3fc7ac751e03a614e2349abf3bf"


The crypto::sha1 function returns the sha1 hash of the input value.

API DEFINITION

crypto::sha1(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::sha1("tobie");

-- "c6be709a1b6429472e0c5745b411f1693c4717be"


The crypto::sha256 function returns the sha256 hash of the input value.

API DEFINITION

crypto::sha256(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::sha256("tobie");

-- "33fe1859daba927ea5674813adc1cf34b9e2795f2b7e91602fae19c0d0c493af"


The crypto::sha512 function returns the sha512 hash of the input value.

API DEFINITION

crypto::sha512(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::sha512("tobie");

"39f0160c946c4c53702112d6ef3eea7957ea8e1c78787a482a89f8b0a8860a20ecd543432e4a187d9fdcd1c415cf61008e51a7e8bf2f22ac77e458789c9cdccc"


The crypto::argon2::compare function compares a hashed-and-salted argon2 password value with an unhashed password value.

API DEFINITION

crypto::argon2::compare(string, $against: string) -> bool

The following example shows this function, and its output, when used in a RETURN statement:

LET $hash = "$argon2id$v=19$m=4096,t=3,p=1$pbZ6yJ2rPJKk4pyEMVwslQ$jHzpsiB+3S/H+kwFXEcr10vmOiDkBkydVCSMfRxV7CA";
LET $pass = "this is a strong password";
RETURN crypto::argon2::compare($hash, $pass);

-- true


The crypto::argon2::generate function hashes and salts a password using the argon2 hashing algorithm.

API DEFINITION

crypto::argon2::generate(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::argon2::generate("this is a strong password");

"$argon2id$v=19$m=4096,t=3,p=1$pbZ6yJ2rPJKk4pyEMVwslQ$jHzpsiB+3S/H+kwFXEcr10vmOiDkBkydVCSMfRxV7CA"


The crypto::bcrypt::compare function compares a hashed-and-salted bcrypt password value with an unhashed password value.

API DEFINITION

crypto::bcrypt::compare(string, $against: string) -> bool

The following example shows this function, and its output, when used in a RETURN statement:

LET $hash = "$2b$12$OD7hrr1Hycyk8NUwOekYY.cogCICpUnwNvDZ9NiC1qCPHzpVAQ9BO";
LET $pass = "this is a strong password";
RETURN crypto::bcrypt::compare($hash, $pass);

true


The crypto::bcrypt::generate function hashes and salts a password using the bcrypt hashing algorithm.

API DEFINITION

crypto::bcrypt::generate(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::bcrypt::generate("this is a strong password");

"$2b$12$OD7hrr1Hycyk8NUwOekYY.cogCICpUnwNvDZ9NiC1qCPHzpVAQ9BO"


The crypto::pbkdf2::compare function compares a hashed-and-salted pbkdf2 password value with an unhashed password value.

API DEFINITION

crypto::pbkdf2::compare(string, $against: string) -> bool

The following example shows this function, and its output, when used in a RETURN statement:

LET $hash = "$pbkdf2-sha256$i=10000,l=32$DBURRPJODKEt0IId1Lqe+w$Ve8Z00mibHDSKLbyKTceEBBcDpGoK0AEUl7QzDTIec4";
LET $pass = "this is a strong password";
RETURN crypto::pbkdf2::compare($hash, $pass);


true


The crypto::pbkdf2::generate function hashes and salts a password using the pbkdf2 hashing algorithm.

API DEFINITION

crypto::pbkdf2::generate(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::pbkdf2::generate("this is a strong password");

"$pbkdf2-sha256$i=10000,l=32$DBURRPJODKEt0IId1Lqe+w$Ve8Z00mibHDSKLbyKTceEB"


The crypto::scrypt::compare function compares a hashed-and-salted scrypt password value with an unhashed password value.

API DEFINITION

crypto::scrypt::compare(string, $against: string) -> bool

The following example shows this function, and its output, when used in a RETURN statement:

LET $hash = "$scrypt$ln=15,r=8,p=1$8gl7bipl0FELTy46YJOBrw$eRcS1qR22GI8VHo58WOXn9JyfDivGo5yTJFvpDyivuw";
LET $pass = "this is a strong password";
RETURN crypto::scrypt::compare($hash, $pass);


true


The crypto::scrypt::generate function hashes and salts a password using the scrypt hashing algorithm.

API DEFINITION

crypto::scrypt::generate(string) -> string

The following example shows this function, and its output, when used in a RETURN statement:

RETURN crypto::scrypt::generate("this is a strong password");

"$scrypt$ln=15,r=8,p=1$8gl7bipl0FELTy46YJOBrw$eRcS1qR22GI8VHo58WOXn9JyfDivGo5yTJFvpDyivuw"


Was this page helpful?