Comment

PHP প্রসেসিং ফর্ম (Processing Forms)

PHP পাসওয়ার্ড ভেরিফাই ( password_verify() )

Estimated reading: 1 minute 10 views Contributors

সারাংশ: এই টিউটোরিয়ালে, আপনি PHP password_verify() ফাংশন ব্যবহার করতে শিখবেন একটি পাসওয়ার্ড হ্যাশ করা পাসওয়ার্ডের সাথে মেলে কিনা তা পরীক্ষা করতে।

PHP password_verify() ফাংশনের ভূমিকা

পাসওয়ার্ডগুলি নিয়ে কাজ করার সময়, আপনার কখনই সেগুলিকে প্লেইন টেক্সট হিসাবে ডাটাবেসে সংরক্ষণ করা উচিত নয়। এবং আপনার সর্বদা একটি নিরাপদ ওয়ান-ওয়ে হ্যাশ অ্যালগরিদম ব্যবহার করে পাসওয়ার্ড হ্যাশ করা উচিত।

পিএইচপি বিল্ট-ইন password_hash() ফাংশন প্রদান করে যা একটি প্লেইন টেক্সট পাসওয়ার্ড থেকে একটি হ্যাশ তৈরি করে। মনে রাখবেন password_hash() ফাংশনটি একটি একমুখী হ্যাশ ফাংশন। এর মানে হল যে আপনি এর আসল মান খুঁজে পাচ্ছেন না।

একটি প্লেইন টেক্সট পাসওয়ার্ড হ্যাশ করা পাসওয়ার্ডের সাথে মেলে কিনা তা যাচাই করতে, আপনাকে অবশ্যই প্লেইন টেক্সট পাসওয়ার্ড হ্যাশ করতে হবে এবং হ্যাশগুলি তুলনা করতে হবে।

যাইহোক, আপনাকে ম্যানুয়ালি এটি করতে হবে না যেহেতু PHP আপনাকে বিল্ট-ইন password_verify() ফাংশন প্রদান করে যা আপনাকে হ্যাশের সাথে একটি পাসওয়ার্ড তুলনা করতে দেয়:

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

password_verify() এর দুটি প্যারামিটার রয়েছে:

  • $password মেলে একটি প্লেইন টেক্সট পাসওয়ার্ড।
  • $hash হল password_hash() ফাংশন দ্বারা তৈরি একটি হ্যাশ। পাসওয়ার্ড হ্যাশের সাথে মেলে বা অন্যথায় মিথ্যা হলে password_verify() ফাংশন সত্য দেখায়।

PHP password_verify() ফাংশনের উদাহরণ

পাসওয়ার্ড পাসওয়ার্ড1 হ্যাশের সাথে মেলে কিনা তা পরীক্ষা করতে নিম্নলিখিত উদাহরণটি password_verify() ফাংশন ব্যবহার করে:

<?php

$hash = '$2y$10$hnQY9vdyZUcwzg2CO7ykf.a4iI5ij4Pi5ZwySwplFJM7AKUNUVssO';
$valid = password_verify('Password1', $hash);

echo $valid ? 'Valid' : 'Not valid';

আউটপুট:

Valid

অনুশীলনে, আপনি লগইন যাচাই করতে নিম্নলিখিত হিসাবে password_verify() ফাংশন ব্যবহার করবেন:

  • একটি ব্যবহারকারীর নাম (বা ইমেল) দ্বারা ডাটাবেস থেকে একজন ব্যবহারকারী খুঁজুন ।
  • একটি হ্যাশ করা পাসওয়ার্ডের সাথে ব্যবহারকারীর প্রদত্ত পাসওয়ার্ড মেলে password_verify() ফাংশনটি ব্যবহার করুন।
  • পাসওয়ার্ডটি হ্যাশের সাথে মেলে, আপনি ব্যবহারকারীকে লগ ইন করুন। অন্যথায়, আপনি একটি ত্রুটি বার্তা জারি করবেন।

কোড নিম্নলিখিত মত দেখাবে:

<?php

// ...

$user = find_user_by_username($username);

if ($user && password_verify($password, $user['password'])) {
    // log the user in
    session_regenerate_id();
    $_SESSION['user_id'] = $user['id'];
} else {
    echo 'Invalid username or password';
}

নিম্নলিখিত টিউটোরিয়ালে, আপনি লগইন ফর্মে password_verify() ফাংশন ব্যবহার করতে শিখবেন।

সারসংক্ষেপ

একটি পাসওয়ার্ড password_hash() ফাংশন দ্বারা তৈরি একটি হ্যাশ করা পাসওয়ার্ডের সাথে মেলে কিনা তা পরীক্ষা করতে PHP password_verify() ফাংশনটি ব্যবহার করুন ৷

Leave a Comment

Share this Doc

PHP পাসওয়ার্ড ভেরিফাই ( password_verify() )

Or copy link

CONTENTS

Subscribe

×
Cancel