Sample code for 30+ languages & platforms
Xbase++

BCrypt Verify a Password (Check if Password is Correct)

See more Encryption Examples

A system that uses BCrypt for storing passwords would not store the actual password, but would instead store the bcrypt hash of the password. When a user presents the password, such as for login, call BCryptVerify to verify the password against the stored bcrypt hash.

Note: This example requires Chilkat v9.5.0.65 or greater.

Chilkat Xbase++ Downloads

Xbase++
LOCAL oCrypt
LOCAL cStoredHash
LOCAL cPassword
LOCAL nPasswordValid

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oCrypt := CreateObject("Chilkat.Crypt2")

cStoredHash := "$2a$10$H5kIVktMGzAPKGKNAe9DVu0iwEqfhv/o4MMJ/Dzw/MPy1leOE9NOK"
cPassword := "mySecretPassword"

nPasswordValid := oCrypt:BCryptVerify(cPassword, cStoredHash)
IF (nPasswordValid == 1)
    ? cPassword + " is valid."
ELSE
    ? cPassword + " is NOT valid."
ENDIF

cPassword := "notAValidPassword"
nPasswordValid := oCrypt:BCryptVerify(cPassword, cStoredHash)
IF (nPasswordValid == 1)
    ? cPassword + " is valid."
ELSE
    ? cPassword + " is NOT valid."
ENDIF

//  Output should be:

//  	mySecretPassword is valid.
//  	notAValidPassword is NOT valid.

oCrypt:destroy()