namespace Bit.Core.KeyManagement.Sends; public interface ISendPasswordHasher { /// /// Matches the send password hash against the user provided client password hash. The send password is server hashed and the client /// password hash is hashed by the server for comparison in this method. /// /// The send password that is hashed by the server. /// The user provided password hash that has not yet been hashed by the server for comparison. /// true if hashes match false otherwise /// Thrown if the server password hash or client password hash is null or empty. bool PasswordHashMatches(string sendPasswordHash, string clientPasswordHash); /// /// Accepts a client hashed send password and returns a server hashed password. /// /// /// server hashed password string HashOfClientPasswordHash(string clientHashedPassword); }