பயனரை உறுதிப்படுத்தும்போதோ அல்லது அதுபோன்ற ஒன்றைச் செய்யும்போதோ நீங்கள் ஒருபோதும் எளிய உரையில் கடவுச்சொல்லை வைத்திருக்கக்கூடாது.
பல தனிநபர்கள் ஒரே கடவுச்சொல்லைப் பயன்படுத்துவதால், தாக்குபவர் மறைகுறியாக்கப்படாத கடவுச்சொற்களின் தரவுத்தளத்தைக் கண்டறிந்தால், இணைக்கப்பட்ட இணையத்தளம் அல்லது கணக்கிற்குள் நுழையவும், மற்ற கணக்குகளை அணுகவும் கூட அவற்றைப் பொருந்தும் மின்னஞ்சல்களுடன் எளிதாகப் பயன்படுத்தலாம்.
இன்று கடவுச்சொல் வழங்கப்படும் போது கடவுச்சொற்கள் பெரும்பாலும் ஹேஷ் செய்யப்படுகின்றன. உப்புடன் ஹாஷ் செய்யவும், உப்பை ஹாஷ் செய்யப்பட்ட கடவுச்சொல்லுடன் சேர்த்து வைத்துக் கொள்ளவும் அறிவுறுத்தப்படுகிறது.
சால்டிங் என்பது ஹாஷ் பிரவுன்களுக்கான செய்முறையின் படிகளில் ஒன்றாகத் தோன்றலாம், ஆனால் குறியாக்கவியலில், ஹாஷ் செயல்பாட்டின் உள்ளீட்டில் சீரற்ற தரவைச் சேர்ப்பதைக் குறிக்கிறது, உள்ளீடுகள் ஒரே மாதிரியாக இருந்தாலும் ஹாஷ் எப்போதும் தனித்துவமான முடிவை வழங்கும்.
இதன் விளைவாக, உப்பைச் சேர்ப்பதன் மூலம் உருவாக்கப்பட்ட தனித்துவமான ஹாஷ், அகராதி மற்றும் முரட்டுத்தனமான ஆஃப்லைன் முயற்சிகளை முடக்கும் போது, ஹாஷ் டேபிள் தாக்குதல்கள் உட்பட பல தாக்குதல் முறைகளிலிருந்து நம்மைப் பாதுகாக்கும்.
இங்கே, குறியீடு துணுக்குகளின் உதவியுடன், உங்கள் கடவுச்சொற்களைப் பாதுகாக்க 'bcrypt' ஐ எவ்வாறு பயன்படுத்துவது என்பதை நாங்கள் விளக்குவோம்.
எனவே, 'bcrypt' என்றால் என்ன?
Bcrypt என்பது பல மொழிகளை ஆதரிக்கும் மற்றும் சிறப்பு கடவுச்சொல் குறியாக்கத்தை வழங்கும் ஹாஷிங் லைப்ரரி ஆகும். உங்கள் கடவுச்சொல்லின் பாதுகாப்பை அதிகரிக்க, உங்கள் சரத்தை குறியாக்கம் செய்யும் போது அது தானாகவே கூடுதல் சீரற்ற எழுத்துக்களை (உப்பு) உருவாக்குகிறது.
உள்வரும் சரத்தில் எத்தனை கூடுதல் எழுத்துக்களைச் சேர்க்க விரும்புகிறீர்கள் என்பதை வரையறுக்கவும் நீங்கள் தேர்வு செய்யலாம்.
bcrypt நூலகம் பைட் குறியீட்டை மட்டுமே படிக்கிறது, மூல சரங்களை அல்ல. எனவே, என்க்ரிப்ஷனுக்காக bcrypt க்கு உள்வரும் கடவுச்சொல் சரத்தை சமர்ப்பிக்கும் முன், நீங்கள் முதலில் அதை குறியாக்கம் செய்ய வேண்டும்.
குறியாக்கம் மற்றும் குறியாக்கம் ஒரே விஷயங்கள் அல்ல. குறியாக்க நுட்பத்தால் மறைக்கப்படுவதற்கு முன்பு ஒரு சரம் இயந்திரத்தால் படிக்கக்கூடியதாக இருப்பதை இது உறுதி செய்கிறது.
பைத்தானில் கடவுச்சொல்லை குறியாக்க bcrypt ஐப் பயன்படுத்துதல்
பைதான் bcrypt கடவுச்சொல் குறியாக்கத்தை எளிதாக்குகிறது. கட்டமைப்பின் உதவியின்றி இதைச் செய்வதில் கவனம் செலுத்துவோம். ஆனால் கவலைப்பட வேண்டாம், பயனர் உள்ளீடுகளை எவ்வாறு சேமிப்பது மற்றும் தரவுத்தளத்திலிருந்து அவற்றைப் படிப்பது எப்படி என்பதை நீங்கள் புரிந்து கொண்டால், கட்டமைப்புகளில் செயல்முறை ஒரே மாதிரியாக இருக்கும்.
நிறுவல்
நீங்கள் ஒரு பைதான் மெய்நிகர் சூழலை மட்டும் அமைத்து, பின்னர் PyCharm போன்ற IDE ஐப் பயன்படுத்த வேண்டும். நூலகம் முதலில் நிறுவப்பட வேண்டும்:
கடவுச்சொல்லை குறியாக்கம் செய்கிறது
ஒரு உரையை நிறுவிய பின் குறியாக்க bcrypt ஐ எவ்வாறு பயன்படுத்துவது என்று பார்ப்போம்:
மேற்கூறிய பைதான் குறியீடு ஒரு மறைகுறியாக்கப்பட்ட பைட் சரத்தை இயக்கி வெளியிடுகிறது. ஆனால் ஒவ்வொரு முறையும் நீங்கள் ஸ்கிரிப்டை இயக்கும் போது, முடிவு வேறுபட்டது. Bcrypt இந்த முறையைப் பயன்படுத்தி ஒவ்வொரு பயனருக்கும் குறிப்பாக குறியாக்கம் செய்யப்பட்ட கடவுச்சொல் உள்ளது.
இது, தற்செயலாக, கடவுச்சொல் குறியாக்கத்திற்கானது.
Bcrypt ஐப் பயன்படுத்தி கடவுச்சொல் ஒப்பீடு மற்றும் உறுதிப்படுத்தல்
ஹாஷ் செய்யப்பட்ட கடவுச்சொல்லைச் சேமித்து, அங்கீகாரத்திற்காக பயனர் சமர்ப்பித்த கடவுச்சொல்லுடன் அது பொருந்துகிறதா என்பதைப் பார்க்க, பிறகு சரிபார்க்க விரும்பினால் என்ன நடக்கும்?
அது எளிமையானது. அங்கீகரிக்கும் கடவுச்சொல் மட்டுமே தரவுத்தளத்தின் உள்ளீட்டுடன் (அல்லது இந்த விஷயத்தில் நினைவகத்தில்) ஒப்பிடப்பட வேண்டும்.
தரவுத்தளத்தில் உள்ள கடவுச்சொல்லுடன் ஒப்பிடும் முன் அங்கீகரிக்கும் கடவுச்சொல் குறியாக்கம் செய்யப்பட வேண்டும், ஏனெனில் bcrypt ஆனது பைட் சரங்களை மட்டுமே படிக்க முடியும். அடிப்படையில், நீங்கள் தற்போது உங்கள் தரவுத்தளத்தில் உள்ள குறியிடப்பட்ட ஹாஷ் செய்யப்பட்ட கடவுச்சொல்லுடன் குறியிடப்பட்ட அங்கீகார உள்ளீட்டை ஒப்பிடுவீர்கள்.
கற்பனையான பைதான் உள்ளீடுகளைப் பயன்படுத்தி இதைச் சோதிப்போம்:
மேற்கூறிய குறியீட்டை இயக்கியவுடன், புதிய கடவுச்சொல்லை கேட்கும். இது பைத்தானால் நினைவகத்தில் சேமிக்கப்படுகிறது. அங்கீகரிக்கும் பிரிவில், நீங்கள் அதே கடவுச்சொல்லை உள்ளிடுவீர்கள், இது உங்களுக்கு தனிப்பட்டது.
கடவுச்சொல்லை ஒப்பிட்டு, முன்பு குறியாக்கம் செய்து பொருத்தப்பட்டதைச் சேமித்தால், பைதான் வெற்றிச் செய்தியை வெளியிடுகிறது.
இல்லையெனில், பிழைச் செய்தி அச்சிடப்பட்டு, வேறு வாக்கியம் சேர்க்கப்படும்.
அடிப்படை யோசனை பதிவுசெய்து, அங்கீகாரத்திற்காக ஒரு தரவுத்தளத்திற்கு கடவுச்சொல்லை வழங்குவதைப் போன்றது.
தீர்மானம்
எளிய பைதான் குறுகிய நினைவகத்தில் bcrypt எவ்வாறு செயல்படுகிறது என்பதைக் காட்ட மறைகுறியாக்கப்பட்ட கடவுச்சொற்களைப் பயன்படுத்தினாலும், அதன் உண்மையான பொருந்தக்கூடிய தன்மை பயனர் அடிப்படை பயன்பாடுகளில் உள்ளது.
ஆயினும்கூட, நிஜ உலகச் சூழ்நிலைகளில் கூட, இதை நிறைவேற்ற உங்கள் குறியீட்டை ஒழுங்கமைப்பதற்கான அத்தியாவசிய முறைகளை இந்தக் கட்டுரை விளக்குகிறது.
உதாரணமாக, நீங்கள் Flask ஐப் பயன்படுத்துகிறீர்கள் என்றால், உள்ளீடுகளுக்குப் பதிலாக தனித்தனி வலைப் படிவங்கள் மூலம் பதிவு மற்றும் அங்கீகாரப் புலங்களை வழங்கலாம்.
நிச்சயமாக, கடவுச்சொற்களை ஒப்பிடும் போது, உண்மையான உலகில் வைக்கப்பட்டுள்ள மறைகுறியாக்கப்பட்ட கடவுச்சொற்களைக் கொண்ட தரவுத்தளத்திலிருந்து நீங்கள் படிப்பீர்கள்.
ஜோனா நிட்ச்
இந்த எளிய மற்றும் எளிமையான விளக்கத்திற்கு நன்றி,
இது எனது தற்போதைய திட்டத்தில் எனக்கு மிகவும் உதவியது.
உதாரணக் குறியீடு மிகக் குறைந்த அளவே உள்ளது மற்றும் பல விளக்கங்களைப் போல அதிக சுமை இல்லாமல் இருப்பது மிகவும் நல்லது என்று நான் நினைக்கிறேன்.
சிறந்த குறித்து