php - SALT क्या है और मैं इसका उपयोग कैसे करूं?




(4)

मैं चारों ओर खोज रहा हूं और मैं अभी भी अनिश्चित हूं कि "नमक" क्या है और इसे कैसे उपयोग / लागू किया जाए Noobish प्रश्न के लिए क्षमा करें, मैं स्वयं सीख रहा हूँ php।


अच्छी तरह से टिप्पणी में, धन्यवाद ceejayoz

en.wikipedia.org/wiki/Salt_(cryptography)

एक नमक एक ऐसी चीज है जिसे आप एक स्ट्रिंग में जोड़ते हैं इससे पहले कि आप इसे हैश करें, यह पासवर्ड और सुरक्षा की एक और परत जोड़ता है।


आइए, हैशिंग के लिए कई एल्गोरिदम के संयोजन से चीजों को थोड़ा मसाले दें, एक डबल हैशिंग एल्गोरिथ्म बना:

$password = "myPassword";
$salt = sha1(md5($password)).'k32duem01vZsQ2lB8g0s'; 
$password = md5($password.$salt);

जैसा कि आप देख सकते हैं, हमने पहली बार डबल हैशिंग एल्गोरिथ्म (md5 और sha1) का उपयोग करके पासवर्ड को हैश किया और एक कुंजी निर्मित नमक मूल्य के साथ समेट लिया। उसके बाद, हमने जनरेट किए गए नमक के मूल्य के साथ वास्तविक पासवर्ड को जोड़ा और इसे md5 के साथ फिर से हैश किया। लाभ यह है कि इस तरह से कुल मूल्य यादृच्छिक है और यह बदल जाता है, जिससे इसे तोड़ना लगभग असंभव है। मेरा मतलब है, अगर आप एक लाख साल तक इंतजार कर सकते हैं और आपके हाथों में एक सुपर कंप्यूटर है, तो इसे तोड़ने की कोशिश करें।


किसी कारण के लिए। साल्ट आमतौर पर लोगों के लिए क्रिप्टोग्राफी से पकड़ना आसान होता है। एक बार जब यह क्लिक करता है, तो अवधारणा अत्यंत सरल है। इस लेख पर एक नज़र डालें। मुझे लगता है कि यह अवधारणा को सबसे बेहतर तरीके से समझाता है।

http://cryptodox.com/Salt_%28cryptography%29


जब मैंने पहली बार यह सवाल पूछा था, तो कई साल पहले, मुझे जवाब में पूछा गया था, "नमक भोजन के लिए क्या करता है?" इसका उत्तर यह है कि यह भोजन में विविधता जोड़ता है। क्रिप्टोग्राफ़िक नमक के पीछे का विचार यह है कि यह कुछ ऐसा है जिसे आप एक स्ट्रिंग के अंत या शुरुआत में जोड़ते हैं ताकि दो पासवर्ड जो समान हों, वे एक ही क्रिप्टोग्राफ़िक मान के साथ हैश न करें।

इस पर विचार करें - अगर मेरे पास एक पासवर्ड था जो वास्तव में सामान्य था, जैसे 'hello123', और फिर यह बिल्कुल उसी क्रिप्टोग्राफ़िक हैश के समान है, जो अन्य सभी 'hello123' पासवर्डों के रूप में है, तो क्या मैं सिर्फ देखने के लिए हैशेड पासवर्ड की सूची में नहीं देख सकता था और किसके पास एक ही क्रिप्टोग्राफ़िक हैश था, और उनके खाते पर मेरे पासवर्ड का उपयोग करें?







salt