ಬಳಕೆದಾರರನ್ನು ದೃಢೀಕರಿಸುವಾಗ ಅಥವಾ ಅದೇ ರೀತಿ ಮಾಡುವಾಗ ನೀವು ಎಂದಿಗೂ ಸರಳ ಪಠ್ಯದಲ್ಲಿ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಇರಿಸಬಾರದು.
ಅನೇಕ ವ್ಯಕ್ತಿಗಳು ಒಂದೇ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಬಳಸುವುದರಿಂದ, ಆಕ್ರಮಣಕಾರರು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡದ ಪಾಸ್ವರ್ಡ್ಗಳ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಕಂಡುಹಿಡಿದರೆ, ಲಿಂಕ್ ಮಾಡಲಾದ ವೆಬ್ಸೈಟ್ ಅಥವಾ ಖಾತೆಗೆ ಪ್ರವೇಶಿಸಲು ಹೊಂದಾಣಿಕೆಯ ಇಮೇಲ್ಗಳೊಂದಿಗೆ ಅವುಗಳನ್ನು ಸುಲಭವಾಗಿ ಬಳಸಬಹುದು ಮತ್ತು ಇತರ ಖಾತೆಗಳನ್ನು ಪ್ರವೇಶಿಸಲು ಪ್ರಯತ್ನಿಸಲು ಸಹ ಬಳಸಬಹುದು.
ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಪೂರೈಸಿದಾಗ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಇಂದು ಹೆಚ್ಚಾಗಿ ಹ್ಯಾಶ್ ಮಾಡಲಾಗುತ್ತದೆ. ಉಪ್ಪಿನೊಂದಿಗೆ ಹ್ಯಾಶ್ ಮಾಡಲು ಮತ್ತು ಹ್ಯಾಶ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್ನೊಂದಿಗೆ ಉಪ್ಪನ್ನು ಒಟ್ಟಿಗೆ ಇರಿಸಲು ಸಲಹೆ ನೀಡಲಾಗುತ್ತದೆ.
ಉಪ್ಪು ಹಾಕುವಿಕೆಯು ಹ್ಯಾಶ್ ಬ್ರೌನ್ಸ್ನ ಪಾಕವಿಧಾನದಲ್ಲಿ ಒಂದು ಹಂತದಂತೆ ತೋರುತ್ತದೆ, ಆದರೆ ಕ್ರಿಪ್ಟೋಗ್ರಫಿಯಲ್ಲಿ, ಇನ್ಪುಟ್ಗಳು ಒಂದೇ ಆಗಿದ್ದರೂ ಹ್ಯಾಶ್ ಯಾವಾಗಲೂ ಅನನ್ಯ ಫಲಿತಾಂಶವನ್ನು ನೀಡುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಹ್ಯಾಶ್ ಫಂಕ್ಷನ್ನ ಇನ್ಪುಟ್ಗೆ ಯಾದೃಚ್ಛಿಕ ಡೇಟಾವನ್ನು ಸೇರಿಸುವುದನ್ನು ಇದು ಉಲ್ಲೇಖಿಸುತ್ತದೆ.
ಪರಿಣಾಮವಾಗಿ, ಉಪ್ಪನ್ನು ಸೇರಿಸುವ ಮೂಲಕ ರಚಿಸಲಾದ ವಿಶಿಷ್ಟವಾದ ಹ್ಯಾಶ್, ನಿಘಂಟಿನ ಮತ್ತು ಬ್ರೂಟ್-ಫೋರ್ಸ್ ಆಫ್ಲೈನ್ ಪ್ರಯತ್ನಗಳನ್ನು ನಿಗ್ರಹಿಸುವಾಗ ಹ್ಯಾಶ್ ಟೇಬಲ್ ದಾಳಿಗಳು ಸೇರಿದಂತೆ ಹಲವಾರು ದಾಳಿ ವಿಧಾನಗಳಿಂದ ನಮ್ಮನ್ನು ರಕ್ಷಿಸುತ್ತದೆ.
ಇಲ್ಲಿ, ಕೋಡ್ ತುಣುಕುಗಳ ಸಹಾಯದಿಂದ, ನಿಮ್ಮ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಸುರಕ್ಷಿತವಾಗಿರಿಸಲು 'bcrypt' ಅನ್ನು ಹೇಗೆ ಬಳಸುವುದು ಎಂಬುದನ್ನು ನಾವು ಪ್ರದರ್ಶಿಸುತ್ತೇವೆ.
ಹಾಗಾದರೆ, 'bcrypt' ಎಂದರೇನು?
Bcrypt ಹಲವಾರು ಭಾಷೆಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಮತ್ತು ವಿಶೇಷ ಪಾಸ್ವರ್ಡ್ ಎನ್ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ಒದಗಿಸುವ ಹ್ಯಾಶಿಂಗ್ ಲೈಬ್ರರಿಯಾಗಿದೆ. ನಿಮ್ಮ ಪಾಸ್ವರ್ಡ್ನ ಸುರಕ್ಷತೆಯನ್ನು ಹೆಚ್ಚಿಸಲು, ನಿಮ್ಮ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡುವಾಗ ಅದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಹೆಚ್ಚುವರಿ ಯಾದೃಚ್ಛಿಕ ಅಕ್ಷರಗಳನ್ನು (ಉಪ್ಪು) ಉತ್ಪಾದಿಸುತ್ತದೆ.
ಒಳಬರುವ ಸ್ಟ್ರಿಂಗ್ಗೆ ನೀವು ಎಷ್ಟು ಹೆಚ್ಚುವರಿ ಅಕ್ಷರಗಳನ್ನು ಸೇರಿಸಲು ಬಯಸುತ್ತೀರಿ ಎಂಬುದನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ಸಹ ನೀವು ಆಯ್ಕೆ ಮಾಡಬಹುದು.
bcrypt ಲೈಬ್ರರಿಯು ಬೈಟ್ ಕೋಡ್ ಅನ್ನು ಮಾತ್ರ ಓದುತ್ತದೆ, ಕಚ್ಚಾ ತಂತಿಗಳನ್ನು ಅಲ್ಲ. ಆದ್ದರಿಂದ, ಎನ್ಕ್ರಿಪ್ಶನ್ಗಾಗಿ bcrypt ಗೆ ಒಳಬರುವ ಪಾಸ್ವರ್ಡ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಸಲ್ಲಿಸುವ ಮೊದಲು, ನೀವು ಅದನ್ನು ಮೊದಲು ಎನ್ಕೋಡ್ ಮಾಡಬೇಕು.
ಎನ್ಕ್ರಿಪ್ಟಿಂಗ್ ಮತ್ತು ಎನ್ಕೋಡಿಂಗ್ ಒಂದೇ ವಿಷಯವಲ್ಲ. ಎನ್ಕ್ರಿಪ್ಶನ್ ತಂತ್ರದಿಂದ ಮುಚ್ಚುವ ಮೊದಲು ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಯಂತ್ರ-ಓದಬಲ್ಲದು ಎಂದು ಇದು ಖಚಿತಪಡಿಸುತ್ತದೆ.
ಪೈಥಾನ್ನಲ್ಲಿ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಲು bcrypt ಅನ್ನು ಬಳಸುವುದು
ಪೈಥಾನ್ bcrypt ಪಾಸ್ವರ್ಡ್ ಎನ್ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ. ಚೌಕಟ್ಟಿನ ಸಹಾಯವಿಲ್ಲದೆ ಇದನ್ನು ಮಾಡಲು ನಾವು ಗಮನಹರಿಸುತ್ತೇವೆ. ಆದರೆ ಚಿಂತಿಸಬೇಡಿ, ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ಗಳನ್ನು ಹೇಗೆ ಉಳಿಸುವುದು ಮತ್ತು ಅವುಗಳನ್ನು ಡೇಟಾಬೇಸ್ನಿಂದ ಓದುವುದು ಹೇಗೆ ಎಂದು ನೀವು ಅರ್ಥಮಾಡಿಕೊಂಡರೆ, ಕಾರ್ಯವಿಧಾನವು ಚೌಕಟ್ಟುಗಳಲ್ಲಿ ಒಂದೇ ಆಗಿರುತ್ತದೆ.
ಅನುಸ್ಥಾಪನ
ನೀವು ಪೈಥಾನ್ ವರ್ಚುವಲ್ ಪರಿಸರವನ್ನು ಮಾತ್ರ ಹೊಂದಿಸಬೇಕು ಮತ್ತು ನಂತರ PyCharm ನಂತಹ IDE ಅನ್ನು ಬಳಸಿಕೊಳ್ಳಬೇಕು. ನಂತರ ಗ್ರಂಥಾಲಯವನ್ನು ಮೊದಲು ಸ್ಥಾಪಿಸಬೇಕು:
ಪಾಸ್ವರ್ಡ್ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ
ಪಠ್ಯವನ್ನು ಸ್ಥಾಪಿಸಿದ ನಂತರ ಅದನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಲು bcrypt ಅನ್ನು ಹೇಗೆ ಬಳಸುವುದು ಎಂದು ನೋಡೋಣ:
ಮೇಲೆ ತಿಳಿಸಲಾದ ಪೈಥಾನ್ ಕೋಡ್ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿದ ಬೈಟ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ ಮತ್ತು ಔಟ್ಪುಟ್ ಮಾಡುತ್ತದೆ. ಆದರೆ ಪ್ರತಿ ಬಾರಿ ನೀವು ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ರನ್ ಮಾಡಿದಾಗ, ಫಲಿತಾಂಶವು ವಿಭಿನ್ನವಾಗಿರುತ್ತದೆ. ಪ್ರತಿ ಬಳಕೆದಾರರು ನಿರ್ದಿಷ್ಟವಾಗಿ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಲಾದ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಹೊಂದಿದ್ದಾರೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು Bcrypt ಈ ವಿಧಾನವನ್ನು ಬಳಸುತ್ತದೆ.
ಅದು, ಪ್ರಾಸಂಗಿಕವಾಗಿ, ಪಾಸ್ವರ್ಡ್ ಎನ್ಕ್ರಿಪ್ಶನ್ ಆಗಿದೆ.
Bcrypt ಬಳಸಿಕೊಂಡು ಪಾಸ್ವರ್ಡ್ ಹೋಲಿಕೆ ಮತ್ತು ದೃಢೀಕರಣ
ನೀವು ಹ್ಯಾಶ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಉಳಿಸಲು ಬಯಸಿದರೆ ಮತ್ತು ಅದು ದೃಢೀಕರಣಕ್ಕಾಗಿ ಬಳಕೆದಾರರು ಸಲ್ಲಿಸಿದ ಪಾಸ್ವರ್ಡ್ಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆಯೇ ಎಂದು ನೋಡಲು ನಂತರ ಪರಿಶೀಲಿಸಲು ಬಯಸಿದರೆ ಏನಾಗುತ್ತದೆ?
ಅದು ಸರಳವಾಗಿದೆ. ದೃಢೀಕರಿಸುವ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಮಾತ್ರ ಡೇಟಾಬೇಸ್ನ ಪ್ರವೇಶಕ್ಕೆ ಹೋಲಿಸಬೇಕು (ಅಥವಾ ಈ ಸಂದರ್ಭದಲ್ಲಿ ಮೆಮೊರಿಯಲ್ಲಿ).
ಡೇಟಾಬೇಸ್ನಲ್ಲಿರುವ ಒಂದಕ್ಕೆ ಹೋಲಿಸುವ ಮೊದಲು ಪ್ರಮಾಣೀಕರಿಸುವ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಎನ್ಕೋಡ್ ಮಾಡಬೇಕು ಏಕೆಂದರೆ bcrypt ಬೈಟ್ ಸ್ಟ್ರಿಂಗ್ಗಳನ್ನು ಮಾತ್ರ ಓದಬಲ್ಲದು. ಮೂಲಭೂತವಾಗಿ, ನೀವು ಪ್ರಸ್ತುತ ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ನಲ್ಲಿರುವ ಎನ್ಕೋಡ್ ಮಾಡಿದ ಹ್ಯಾಶ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್ಗೆ ಎನ್ಕೋಡ್ ಮಾಡಲಾದ ದೃಢೀಕರಣ ಇನ್ಪುಟ್ ಅನ್ನು ಹೋಲಿಸುತ್ತೀರಿ.
ಕಾಲ್ಪನಿಕ ಪೈಥಾನ್ ಇನ್ಪುಟ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಇದನ್ನು ಪರೀಕ್ಷಿಸೋಣ:
ಮೇಲೆ ತಿಳಿಸಲಾದ ಕೋಡ್ ಅನ್ನು ಚಲಾಯಿಸಿದ ನಂತರ, ಹೊಸ ಪಾಸ್ವರ್ಡ್ಗಾಗಿ ನಿಮ್ಮನ್ನು ಕೇಳಲಾಗುತ್ತದೆ. ಇದನ್ನು ಪೈಥಾನ್ನಿಂದ ಮೆಮೊರಿಯಲ್ಲಿ ಉಳಿಸಲಾಗಿದೆ. ದೃಢೀಕರಣ ವಿಭಾಗದಲ್ಲಿ, ನೀವು ಅದೇ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ನಮೂದಿಸುತ್ತೀರಿ, ಅದು ನಿಮಗೆ ಖಾಸಗಿಯಾಗಿದೆ.
ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ಹೋಲಿಕೆ ಮಾಡಿದರೆ ಮತ್ತು ಹಿಂದೆ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಲಾದ ಮತ್ತು ಪಂದ್ಯವನ್ನು ಉಳಿಸಿದರೆ, ಪೈಥಾನ್ ಯಶಸ್ವಿ ಸಂದೇಶವನ್ನು ಹೊರಸೂಸುತ್ತದೆ.
ಇಲ್ಲದಿದ್ದರೆ, ದೋಷ ಸಂದೇಶವನ್ನು ಮುದ್ರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ನಂತರ ಬೇರೆ ವಾಕ್ಯವನ್ನು ಸೇರಿಸಲಾಗುತ್ತದೆ.
ದೃಢೀಕರಣಕ್ಕಾಗಿ ಡೇಟಾಬೇಸ್ಗೆ ಪಾಸ್ವರ್ಡ್ ಅನ್ನು ನೋಂದಾಯಿಸುವ ಮತ್ತು ಪೂರೈಸುವ ಮೂಲಭೂತ ಕಲ್ಪನೆಯು ಹೋಲುತ್ತದೆ.
ತೀರ್ಮಾನ
ಸರಳವಾದ ಪೈಥಾನ್ ಶಾರ್ಟ್ ಮೆಮೊರಿಯಲ್ಲಿ bcrypt ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ತೋರಿಸಲು ನಾವು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಬಳಸಿದ್ದರೂ ಸಹ, ಅದರ ನಿಜವಾದ ಅನ್ವಯವು ಬಳಕೆದಾರ-ಮೂಲ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿದೆ.
ಅದೇನೇ ಇದ್ದರೂ, ನೈಜ-ಪ್ರಪಂಚದ ಸಂದರ್ಭಗಳಲ್ಲಿಯೂ ಸಹ ಇದನ್ನು ಸಾಧಿಸಲು ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಸಂಘಟಿಸಲು ಅಗತ್ಯವಾದ ವಿಧಾನಗಳನ್ನು ಈ ಲೇಖನವು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.
ಉದಾಹರಣೆಗೆ, ನೀವು ಫ್ಲಾಸ್ಕ್ ಅನ್ನು ಬಳಸುತ್ತಿದ್ದರೆ, ಇನ್ಪುಟ್ಗಳ ಬದಲಿಗೆ ಪ್ರತ್ಯೇಕ ವೆಬ್ ಫಾರ್ಮ್ಗಳ ಮೂಲಕ ನೀವು ನೋಂದಣಿ ಮತ್ತು ದೃಢೀಕರಣ ಕ್ಷೇತ್ರಗಳನ್ನು ಒದಗಿಸಬಹುದು.
ಸಹಜವಾಗಿ, ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಹೋಲಿಸುವಾಗ, ನೈಜ ಜಗತ್ತಿನಲ್ಲಿ ಇರಿಸಲಾಗಿರುವ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿದ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಡೇಟಾಬೇಸ್ನಿಂದ ನೀವು ಓದುತ್ತೀರಿ.
ಜೋನಾ ನಿಟ್ಚ್
ಈ ಸರಳ ಮತ್ತು ಸರಳ ವಿವರಣೆಗಾಗಿ ಧನ್ಯವಾದಗಳು,
ಇದು ನನ್ನ ಪ್ರಸ್ತುತ ಯೋಜನೆಯಲ್ಲಿ ನನಗೆ ಬಹಳಷ್ಟು ಸಹಾಯ ಮಾಡಿದೆ.
ಉದಾಹರಣೆ ಕೋಡ್ ಕನಿಷ್ಠಕ್ಕೆ ಸೀಮಿತವಾಗಿದೆ ಮತ್ತು ಇತರ ಹಲವು ವಿವರಣೆಗಳಂತೆ ಓವರ್ಲೋಡ್ ಆಗದಿರುವುದು ತುಂಬಾ ಒಳ್ಳೆಯದು ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ.
ಇಂತಿ ನಿಮ್ಮ