PDA

View Full Version : روند بدست آوردن رمز عبور



Mohsen.
دوشنبه 03 تیر 1392, 08:12 صبح
سلام دوستان.
من یک سوال در مورد نحوه بدست آوردن رمز عبور زمانی که کاربر اونو فراموش میکنه داشتم.
برای مثال در سایت برنامه نویس وقتی درخواست رمز عبور جدید میکنی آدرس زیر رو در اختیارت قرار میده که میتونه شامل آی دی کاربر و یک عبارت هش شده تصادفی باشه.

http://barnamenevis.org/login.php?a=pwd&u=178592&i=43a092e50601cf88467fdsfsdfsdf67d06855werwer0d762 3ce2fe27
تا اینجا مشکلی نیست. حالا همراه با آدرس بالا نوشته تا 24 ساعت لینک پایداره و بعد از اون منقضی میشه. میخواستم بدونم آیا مثلا هر 24 ساعت یک بار، یک Cron-Jobs اجرا میکنند تا همه درخواست ها حذف بشه یا روش دیگه ای هست؟
نکته دیگه اینکه من باید یک فیلد جدا برای ذخیره عبارت هش شده تصادفی توی جدول کاربران درست کنم؟ یا روش دیگه ای رو پیشنهاد میکنید؟
ممنون.

--------------------------
دوستان بعد که یکم فکر کردم فهمیدم باید اینکارو در زمان ثبت نام برای شناسایی درست بودن ایمیل کاربر هم انجام بدم. کلا اگه اطلاعاتی در مورد نحوه انجام این کار داشتید خواهشم میکنم در اختیار بزارید. ممنون.

amin7x
دوشنبه 03 تیر 1392, 12:08 عصر
سلام
من الگوریتم رمزگذاری VB رو نمیدونم ولی این رو میدونم که هیچ وقت پسورد رو بدون هش در دیتابیس خود ذخیره نمیکنه اگه توجه کنید در VB یک ایمیل برای شما ارسال میشه که 24 ساعت اعتبار داره و همینطور وقتی شما لینک رو باز نکنید میفهمه که این درخواست Fake بوده و اون رو باطل میکنه (توی این بازه زمانی) و همینطور وقتی رو آدرس داده شده کلیک کنید پسورد قبلی شما رو به شما نمیده و شما باید یک پسورد جدید وارد کنید (میتونه همون قبلی یا پسورد جدیدی باشه) به نظر من این روش VB خوبه اما بهتره یک سوال های امنیتی هم همراهش کنیم که امنیتش بیشتر باشه.

Mohsen.
دوشنبه 03 تیر 1392, 12:24 عصر
سلام
من الگوریتم رمزگذاری VB رو نمیدونم ولی این رو میدونم که هیچ وقت پسورد رو بدون هش در دیتابیس خود ذخیره نمیکنه اگه توجه کنید در VB یک ایمیل برای شما ارسال میشه که 24 ساعت اعتبار داره و همینطور وقتی شما لینک رو باز نکنید میفهمه که این درخواست Fake بوده و اون رو باطل میکنه (توی این بازه زمانی) و همینطور وقتی رو آدرس داده شده کلیک کنید پسورد قبلی شما رو به شما نمیده و شما باید یک پسورد جدید وارد کنید (میتونه همون قبلی یا پسورد جدیدی باشه) به نظر من این روش VB خوبه اما بهتره یک سوال های امنیتی هم همراهش کنیم که امنیتش بیشتر باشه.

ممنون. این ها رو که میدونیم!! سوال من یک چیز دیگه بود.

amin7x
دوشنبه 03 تیر 1392, 13:01 عصر
ممنون. این ها رو که میدونیم!! سوال من یک چیز دیگه بود.

این از عوارض حواس پرتی بود ببخشید اشتباه پاسخ دادم.

Javidhb
دوشنبه 03 تیر 1392, 15:15 عصر
هم میتونید فیلدها رو توی جدول خود کاربرا استفاده کنید و یا توی یک جدول جدا.

شما به دو تا فیلد احتیاج دارید:
1. برای ذخیره مقدار هش شده
2. زمان انجام هش (هنگام ذخیره مقدار هش ، فیلد زمان هم باید پر بشه)


کاربر با مراجعه به لینک.. مقدار هش و زمان رو بررسی میکنید، که از زمان خاصی بیشتر نشده باشه.. و بعدش هر کاری که لازمه مثل تغیر رمز و ... رو انجام میدید.

MMSHFE
دوشنبه 03 تیر 1392, 15:24 عصر
برای اعتبارسنجی، زمان تولید هش چک میشه و اگه 24 ساعت گذشته باشه، قبول نمیکنه و برای حذف هم دو راه دارین:
1- استفاده از Cron Jobs برای حذف هشهای منقضی شده
2- قراردادن کد حذف هشهای منقضی شده در فایلی که توی همه صفحات ضمیمه میشه (مثل config یا functions یا امثالهم) تا در هربار بازدید سایت، تمامی هشهای منقضی شده حذف بشن.