PDA

View Full Version : سوال: ذخیره اطلاعات در بانک به صورت MD5 hash و خواندن اطلاعات



davidrobert
شنبه 04 خرداد 1392, 19:19 عصر
سلام من میخوام اطلاعات کاربران رو در بانک اطلاعات ذخیره کنم که شامل نام ،نام خانوادگی جنسیت نام کاربری و رمز عبور و تصویر شخص رو ذخیره کنم ولی مشکلی دارم میخوام نام کاربری و رمز عبور رو به صورت امنیتی ذخیره کنم یعنی به صورت MD5 hash ذخیره کنم نمی دانم چطور میخوام وقتی نام کاربر رو میدم David به صورت رمز یعنی md5 ذخیره بیشه به این صورت 172522ec1028ab781d9dfd17eaca4427 و وقتی خواستم وارد برنامه بشم نام کاربری David رو دادم برای ورود بدان این 172522ec1028ab781d9dfd17eaca4427 همان David هستش و وقتی وارد شدم نام نام خانوادگی و تصویر شخص رو در برنامه نشان بده که وارد شده و میخوام هم رمز عبور و نام کاربری طرف رو عوض کنم نام کاربری خودش رو داد بتوانم نام کاربری قبلی و رمز عبور قبلی خودش رو عوض کنه خیلی ممنون میشم.

من فایل کمکی از طرف برادر khokhan دریافت کردم که اطلاعات را به صورت باینری ذخیره میکنه ولی مشکلی که دارم این هستش در سیستم من هی جور جواب نمیدهد یا به سختی جواب میده برادر khokhan فایل رو که به داده اطلاعات رو ذخیره میکنه ولی مشکلی که دارم این هستش که اگه بار اول اطلاعات رو درست بدم اطلاعات رو ذخیره میکنه ولی اگه من نام کاربری رو تکراری بدم و یا رمز عبور رو اشتباه وارد کنم وقتی نام کاربری رو اشکال میگیره برنامه دیگه کار نمیکنی و هی خطا میده تا از برنامه در بیام و دیگه خطا نمیدهد اگه خطا نام کاربری رو بگیره دیگه خطا رمز عبور رو نمیگیرد خواهش اگه کسی فایل کمکی دارد که بتوانم اطلاعات رو به وسیله کتاب خانه
using System.Security.Cryptography;



بدم یعنی اطلاعات رو به صورت MD5 ذخیره کنم خیلی ممنون میشم تا به مشکل بر خورد نکنم و بتوانم اطلاعات کاربران را ثبت ، لاگین و تغییر بدم و همین طور در صفحه اصلی اطلاعات طرف رو نشان بده که کسی وارد سیستم شده خیلی ممنون میشم.خیلی لازم دارم به همچین فایلی. خواهشن اگه کسی فایل کمکی دارد در اختیار من قرار بده خیلی ممنون میشم.

khokhan
شنبه 04 خرداد 1392, 19:54 عصر
این برای ثبت با MD5

ببین ثبت می کنه یا نه اگه تونستی راش بندازی بازیابی هم می ذارم


cmdobj.CommandText = "insert into Tbl_Users ( userid ,U_Name ,U_LastName ,U_uUserName,U_pPassWord ) values(@userid ,@U_Name ,@U_LastName ,@U_uUserName,@password)";
cmdobj.Parameters.AddWithValue("@userid", Radif().ToString());
cmdobj.Parameters.AddWithValue("@U_Name", TxtName.Text);
cmdobj.Parameters.AddWithValue("@U_LastName", TxtLastName.Text);
cmdobj.Parameters.AddWithValue("@U_uUserName", TxtUserName.Text);

string strPassword = txtPassword.Text;
MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider();
byte[] hashedBytes;
UTF8Encoding encoder = new UTF8Encoding();
hashedBytes = md5Hasher.ComputeHash(encoder.GetBytes(strPassword ));
SqlParameter paramPwd;
paramPwd = new SqlParameter("@Password", SqlDbType.Binary, 16);
paramPwd.Value = hashedBytes;
cmdobj.Parameters.Add(paramPwd);


cmdobj.ExecuteNonQuery();
db.Disconnect();

tooraj_azizi_1035
شنبه 04 خرداد 1392, 20:16 عصر
Store, retrieve and validate password (SecureString) in SQL Server (http://stackoverflow.com/questions/8628350/how-to-store-retrieve-password-in-sql-server)