mirror of
https://github.com/zadam/trilium.git
synced 2024-12-27 09:43:18 +08:00
26 lines
No EOL
668 B
Python
26 lines
No EOL
668 B
Python
import scrypt # pip install scrypt
|
|
import sql
|
|
|
|
def getVerificationHash(password):
|
|
salt = sql.getOption('password_verification_salt')
|
|
|
|
return getScryptHash(password, salt)
|
|
|
|
def getPasswordDerivedKey(password):
|
|
salt = sql.getOption('password_derived_key_salt')
|
|
|
|
return getScryptHash(password, salt)
|
|
|
|
def getScryptHash(password, salt):
|
|
# scrypt doesn't like unicode strings
|
|
password = password.encode('ascii', 'ignore')
|
|
salt = salt.encode('ascii', 'ignore')
|
|
|
|
hashed = scrypt.hash(password=password,
|
|
salt=salt,
|
|
N=16384,
|
|
r=8,
|
|
p=1,
|
|
buflen=32)
|
|
|
|
return hashed |