Hash ဆိုတာဘာလဲ နွင့္ဗဟုသုတမ်ား

 
ပထမဦးဆံုး Hash ဆိုတာ ဘာလဲေျပာရေအာင္…။ ကၽြန္ေတာ္တို႔ Forum တစ္ခုထဲကို ဝင္လိုက္တဲ့အခါ Password ရိုက္သြင္းလိုက္ရင္ အဲ့ဒီ့ Password ဟာ Web Server ကသတ္မွတ္ထားတဲ့ Table တစ္ခုထဲကို ဝင္သြားၿပီး အဲ့ဒီ့ Password ဟာ Table ထဲကAlogrithum အလိုက္ အသြင္ေျပာင္း လဲသြားပါတယ္
ဒီလိုေပါ့ f5d1278e8109edd94e1e4197e04873b9 ဗ်ာ သာမန္ ကၽြန္ေတာ္တို႔ရိုက္လုိက္တဲ့ ရိုးရိုး Password ကို Plain Text လို႔ ေခၚျပီး Hash Table က ထြက္လာတဲ့ ဟာကိုေတာ့ Hash လို႔ေခၚပါတယ္ ဥပမာ Plain Text ဟာ tester ျဖစ္ရင္ Hash ကေတာ့ လူဖတ္မရတဲ့ f5d1278e8109edd94e1e4197e04873b9 ေပါ့ Hash ကို ဘယ္ေသာအခါမွာ Plain Text အျဖစ္ေျပာင္းလဲလို႔မရေတာ့ပါဘူး Hash ကို Decrypt လုပ္ႏုိင္တယ္ဆိုတာ တစ္ကယ္ေတာ့လံုး၀ မဟုတ္ပါဘူးPlain Text အျဖစ္ေျပာင္းတာဟာလည္း Decrypt လုပ္တာမဟုတ္ဘဲ Brute Force လုပ္တာပါ ေနာက္မွ အဲ့ဒီ့ အပိုင္းကို ေသခ်ာရွင္းျပပါ့မယ္.။ ဒါဆုိ ဘယ္လို Access Gratiented ျဖစ္သလဲဆိုေတာ့ ကၽြန္ေတာ္တို႔ Plain Text အျဖစ္ရိုက္သြင္း လိုက္ တဲ့ Pass ဟာ Hash Table ကုိ ျဖတ္ျပီး Hash ျဖစ္သြားပါတယ္ အဲ့ဒီ့ Hash နဲ႔ နဂို Password ကုိသတ္မွတ္တုန္းက Data Base ထဲမွာ သိမ္းထားတဲ့ Hash တိုက္စစ္လို႔တူတဲ့ အခါမွာ Access Gratiented ျဖစ္ျပီး မတူညီတဲ့အခါမွာေတာ့ Access Denied ေပါ့ဗ်ာ (တကယ္လို႔ ခင္ဗ်ားသာ Web Server ထဲက Password ေတြကို Hijack လုပ္ယူႏိုင္တယ္ဆိုရင္ Plain Text နဲ႔ ထြက္ေပၚလာဖို႔ ခဲယဥ္းပါတယ္ Web Server အမ်ားစုက Hash Table မ်ားနဲ႔ Crypt ထားတဲ့အတြက္ Hash ေတြပဲ ထြက္က်လာမွာျဖစ္ပါတယ္ ဒီလို Hash ေတြကိုျဖည္ဖို႔ Hash Type ေတြ ကို သိိဖို႔လိုပါလိမ့္မယ္ ) ကဲ ဒါဆို Hash ဆိုတာ ဘာလဲ သိေလာက္ပါျပီ Type of Hash ဆိုတာေလးစရေအာင္ ပထမဆံုး အသံုးအမ်ားဆံုး Hash ျဖစ္တဲ့ MD5 Hash အေၾကာင္းစပါ့မယ္ MD5 Hash MD5 Hash မွာ အလံုးေပါင္း သံုးဆယ့္ႏွစ္လံုးပါ၀င္ပါတယ္ ( 128 Bit Encryption ေပါ့ဗ်ာ ) a-z နဲ႔ 0-9 ပါ၀င္ပါတယ္ ဥပမာ – f5d1278e8109edd94e1e4197e04873b9 တကယ္လို႔ အထက္က အခ်က္ တစ္ခုခုနဲ႔မတူရင္ MD 5 Hash မဟုတ္ပါဘူး
SHA1 SHA1 Hash ဟာလည္း အသံုးမ်ားတဲ့ Hash Type ေတြထဲမွာပါ၀င္ၿပီး ပိုမို လံုျခံဳမႈရွိပါတယ္ SHA1 Hash မွာ အလံုးေပါင္းေလးဆယ္ပါ၀င္ပါတယ္ ( 160 Bit ေပါ့ ) အရင္အတုိင္းပဲ a-z , 0-9 ပါ၀င္ပါတယ္ ဥပမာ – ab4d8d2a5f480a137067da17100271cd176607a1 MySQL < 4.1 ဒီ Hash Type ကေတာ့ MySQL Version 4.1 ေအာက္က Server ေတြမွာ အသံုးမ်ားျပီးေတာ့ ဒီ Type ကို ျမင္တာနဲ႔ Defacer ေပါက္စေတြဟာ ပ်ာယာ ခပ္တတ္ၾကပါတယ္ သူ ႔မွာ Character 16 လံုးပဲရွိပါတယ္ ( 64 bits ရွိပါတယ္ ) ထံုးစံအတုိင္း a – z , 0 – 9 ရွိပါတယ္ ဥပမာ – 606727496645bcba MySQL5 အရင္တုန္းက ကၽြန္ေတာ့္ကို ဒုကၡ အေပးဆံုး Type တစ္ခုပါ အဲ့ဒီ့ တုန္းက Hash Type ေတြကိုလည္းေသခ်ာမသိ Skill ကလည္းခ်ာေသး ( ခုလည္းခ်ာတာပါပဲ ) ေတာ့ ဟိုလူကယ္ပါ ဒီလူကူပါေပါ့ဗ်ာ ဟီး ပိုဆိုးတယ္ဗ် Character ၄ဿ လံုးရွိတယ္ အားလံုးက Capital Latter ေတြခ်ည္း ျပီးေတာ့ ခရပြင့္ Star ( * ) နဲ႔ စသဗ်ာ ဥမာ – *C8EB599B8E8EE7BE9F1A5691B7BC9ECCB8DE1C75 MD 5 ( WordPress ) ကၽြန္ေတာ္ အေၾကာက္ဆံုး Hash ပါ ဘယ္ေလာက္ထိလဲဆို SQL Injection လုပ္လို႔ Pass ကို ဒီ Hash ထြက္ရင္ လွည့္ကိုမၾကည့္ေတာ့ဘူး အဲ့ဒီ့ ဆိုဒ္ကို လက္ေလွ်ာ့ပစ္တယ္ အဲ့ဒီ့အထိဆိုးပါတယ္ ဟီး သူ ႔မွာ $P$ နဲ႔စပါတယ္ 0-9 A-Z a-z အစံုကိုပါပါတယ္ သံုးဆယ့္ေလးလံုးရွိပါတယ္ ၾကည့္လိုက္ပါ $P$9QGUsR07ob2qNMbmSCRh3Moi6ehJZR1 MD 5 (phpBB3 ) phpBB3 နဲ႔ေဆာက္ထားတဲ့ Forum ေတြမွာအသံုးျပဳပါတယ္
$H$ နဲ႔စပါတယ္ MD 5 WordPress လိုပါပဲ အစံုပါပါတယ္ Character သံုးဆယ့္ေလးလံုးရွိပါတယ္ ဥပမာ – $H$9xAbu5SruQM5WvBldAnS46kQMEw2EQ0 ကဲ ဒါဆို Hash Type အစံုကို သိေလာက္ပါျပီ ။
ref:Naung Yo
အဆင္ေျပရင္ေအာက္ပါေၾကာ္ျငာကိုတစ္ခ်က္ကလစ္ခဲ့ပါ
++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++ အဆင္ေျပပါေစ ေက်းဇူးတင္ပါတယ္