簡體   English   中英

如何在數據庫中存儲哈希密碼

[英]How to store hashed password in database

我想在sql express數據庫中存儲散列密碼。 但我無法做那個。 這是我的代碼:

SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();

byte[] encode = sha.ComputeHash(Encoding.ASCII.GetBytes(pass));

string cmd = "insert into tblLogin (username,password,email,state,active) values ('"+name+"',"+encode+",'"+email+"','"+state +"',"+ active + ")" ;

在數據庫中,我將密碼保存為varbinary。

這里我的問題是我得到編碼的值為System.Byte []但不是散列值。 我怎么能這樣做,我試圖找到,我得到如何哈希密碼,但不知道如何存儲密碼。

這里我的主要問題是如何構造插入查詢並將Byte []存儲到數據庫中?

將其保存為varchar,而不是varbinary。

var provider = new SHA1CryptoServiceProvider(salt);
byte[] bytes = Encoding.UTF8.GetBytes(input);
string result = Convert.ToBase64String(provider.ComputeHash(bytes)); // store it

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM