PHP में पासवर्ड हैश करने के लिए bcrypt का सही उपयोग कैसे करें?
सभी को नमस्कार! मैं एक नौसिखिया PHP डेवलपर हूँ और पासवर्ड के सुरक्षित भंडारण को समझ नहीं पा रहा हूँ। अभी मैं हैशिंग के लिए md5() या sha1() फ़ंक्शन का उपयोग कर रहा हूँ, लेकिन कहीं पढ़ा कि यह गलत और असुरक्षित है। कहा जाता है कि bcrypt का उपयोग करना चाहिए।
<?php
// मेरा वर्तमान कोड (पता है कि खराब है)
$password = 'my_secret_pass';
$hash = md5($password);
// $hash को डेटाबेस में सेव करता हूँ
// लॉगिन पर जाँच
if (md5($_POST['password']) == $hash_from_db) {
echo "सफल लॉगिन!";
}
?>
मैंने bcrypt के बारे में सुना है, लेकिन समझ नहीं आता कि इसे कैसे शामिल करूँ और उपयोग करूँ। लगता है PHP में कोई built-in फ़ंक्शन है, लेकिन मुझे नहीं पता कि इसका नाम क्या है और इसके साथ सही तरीके से कैसे काम करें। साथ ही, मुझे 'salt' (नमक) निर्दिष्ट करने की बात भ्रमित करती है — यह क्या है और इसे कहाँ संग्रहीत करें? क्या प्रत्येक पासवर्ड के लिए नया salt उत्पन्न करना आवश्यक है? और उपयोगकर्ता के लॉगिन पर पासवर्ड की जाँच कैसे करूँ?
कृपया, कदम दर कदम मार्गदर्शन करें।