استفاده از MD5 Crypto Service Provider
شما می تونیم از تابع زیر استفاده کنین ، به این صورت که برای اولین بار که می خواین کلمه رمز را ذخیره کنین رشته وارد شده را به تابع زیر داده و مقدار برگشتی را در دیتا بیس ذخیره کنین ( اینم دقت کنین که طول آرایه 16 تا می باشد، و فیلد رمز عبور در دیتابیس binary با طول 16 تعریف کنین)
در دفعات بعد هنگامی که کاربر کلمه عبور را وارد کرد، بازهم با استفاده از تابع زیر آنرا Enrypt کنین و نتیجه را با مقدارای که در دیتابیس ذخیره کردین مقایسه کنین. (برای ذخیره کلمه عبور نیازی نیست از روش های رمزنگاری دوطرفه استفاده کنین)
private byte[] StringToMD5(string password)
{
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
UTF8Encoding utf8 = new UTF8Encoding();
byte[] bytePass = new byte[16];
bytePass = md5.ComputeHash(utf8.GetBytes(password));
return bytePass;
}
من نوشتمش ولی به زبان VB2008
نقل قول: اینکریپت کردن کلمه عبور
نقل قول:
نوشته شده توسط
hassan razavi
کدی که دوست عزیزمون ir_programer زحمتش و کشیدن رو تبدیل به کنترل کردم تا به راحتی در C# استفاده بشه. همراه با مثال میفرستم
ممنون از لطفتون
من پسورد دیتا بیس ام رو با برنامه شما کد کردم
بعد برای DeCode کردنش تو برنامه خودم کد زدم
قبلش dll رو به برنامه ام اضافه کردم بعداون قسمت decrypet رو به صورت زیر نوشتم
البته من همیشه یه کلاس بنام Class_SQLConnection دارم که همیشه از اونجا به دیتا بیس وصل میشم...:
class Class_SQLConnection
{
public enum EncodingType
{HEX = 0,
BASE_64 = 1}
public enum Algorithm
{SHA1 = 0,
SHA256 = 1,
SHA384 = 2,
Rijndael = 3,
TripleDES = 4,
RSA = 5,
RC2 = 6,
DES = 7,
//DSA = 8
MD5 = 9,
RNG = 10,
//Base64 = 11
SHA512 = 12}
public static SqlConnection con;
public static void StrCon()
{con = new SqlConnection();
string s = Bills.Properties.Settings.Default.BillDBConnection String;
int index = s.IndexOf("Password=");
string str = s.Substring(0, index + 9);
string pwd = (s.Substring(index + 9, s.Length - index - 9));
CryptoCntrol.CryptCtrl cc = new CryptoCntrol.CryptCtrl();
string p = cc.DeCryption(pwd, "Hassan", (int)EncodingType.HEX, (int)Algorithm.RSA);
str += p;
con.ConnectionString = str;}}
ولی جواب نمیده...
فکر میکنم کار دیگه ایی باید انجام میدادم که جا افتاده...
لطفا راهنماییم کنید
نقل قول: اینکریپت کردن کلمه عبور
نقل قول:
سلام
من برای رمزنگاری از توابع Hash استفاده می کنم و مشکل تشایه کلمات عبور رو دارم.
اگه بخوام اینطور که شما می گین از SaltValue به طور رندم استفاده کنم و Password رو با این SaltValue کد کنم، چه طوری در هنگام login کاربر به سایت دوباره همون Saltvalue رو تولید کنم؟ ( من از MD5 استفاده می کنم)
یا شایدم باید کار دیگه ای بکنم؟
http://www.dotnetspider.com/resource...ncryption.aspx