mohammadi4net
پنج شنبه 29 مرداد 1388, 00:11 صبح
الف. روش برگشت ناپذیر
برای نگه داری رمز معمولا از الگوریتم های برگشت ناپذیر استفاده می شود مثلا می خواهیم رمز "mohamamdi4net" را رمز نگاری کنیم
*اصلاح می کنم در برگشت ناپذیر بجای لفظ رمز نگاری باید از درهم سازی استفاده کنیم.
با استفاده از توابعی که قبلا تعریف کرده ایم انجام می دهیم:
MD5("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return " 58F3710DDE9FC7FD7FD97ADBBC47A3AA" , Length=32
SHA1("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "B75F51494D1DC37309BE32EAB552143B6B73DA0A" , Length=40
SHA256("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return " 997DDBD00DDFC9466697627D87ACCA715A0013FECC7262EF9F BD294982A35D76" , Length=64
SHA384("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "2A3E7B0C5475CC58C727BDBD7F40ADB9701D973945539C5430 A70F823FE8F15B3590EE3BA9682682054EDE63BC5A93A5" , Length=96
SHA512("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "9B80CC8AE581C0DC9782EA2B0F4E3B8D6EB6232070019F64EB E2E8E494EC620CCE7487D30177D9C24E3C1313ED6063BD0402 FFC1931450BA99F01405743BEAF4" , Length=128
خوب حال می خواهیم رمز کاربر را برای ورود به برنامه بررسی کنیم، چون الگوریتم های بالا برگشت ناپذیر هستند، ابتدا رمزی را که کاربر وارد کرده است از طریق الگوریتمی که تبدیل کرده ایم در هم سازی می کنیم و بعد با رمز اصلی مقایسه می کنیم و صحت رمز عبور را بررسی می کنیم.
توضیح: روشهای بالا در vb.net و c# قابل پیاده سازی هستند اکه کسی خواست بگه کدشونوهم بگذارم و اگه روشی دیگه هم داخل دات نت هست لطفا معرفی کنید.
ب. روش های برگشت پذیر
روش های برگشت پذیر خیلی زیاد هستند که قدیمی ترین آن تغییر کد اسکی و ... ولی فکر کنم با اطلاعات ناقص من امروز از روشی به نام کلید یا چیزی شبیه این استفاده می کنند. به این صورت که متن را با یک کلید ( که خودش می تونه یک متن دیگه باشه) رمز نگاری می کنند.مثلا یه چیزی شبیه این :
Encrypt("mohammadi4net","kelid123")در این روش اگه ما بخواهیم متن رو از حالت کد گذاری خارج کنیم باید کلید را داشته باشیم وگرنه برای هر کلیدی که وارد کنیم به یک جواب می رسیم.
یک چیز هایی هم در مورد کلید خصوص و عمومی شنیده ام ولی هیچ وقت جدی بررسی نکردم. حالا از دوستانی که اطلاعات در مورد روش های برگشت پذیر دارند توضیح بدن، هدف اینه که چگونگی پیاده سازی روش های برگشت پذیر رو داخل vb.net یا C# یاد بگیریم.
فکر کنم داخل دات نت از این روش ها استفاده میشه:
AES RSA Base64 و ...
تو سایت هم که سرچ کردم ولی مطلب مفیدی پیدا نکردم
برای نگه داری رمز معمولا از الگوریتم های برگشت ناپذیر استفاده می شود مثلا می خواهیم رمز "mohamamdi4net" را رمز نگاری کنیم
*اصلاح می کنم در برگشت ناپذیر بجای لفظ رمز نگاری باید از درهم سازی استفاده کنیم.
با استفاده از توابعی که قبلا تعریف کرده ایم انجام می دهیم:
MD5("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return " 58F3710DDE9FC7FD7FD97ADBBC47A3AA" , Length=32
SHA1("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "B75F51494D1DC37309BE32EAB552143B6B73DA0A" , Length=40
SHA256("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return " 997DDBD00DDFC9466697627D87ACCA715A0013FECC7262EF9F BD294982A35D76" , Length=64
SHA384("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "2A3E7B0C5475CC58C727BDBD7F40ADB9701D973945539C5430 A70F823FE8F15B3590EE3BA9682682054EDE63BC5A93A5" , Length=96
SHA512("mohammadi4net",Encrypt.CharactersMode.UTF8Encoding)
' return "9B80CC8AE581C0DC9782EA2B0F4E3B8D6EB6232070019F64EB E2E8E494EC620CCE7487D30177D9C24E3C1313ED6063BD0402 FFC1931450BA99F01405743BEAF4" , Length=128
خوب حال می خواهیم رمز کاربر را برای ورود به برنامه بررسی کنیم، چون الگوریتم های بالا برگشت ناپذیر هستند، ابتدا رمزی را که کاربر وارد کرده است از طریق الگوریتمی که تبدیل کرده ایم در هم سازی می کنیم و بعد با رمز اصلی مقایسه می کنیم و صحت رمز عبور را بررسی می کنیم.
توضیح: روشهای بالا در vb.net و c# قابل پیاده سازی هستند اکه کسی خواست بگه کدشونوهم بگذارم و اگه روشی دیگه هم داخل دات نت هست لطفا معرفی کنید.
ب. روش های برگشت پذیر
روش های برگشت پذیر خیلی زیاد هستند که قدیمی ترین آن تغییر کد اسکی و ... ولی فکر کنم با اطلاعات ناقص من امروز از روشی به نام کلید یا چیزی شبیه این استفاده می کنند. به این صورت که متن را با یک کلید ( که خودش می تونه یک متن دیگه باشه) رمز نگاری می کنند.مثلا یه چیزی شبیه این :
Encrypt("mohammadi4net","kelid123")در این روش اگه ما بخواهیم متن رو از حالت کد گذاری خارج کنیم باید کلید را داشته باشیم وگرنه برای هر کلیدی که وارد کنیم به یک جواب می رسیم.
یک چیز هایی هم در مورد کلید خصوص و عمومی شنیده ام ولی هیچ وقت جدی بررسی نکردم. حالا از دوستانی که اطلاعات در مورد روش های برگشت پذیر دارند توضیح بدن، هدف اینه که چگونگی پیاده سازی روش های برگشت پذیر رو داخل vb.net یا C# یاد بگیریم.
فکر کنم داخل دات نت از این روش ها استفاده میشه:
AES RSA Base64 و ...
تو سایت هم که سرچ کردم ولی مطلب مفیدی پیدا نکردم