[英]Unable to convert varchar type to byte[]
我想將明文密碼與保存在數據庫中的crypted_password和salt比較,因為我有一個名為passwordisvalid()的函數,該函數具有3個參數(字符串,byte [],byte []),明文密碼的字符串,byte []用於保存的cryptedpassword和保存的salt和crypted_password和salt屬性是數據庫中的varchar類型,所以我的問題是如何將varchar數據類型轉換為byte [],以便可以將其傳遞給passwordisvalid()?
public static bool IsPasswordValid(string passwordPlainText, byte[] savedSaltBytes, byte[] savedHashBytes)
{
byte[] array1 =GenerateSaltedHash(passwordPlainText,savedSaltBytes);
byte[] array2 = savedHashBytes;
if (array1.Length != array2.Length)
return false;
for (int i = 0; i < array1.Length; i++)
{
if (array1[i] != array2[i])
return false;
}
return true;
}
任何幫助將不勝感激。
數據庫中的varchar元素應映射回字符串。 所以問題就變成了,我怎樣才能將字符串轉換為字節數組。
看一下這篇文章: 如何在C#中獲得字符串的一致字節表示而無需手動指定編碼? 它說明了如何在不使用utf編碼的情況下轉換為byte []。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.