fix(core): handle argon2i password scheme

Fixes #5531
This commit is contained in:
Francis Lachapelle
2022-07-05 12:42:57 -04:00
parent 27d45b6d76
commit 2f9f610210
2 changed files with 3 additions and 2 deletions

View File

@@ -1700,7 +1700,7 @@ passwords. Possible values are: `none`, `plain`, `crypt`, `md5`,
`sha256-crypt`, `sha512`, `sha512-crypt`, its ssha (e.g. `ssha` or
`ssha256`) variants, `blf-crypt`, `PBKDF2`, and `sym-aes-128-cbc`.
The `argon2i` and `argon2id` password hashing algorithms are supported
if SOGo is compiled with `libsodium`.
if SOGo is compiled with `libsodium`. `argon2` is a synonym for `argon2i`.
Passwords can have the scheme prepended in the form
`{scheme}encryptedPass`.

View File

@@ -272,7 +272,8 @@ static const char salt_chars[] =
return [self asPBKDF2SHA1UsingSalt: theSalt];
}
#ifdef HAVE_SODIUM
else if ([passwordScheme caseInsensitiveCompare: @"argon2i"] == NSOrderedSame)
else if ([passwordScheme caseInsensitiveCompare: @"argon2i"] == NSOrderedSame ||
[passwordScheme caseInsensitiveCompare: @"argon2"] == NSOrderedSame)
{
return [self asArgon2iUsingSalt: theSalt];
}