BCrypt哈希与SELECT语句

时间:2018-07-09 13:58:13

标签: sql-server cryptography bcrypt

首先,在使用SHA256时,我可以使用类似这样的东西:

     try
        {
            using (SqlConnection conn =
                new SqlConnection(ConfigurationManager.ConnectionStrings["StringConnexion"].ConnectionString))
            {
                await conn.OpenAsync();
                using (SqlCommand command =
                    new SqlCommand("Select * from USERS where LOGIN_NAME = @Login and Mdp = @passweord", conn))
                {
                    command.Parameters.AddWithValue("@Login", Username);
                    command.Parameters.AddWithValue("@password", GetHashSha256(Password));

                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            ....
另一方面,

BCrypt每次都会生成一个新的输出,因此与数据库进行比较将永远不会成功,在这种情况下我该如何进行?

1 个答案:

答案 0 :(得分:0)

您应该从数据库中检索散列的值,并使用BCrypt库来对照数据库值验证用户提供的值。

@Component