mirror of
https://git.joinfirefish.org/firefish/firefish.git
synced 2024-05-19 00:51:11 +02:00
623cadf981
This reverts commit 8d3c35c0c6
.
21 lines
502 B
TypeScript
21 lines
502 B
TypeScript
import bcrypt from "bcryptjs";
|
|
import * as argon2 from "argon2";
|
|
|
|
export async function hashPassword(password: string): Promise<string> {
|
|
return argon2.hash(password);
|
|
}
|
|
|
|
export async function comparePassword(
|
|
password: string,
|
|
hash: string,
|
|
): Promise<boolean> {
|
|
if (isOldAlgorithm(hash)) return bcrypt.compare(password, hash);
|
|
|
|
return argon2.verify(hash, password);
|
|
}
|
|
|
|
export function isOldAlgorithm(hash: string): boolean {
|
|
// bcrypt hashes start with $2[ab]$
|
|
return hash.startsWith("$2");
|
|
}
|