xamarin中的哈希密码以匹配数据库哈希密码

时间:2019-03-05 10:19:11

标签: c# xamarin

我对xamarin还是很陌生,目前,我需要对用户密码进行哈希处理,然后再将其发送到api,以验证通过网络发送纯文本是否存在安全风险。

在我的Web应用程序中,我使用Microsoft.AspNet.Identity哈希密码并将其保存到数据库中

 public UserManager<IdentityUser> UserManager { get; private set; }

string strPasswordHash = UserManager.PasswordHasher.HashPassword(viewModel.Password);

我正在尝试获得与此相同的哈希算法,但未成功。所以我想知道这是否有可能在xamarin中获得相同的哈希值

因此,当对以下测试密码“ TestP @ ssw0rd”进行哈希处理时,我将得到“ AKtowbhuu47Dn4Pk8r4SM4zKo6P7N / N27afp6aDBL4sroWzOiXucrSG6kiHrjU2Ayw ==“”,因此我将如何在xamarin中使用相同的密码将相同的NetAthA密码发送给我的api。 ()验证2个哈希密码。

1 个答案:

答案 0 :(得分:0)

使用System.Security.Cryptography

 public string MD5Hash(string input)
    {
        System.Security.Cryptography.SHA512Managed sha512 = new System.Security.Cryptography.SHA512Managed();

        Byte[] EncryptedSHA512 = sha512.ComputeHash(System.Text.Encoding.UTF8.GetBytes(string.Concat(input, securityCode)));

        sha512.Clear();
        return Convert.ToBase64String(EncryptedSHA512);
    }

输入是您的纯文本,securityCode是添加密码以创建安全的哈希码, 您必须定义并分配安全代码