هر رشته کاراکتر، یک هش منحصر به فرد؟؟

پرسیده شده
فعالیت 1123 روز پیش
دیده شده 411 بار
0

سلام و درود

ببخشید یه سوال داشتم، توی ویدیوی های قبل گفته شد که هر رشته کاراکتر با یک الگوریتم، هش منحصر به فرد خودشو داره ولی تو این ویدیو استاد برای تولید هش پسورد، با هر بار رفرش یک رشته جدید ایجاد میشد، اونوقت اگه قراره هربار یک چیزی تولید کنه، چطور میتونه مثلا با اون هش داخل دیتابیس تطابق بده؟

و در کنار این سوال دیگه ای داشتم که استاد داخل پروژه پسورد ادمین هارو به صورت هش شده قرار دادن ولی برای لاگین، جایی پسورد دریافتی از کاربر رو هش نکردن، هرچقدرم تو ویدیو و فایل ها گشتم این هش پسورد ورودی کاربر رو پیدا نکردم، آیا واقعا این تبدیل انجام نشده و اگر نشده چرا؟

ممنون میشم توضیح بدید تا برام شفاف بشه!

فایل پیوست

امیر ابوئی
امیر ابوئی

14 فروردین 00

0
حذف شده

سلام و احترام

با تابع password_hash شما میتونید یک رشته رو hash کنید:

echo password_hash('mysecretpassword', PASSWORD_DEFAULT);

نتیجه:

$2y$10$n4xlP3HHKlAdRZoGnP7SUe6TdmeR/RqeG5VuFTYTB4Q07KqEZRZF2

حالا شما password هش شده رو که توی دیتابیس ذخیره سازی کردید میتونید خیلی راحت با متد password_verify اون رو بررسی کنید ببینید که پسورد ورودی با مقدار هش شدش یکی هست یا ن

password_verify ( string $password , string $hash ) : bool

پارامتر اول همون پسوردیه که برای مثال کاربر توی فرم لاگین وارد کرده و پارامتر دوم همون پسور هش شده هستش که توی دیتابیس برای کاربر ذخیره شده

<?php
// Hash generated using password_hash
$hash = '$2y$10$n4xlP3HHKlAdRZoGnP7SUe6TdmeR/RqeG5VuFTYTB4Q07KqEZRZF2';

if (password_verify('mysecretpassword', $hash)) {
    echo 'Password is valid!';
} else {
    echo 'Invalid password.';
}
?>
فایل پیوست

امیر صالحی

توسط

امیر صالحی

15 فروردین 00

حذف شده
اینا همش اوکیه ولی مثلا یه رشته ‘salam’ هربار یه هش رو نتیجه میده خب از کجا میتونه این هش هارو تطابق بده ؟
امیر ابوئی

15 فروردین 00

0
حذف شده

اینا همش اوکیه ولی مثلا یه رشته ‘salam’ هربار یه هش رو نتیجه میده خب از کجا میتونه این هش هارو تطابق بده ؟ 

فایل پیوست

امیر ابوئی

توسط

امیر ابوئی

15 فروردین 00