PDA

View Full Version : کد کردن اطلاعات ورودی به بانک



raminsalemi
دوشنبه 04 شهریور 1387, 14:30 عصر
سلام: در برنامه من username , passwordدر بانک ذخیره میشه وبرای شناسایی کاربر در tableمورد نظر جستجو میشه.من چطور میتونم کاری کنم که وقتی username , passwordدر Tableذخیره میشه به شکل ؟ و یا * ذخیره بشه تا امکان سو ء استفاده باقی نمانه؟
با تشکر

yasercomeng
سه شنبه 05 شهریور 1387, 04:14 صبح
از اين كاراي عجيب غريب نمي توني انجام بدي ولي مي توني شناسه ي كاربري و رمز عبورتو رمز نگاري كني اونم با متدهاي مختلف hashing، Asymetric ، Symetric كه هر كدوماشونم هم تو .NET پيدا مي كني هم تويه اكثر پايگاه داده هايي كه ما استفاده مي كنيم(SQL Server، MySQL، Oracle).موفق باشيد.

raminsalemi
سه شنبه 05 شهریور 1387, 11:38 صبح
از راهنمایی شما ممنون اگر امکان دراه یک نمونه برنامه یا توضیح کامل این کاررو همراه با کد برام بذارید. با تشکر فراوان

pars.engineer
سه شنبه 05 شهریور 1387, 14:54 عصر
يكي از الگوريتم هاي معروف براي هش كردن اطلاعات MD5 مي باشد كه در خود .NET موجود است.
براي استفاده از اين روش، پس از اضافه كردن Name Space و تابع مربوطه، بايد مقداري را كه كاربر مثلا براي Password وارد كرده است را به تابع بفرستيد. خروجي اين تابع، هش شده ي Password شماست كه فارغ از طول Password ورودي يك رشته 32 كركتري به بالا را بر مي گرداند.
ضمنا اين الگوريتم بي بازگشت است.
در لينك زير Name Space و تابع مربوطه همراه با يك مثال توسط آقاي امير شكاري گذاشته شده است.
http://barnamenevis.org/forum/showpost.php?p=473977

موفق باشيد.

ASKaffash
سه شنبه 05 شهریور 1387, 16:56 عصر
سلام
اگر SQLServer شما 2005 است میتوانید از توابع Encrypt و Deycrypt استفاده کنید و نیازی نیست خیلی کد در لایه برنامه کاربردی بنویسید.


Declare @MyPass VarChar(50)
Set @MyPass='MyPass'
Declare @MyString VarChar(100)
Set @MyString='MyEncrypt'
Select @MyPass,EncryptByPassPhrase(@MyString,@MyPass)

raminsalemi
سه شنبه 05 شهریور 1387, 21:22 عصر
sqlserverمن 2000 است

ASKaffash
چهارشنبه 06 شهریور 1387, 08:32 صبح
sqlserverمن 2000 است
باسلام
بنابراین روش sippin که در لینک ارائه شده است چوابگوی شماست.