Facebookහි Hashing Algorithm එක පිලිබඳව සරලව මූලික දැනුමක් ලබාගනිමු
![Facebookහි Hashing Algorithm එක පිලිබඳව සරලව මූලික දැනුමක් ලබාගනිමු](/content/images/size/w1200/2021/05/facebook-hashing-algorithm.jpg)
සරලව ගතහොත් Algorithm එකක් යනු යම්කිසි ගැටලුවක්, යම්කිසි පිළිවෙලකට (Step By Step) විසඳන්න හදපු ක්රියාවලියක් ලෙස හඳුන්වන්න පුළුවන්.
උදාහරණයක් ලෙසට සෘජුකෝණාස්රයක වර්ගපලය මැනීමේදී ප්රථමයෙන් දිග සහ පළල මනිනු ලැබේ. ඉන්පනු දිග පලලෙන් ගුණ කරනු ලැබේ. අවසාන උත්තරය ලෙසට වර්ගඵලය මෙයින් ලැබේ.
මෙම අවස්ථාවේදීත් ඇල්ගොරිතමයක් (Algorithm) Use වෙන බව දැන් තේරුම්ගතහැකි ය. මන්දයත් මෙම ක්රියාවලිය Step By Step සිදුවන බැවිනි.
අපි හැමෝම Facebook අකවුන්ට් එකක් නිර්මාණය කිරීමේදී නම, email, වගේම Password එකකුත් ඇතුලත් කරනවා.
![](https://backend.androidwedakarayo.com/content/images/2021/05/image-36.png)
මෙලෙස ඇතුලත් කරන ලද Phone Number, උපන්දිනය හැම දෙයක්ම ඒ විදිහටම Facebook Database එකේ Save වනවා.
නමුත් අප ඇතුලත් කරන ලද Password හෙවත් මුරපදය Database තුල Save වන්නේ මීට හාත්පසින්ම වෙනස් ආකාරයකටයි. අප ඇතුලත් කරන ලද Password එක Encrypt වී එම Encrypted Password එක Facebook Database එකේ Save වේ.
මේකත් වැඩකරන්නේ එක්තරා ඇල්ගොරිතම් එකක් විදිහට යි මෙය Facebook Hashing Algorithm ලෙස හඳුන්වනු ලබනවා.
සරලව අප විසින් ඇතුලත් කරන මුරපදය/Password එක සරලව හදුන්වන්නේ Plain Text යන නමින්. මේ Plain Text මුරපදය Hashing Algorithm හරහා Encrypt වී මේ ආකාරයෙන් Facebook Database තුල සුරකිනුු ලැබේ.
උදාහරණයක් ලෙස ඔබ Facebook Account එකක් නිර්මාණය කරමින් සිටී යැයි සිතමු. මෙහිදි ඔබ Password ලෙස 123456 ඇතුලත් කලේනම් එය Facebook ආයතනයෙ Database තුල Save වන්නේ MD5 Hash යන ඇල්ගොරිතම් එක හරහා Encrypt වීමෙනි.
එවිට එම 123456 Facebook Database වල Save වෙන්නේ e10adc3949ba59abbe56e057f20f883e යන ආකාරයෙනි.
මේ ආකාරයෙන් Encrypt වෙන ක්රම කීපයක්ම තිබේ.
- SHA 1
- MD5
- MD6
- SHA256
- Tiger
ලෙසට කිහිපයක් හදුන්වන්න පුලුවන්.
අප අපේ ගිණුමට Log වීමේදී අපගේ email ඇතුලත් කොට Password පදය ඇතුලත් කළ විට Database තුලින් අප ඇතුලත් කළ මුරපදය Encrypt කර Encrypted මුරපදය හා සමානයි නම් අපට Log වීමට අවස්ථාව ලබා දෙනු ලබනවා.
මේ ආකාරයට Algorithms විශාල ප්රමාණයක් Facebook තුල අපට බලගත හැකිය.