Шифровать пароли на Sql Server 2008, используя SHA1
Я разработал систему входа в систему с использованием C #, где имя пользователя и пароль проверяются в SQL Server 2008 перед загрузкой главной страницы. Я хочу зашифровать сохраненный пароль в базе данных. Возможно ли это сделать с помощью алгоритмов C # и SHA1?
Вот моя хранимая процедура:
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 userid=@userid and password=@password)
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();
}
Я прошел через подобные вопросы, задаваемые другими пользователями здесь, но они не работали для меня. Может кто-нибудь предложить изменения в коде, чтобы можно было выполнить шифрование пароля?
Спасибо