Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में कुंजी के रूप में हैशेड SSN का विकल्प

मुझे लगता है कि यह लेख आप जो कर रहे हैं उसके लिए बहुत प्रासंगिक हो सकता है। यदि आप वास्तव में सुरक्षा कारणों और कानूनी दायित्व के लिए एसएसएन को "गुमनाम" करना चाहते हैं, तो बस उन्हें हैश करना पर्याप्त नहीं है।

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

यह देखने के लिए कि यह क्यों सबसे सरल उदाहरण लेता है कि एक एसएसएन केवल दो मानों, 0 और 1 पर ले सकता है। हैश फ़ंक्शन की गुणवत्ता और ताकत के बावजूद, अंत में केवल दो संभावित परिणाम होंगे और यह देखना आसान है कौन सा है।

यह पुराना खेल है कि आपको हैश क्यों नहीं करना चाहिए उदा। पहले उन पर कुछ प्रीप्रोसेसिंग किए बिना सीधे पासवर्ड। अंतर्निहित डेटा में पर्याप्त एन्ट्रॉपी नहीं है और इसलिए यह एक पूर्व-गणना तालिका में लुकअप के लिए एक आसान लक्ष्य होगा।

जिस क्षण आपके एसएसएन निजी और गोपनीय हो जाते हैं (वे हर देश में नहीं होते हैं, इसलिए टिप्पणियों में मेरे बेवकूफ प्रश्न को क्षमा करें :), वही सर्वोत्तम प्रथाएं जो पासवर्ड भंडारण के लिए भी उपयोग की जाती हैं, आपके विशेष मामले पर भी लागू होनी चाहिए, यानी धीमी गति से अनुकूली हैशिंग एल्गोरिथम जो प्रारंभिक एन्ट्रॉपी की कमी की भरपाई करता है जैसे कि bcrypt, scrypt और PBKDF2 (जिसे पहले से ही मार्कस एडम्स द्वारा अनुशंसित किया गया था)।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में केस प्रदर्शन?

  2. mysql_fetch_array ()/mysql_fetch_assoc ()/mysql_fetch_row ()/mysql_num_rows आदि... पैरामीटर 1 को संसाधन होने की अपेक्षा करता है

  3. MySQL में भूमिकाओं के साथ विशेषाधिकार कैसे प्रबंधित करें

  4. Mysqldump . में परिभाषित करने वालों को छोड़ें या अनदेखा करें

  5. लिनक्स टर्मिनल में सेफमोड के माध्यम से पासवर्ड सेट करने के बाद भी, MySql रूट उपयोगकर्ता तक पहुँचने में असमर्थ