我設計了一個使用C#的登錄系統,其中在加載主頁之前在SQL Server 2008中檢查用戶名和密碼。我希望加密數據庫中存儲的密碼。使用C#和SHA1算法可以做到嗎?使用SHA1在Sql Server 2008上加密密碼
以下是我的存儲過程:
ALTER procedure [dbo].[proc_UserLogin]
@userid varchar(20),
@password nvarchar(50)
As
declare
@ReturnVal varchar(500)
SET NOCOUNT ON
if exists(select userid,password from LoginManager where [email protected] and [email protected])
set @ReturnVal='0|Logged in Successfully'
else
set @ReturnVal='1|Login Failed/Username does not exist'
select @ReturnVal
C#代碼
public void button1_Click(object sender, EventArgs e)
{
mainform = new Form1();
string[] v;
OleDbConnection conn = new OleDbConnection("File Name=E:\\Vivek\\License Manager\\License Manager\\login.udl");
try
{
conn.Open();
string query = "EXEC dbo.proc_UserLogin'" + username.Text+ "', '" + password.Text+"'";
OleDbCommand cmd = new OleDbCommand(query, conn);
string s = Convert.ToString(cmd.ExecuteScalar());
v= s.Split('|');
if (v[0]=="0")
{
mainform.Show();
this.Hide();
}
else
{
MessageBox.Show("Please enter correct user credentials and try again");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
conn.Close();
}
我已經通過這裏的其他用戶問類似的問題了,但他們並沒有爲我工作。任何人都可以提出更改代碼,以便密碼加密可以完成?
感謝
已經嘗試過用戶存儲和密碼散列的真正預構建方法,爲什麼試圖推出自己的?你發佈的內容不是靠近解決方案的地方,那麼你希望作爲答案? – Kritner 2014-10-08 12:14:20
也加密<>哈希 – Kritner 2014-10-08 12:15:14
@Kritner所以要做什麼? – user2614235 2014-10-08 12:16:10