Хеширование пароля и добавление нуляC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Хеширование пароля и добавление нуля

Сообщение Anonymous »

Я пробую шаблон входа/регистрации пользователя и
когда я регистрирую пользователя, я выполняю хеширование следующим образом:

Код: Выделить всё

public class HashingHelper
{
public static void CreatePasswordHash(string password, out byte[] passwordHash, out byte[] passwordSalt)
{
using (var hmac = new System.Security.Cryptography.HMACSHA512())
{
passwordSalt = hmac.Key;
passwordHash = hmac.ComputeHash(Encoding.UTF8.GetBytes(password));
}
}
public static bool VerifyPasswordHash(string password, byte[] passwordHash, byte[] passwordSalt)
{
using (var hmac = new System.Security.Cryptography.HMACSHA512(passwordSalt))
{
var computedHash = hmac.ComputeHash(Encoding.UTF8.GetBytes(password));
for (int i = 0; i < computedHash.Length; i++)
{
if (computedHash[i] != passwordHash[i])
{
return false;
}
}
return true;
}

public class AccessToken
{
public string Token { get; set; }
public DateTime Expiration { get; set; }
}

public interface ITokenHelper
{
AccessToken CreateToken(User user, List operationClaims);
}

public JwtHelper(IConfiguration configuration)
{
Configuration = configuration;
_tokenOptions = Configuration.GetSection("TokenOptions").Get();

}

public AccessToken CreateToken(User user, List operationClaims)
{
_accessTokenExpiration = DateTime.Now.AddMinutes(_tokenOptions.AccessTokenExpiration);
var securityKey = SecurityKeyHelper.CreateSecurityKey(_tokenOptions.SecurityKey);
var signingCredentials = SigningCredentialsHelper.CreateSigningCredentials(securityKey);
var jwt = CreateJwtSecurityToken(_tokenOptions, user, signingCredentials, operationClaims);
var jwtSecurityTokenHandler = new JwtSecurityTokenHandler();
var token = jwtSecurityTokenHandler.WriteToken(jwt);

return new AccessToken
{
Token = token,
Expiration = _accessTokenExpiration
};

}

public JwtSecurityToken CreateJwtSecurityToken(TokenOptions tokenOptions, User user,
SigningCredentials signingCredentials, List operationClaims)
{
var jwt = new JwtSecurityToken(
issuer: tokenOptions.Issuer,
audience: tokenOptions.Audience,
expires: _accessTokenExpiration,
notBefore: DateTime.Now,
claims: SetClaims(user, operationClaims),
signingCredentials: signingCredentials
);
return jwt;
}
Код, выполняющий хеширование, дает мне следующий результат:

0x3BD49472981C07E354B156A9DBD11F507DFFEE40A353CD732ABED6E14035C36C31E93E8888E1E657B77B41B35E883 CD5F8920DDDB3F87D1F85AFFA3E2BD1015E

Все работает без проблем, но когда я попробовал войти в систему пользователя

Я не смог, потому что когда я вижу в локальной базе данных SQL, я вижу, что код добавляет Ноль номера: < /p>

0x3bd49472981c07e354b156a9dbd11f507dffee40a353cd732abed14035c36c31e93e8888e157b77b4035c36c31e93e8888e157b77b4035c36c31e93888e157b7b7b4035c36c31e93e888e157b77b77b355.d.dles14035c36c31e93e8888. F87D1F85AFFA3E2BD1015E00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000но вижу что-то не так,
так что я могу с этим поделать?

Подробнее здесь: https://stackoverflow.com/questions/722 ... dding-zero
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Хеширование пароля с солью и получение разных хешей и разных солей в любое время.
    Гость » » в форуме Python
    0 Ответы
    44 Просмотры
    Последнее сообщение Гость
  • Хеширование Python «кортежного» массива numpy
    Гость » » в форуме Python
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость
  • C++ STL: как работает набор std::unordered и хеширование std::unordered_map?
    Anonymous » » в форуме C++
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Хеширование древовидной структуры
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Хеширование паролей Django отличается от библиотеки Python passlib pbkdf2
    Anonymous » » в форуме Python
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»