C# MD5 สอบถามเกี่ยวกับการใส่ Function ตอนแปลง Password ครับ
คือผมเขียน Function เสร็จเรียบร้อยแล้วแต่ต้องการเอาฟั่งชั่นมาใส่ตอนสมัครเพื่อ Encryption. Password อยากทราบว่าถ้าเขียนแบบนี้นี้ต้องใส่ยังไงครับ
Code (C#)
strSQL = new StringBuilder();
strSQL.Append(" INSERT INTO register ");
strSQL.Append(" (username,lastname,password,address,tel,mobile,email)" );
strSQL.Append(" VALUES ");
strSQL.Append(" (@sUsername,@sLastname,@sPassword,@sAddress,@sTel,@sMobile,@sEmail) ");
objCmd = new SqlCommand(strSQL.ToString(),objConn);
objCmd.Parameters.Add("@sUsername",SqlDbType.VarChar).Value = this.txtUsername.Text;
objCmd.Parameters.Add("@sLastname",SqlDbType.VarChar).Value = this.txtLastname.Text;
objCmd.Parameters.Add("@sPassword",SqlDbType.VarChar).Value = this.txtPassword.Text;
objCmd.Parameters.Add("@sAddress",SqlDbType.VarChar).Value = this.txtAddress.Text;
objCmd.Parameters.Add("@sTel",SqlDbType.VarChar).Value = this.txtTel.Text;
objCmd.Parameters.Add("@sMobile", SqlDbType.VarChar).Value = this.txtMobile.Text;
objCmd.Parameters.Add("@sEmail", SqlDbType.VarChar).Value = this.txtEmail.Text;
objCmd.ExecuteNonQuery();
นี่คือ Function
Code (C#)
public string EncMD5(string input)
{
MD5 md5Hashfc = MD5.Create();
byte[] data = md5Hashfc.ComputeHash(Encoding.Default.GetBytes(input));
StringBuilder sBuilder = new StringBuilder();
int i = 0;
for (i = 0; i <= data.Length - 1; i++)
{
sBuilder.Append(data[i].ToString("x2"));
}
return sBuilder.ToString();
}
ถ้าเขียนแบบเก่าจะใส่เข้าไปอย่างงี้แต่เค้าบอกการ Connect Db ให้เขียนแบบด้านบนจะดีกว่าเลยอยากขอความรู้แบบใหม่ครับ
Code (C#)
strSQL = "INSERT INTO register (username,lastname,password,address,tel,mobile,email) " +
" VALUES " +
" ('" + this.txtUsername.Text + "','" + this.txtLastname.Text + "','"+ EncMD5("'" + this.txtPassword.Text + "'") +"', " +
" '" + this.txtAddress.Text + "','" + this.txtTel.Text + "','" + this.txtMobile.Text + "','" + this.txtEmail.Text +"' )";
Tag : .NET, Ms SQL Server 2008, Web (ASP.NET), C#, VS 2010 (.NET 4.x)
Date :
2013-05-03 10:07:09
By :
offonepoint
View :
1544
Reply :
5
Code
strSQL = "INSERT INTO register (username,lastname,password,address,tel,mobile,email) " +
" VALUES " +
" ('" + this.txtUsername.Text + "','" + this.txtLastname.Text + "','"+ '" + EncMD5(this.txtPassword.Text) +"', " +
" '" + this.txtAddress.Text + "','" + this.txtTel.Text + "','" + this.txtMobile.Text + "','" + this.txtEmail.Text +"' )";
Date :
2013-05-03 12:27:29
By :
mr.win
Code (C#)
public string MD5(string strString)
{
ASCIIEncoding ASCIIenc = new ASCIIEncoding();
string strReturn;
byte[] ByteSourceText = ASCIIenc.GetBytes(strString);
MD5CryptoServiceProvider Md5Hash = new MD5CryptoServiceProvider();
byte[] ByteHash = Md5Hash.ComputeHash(ByteSourceText);
strReturn = "";
foreach (byte b in ByteHash)
{
strReturn = (strReturn + b.ToString("x2"));
}
return strReturn;
}
function สำหรับแปลงให้เป็น MD5 (C#)
ประวัติการแก้ไข 2013-06-06 09:42:13
Date :
2013-06-06 09:41:59
By :
mr.win
Date :
2014-10-01 14:12:12
By :
mr.win
Load balance : Server 03