|
@@ -135,52 +135,5 @@ namespace Jellyfin.Server.Implementations.Users
|
|
|
? null
|
|
|
: Hex.Encode(PasswordHash.Parse(user.EasyPassword).Hash);
|
|
|
}
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// Hashes the provided string.
|
|
|
- /// </summary>
|
|
|
- /// <param name="user">The user.</param>
|
|
|
- /// <param name="str">The string to hash.</param>
|
|
|
- /// <returns>The hashed string.</returns>
|
|
|
- public string GetHashedString(User user, string str)
|
|
|
- {
|
|
|
- if (string.IsNullOrEmpty(user.Password))
|
|
|
- {
|
|
|
- return _cryptographyProvider.CreatePasswordHash(str).ToString();
|
|
|
- }
|
|
|
-
|
|
|
- // TODO: make use of iterations parameter?
|
|
|
- PasswordHash passwordHash = PasswordHash.Parse(user.Password);
|
|
|
- var salt = passwordHash.Salt.ToArray();
|
|
|
- return new PasswordHash(
|
|
|
- passwordHash.Id,
|
|
|
- _cryptographyProvider.ComputeHash(
|
|
|
- passwordHash.Id,
|
|
|
- Encoding.UTF8.GetBytes(str),
|
|
|
- salt),
|
|
|
- salt,
|
|
|
- passwordHash.Parameters.ToDictionary(x => x.Key, y => y.Value)).ToString();
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// Hashes the provided string.
|
|
|
- /// </summary>
|
|
|
- /// <param name="user">The user.</param>
|
|
|
- /// <param name="str">The string to hash.</param>
|
|
|
- /// <returns>The hashed string.</returns>
|
|
|
- public ReadOnlySpan<byte> GetHashed(User user, string str)
|
|
|
- {
|
|
|
- if (string.IsNullOrEmpty(user.Password))
|
|
|
- {
|
|
|
- return _cryptographyProvider.CreatePasswordHash(str).Hash;
|
|
|
- }
|
|
|
-
|
|
|
- // TODO: make use of iterations parameter?
|
|
|
- PasswordHash passwordHash = PasswordHash.Parse(user.Password);
|
|
|
- return _cryptographyProvider.ComputeHash(
|
|
|
- passwordHash.Id,
|
|
|
- Encoding.UTF8.GetBytes(str),
|
|
|
- passwordHash.Salt.ToArray());
|
|
|
- }
|
|
|
}
|
|
|
}
|