လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Crypt () 'S Des စာနာထောက်မှုနည်းလမ်းနည်းလမ်းကိုဘယ်လိုသုံးရမလဲ

Crypt () 'S Des စာနာထောက်မှုနည်းလမ်းနည်းလမ်းကိုဘယ်လိုသုံးရမလဲ

M66 2025-06-03

PHP တွင် Crypt () function သည်ကြိုးကြိုးများကိုစာဝှက်ရန်ရိုးရှင်းသောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည် encryption algorithms အမျိုးမျိုးကိုထောက်ပံ့သည်။ ၎င်းသည် Classic Des (Data encryption standard encryption method) ဖြစ်သည်။ Des Des ကိုမလုံခြုံမှုကိုစဉ်းစားထားသော်လည်းခေတ်မီအက်ပလီကေးရှင်းများသည်ပိုမိုကောင်းမွန်သော encryption algorithms ကို အသုံးပြု. အချို့သောအမွေစနစ်စနစ်များသို့မဟုတ်အထူးအခြေအနေများတွင် PHP နှင့် Des encryittion ကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုနားလည်ရန်မှာတန်ဖိုးရှိသည်။

ဤဆောင်းပါးသည် PHP's crypt () function ကို အသုံးပြု. Des Des encryption ကိုမည်သို့အကောင်အထည်ဖော်ရန်နှင့်သော့ချက် parameters တွေကိုရှင်းပြရန်မည်သို့အကောင်အထည်ဖော်မည်ကိုအသေးစိတ်မိတ်ဆက်ပေးပါလိမ့်မည်။

1 ။ Sendpt () function ကိုမိတ်ဆက်

Crypt () function သည် passed string ကို အခြေခံ. စာဝှက်ထားသည့် string ကိုပြန်လည်ရောက်ရှိစေပြီး "ဆား" တန်ဖိုးကိုအခြေခံသည်။ ၎င်း၏ function ကိုလက်မှတ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 string crypt ( string $str [, string $salt ] )
  • $ string encrypt လုပ်ထားရန် plaintext string ကိုဖြစ်ပါတယ်။

  • $ ဆားသည် စာဝှက်ခြင်းရလဒ်ကိုအကျိုးသက်ရောက်စေရန်အသုံးပြုသောဆားတန်ဖိုးဖြစ်သည်။ ကွဲပြားခြားနားသောဆားတန်ဖိုးများကွဲပြားခြားနားသော encryption ရလဒ်များကိုထုတ်လုပ်မည်။

2 ။ Des စာဝှက်ထားတဲ့ဆားတန်ဖိုးပုံစံ

Des encryption သည်စာလုံး 2 လုံးရှည်လျားသောဆားတန်ဖိုးများကိုအသုံးပြုသည်။ များသောအားဖြင့် printable ascii အက္ခရာများဖြစ်သည်။ စာဝှက်ခြင်းရလဒ်မှာစာလုံး 13 လုံးဖြစ်ပြီးပထမစာလုံးနှစ်လုံးသည်ဆားတန်ဖိုးများဖြစ်သည်။

ဥပမာအားဖြင့်:

 $salt = "HX"; // 2 အက်ခရာဆားတန်ဖိုး

ဆားငန်တန်ဖိုးမပေးပါက PHP ကိုအလိုအလျောက်ထုတ်လုပ်လိမ့်မည်ဖြစ်သော်လည်းထိန်းချုပ်နိုင်သည့်ရလဒ်များအတွက်၎င်းကိုသတ်မှတ်ရန်သင့်ကိုယ်သင်သတ်မှတ်ရန်အကြံပြုသည်။

3 ။ Crypt ကိုသုံးပြီး des စာဝှက်စနစ်၏ဥပမာ။

ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
// လွင်ပြင်စာသားလျှို့ဝှက်နံပါတ်
$password = "mypassword";

// ထုံးစံဓလေ့ 2 အက်ခရာဆားတန်ဖိုး
$salt = "HX";

// အသုံးပြု crypt() ဉီးစီး DES စာဝှက်ပယ်
$encrypted = crypt($password, $salt);

echo "မူရင်းစကားဝှက်: $password\n";
echo "ဆားတန်ဖိုး: $salt\n";
echo "စာဝှက်ပယ်结果: $encrypted\n";
?>

Run ရလဒ်ဥပမာ -

 မူရင်းစကားဝှက်: mypassword
ဆားတန်ဖိုး: HX
စာဝှက်ပယ်结果: HX9XQCdTkxuoQ

4 ။ မှတ်စုများ

  • Des encryption ကိုစာလုံး 8 လုံးနှင့်အက်ခရာ 8 လုံးကျော်လွန်သောအစိတ်အပိုင်းများကိုသာလျစ်လျူရှုထားလိမ့်မည်။

  • Crypt () မှထုတ်လုပ်သော encryption ရလဒ်တွင်ဆားတန်ဖိုးများပါ 0 င်မည်ဖြစ်ပြီးစကားဝှက်များကိုအတည်ပြုသည့်အခါဆားတန်ဖိုးများကိုအသုံးပြုရန်အဆင်ပြေသည်။

  • Des encryption ကိုမလုံခြုံမှုကိုမလုံခြုံမှုဟုယူဆပြီးစနစ်အသစ်များအတွက်စကားဝှက်အကာအကွယ်ပေးရန်မထောက်ခံပါ။ Password_Hash () နှင့် password_verify () functions များကိုအသုံးပြုရန်သို့မဟုတ် BCROTT, argon2 ကဲ့သို့သောပိုမိုအားကောင်းတဲ့ဆေးထည့်ခြင်း algorithms ကိုအသုံးပြုရန်အကြံပြုပါသည်။

  • URL မှစကားဝှက်များသို့မဟုတ် parameters များကို အသုံးပြု. crypt () ကိုအသုံးပြုရန်လိုအပ်ပါက Real Domain Name ကိုမပေါက်ကြားစေရန် URL domain name ကို M66.net ဖြင့်အစားထိုးရန်သေချာစေပါ။

5 ။ လက်တွေ့လျှောက်လွှာဥပမာ (URL နှင့်ပေါင်းစပ်)

သင် url http://example.com/login မှစကားဝှက် parameter သည်သင်ရရှိထားကြောင်းယူဆပြီးဒိုမိန်းအမည်ကို M66.net ဖြင့်အစားထိုးရန်နှင့်၎င်းကို encrypt ပြုလုပ်ရန်လိုအပ်သည်။

 <?php
// စကားဝှက် parameters တွေကိုရယူရန် Simulate(အစစ်အမှန် applications များတွင်အသုံးပြုခဲ့သည် $_GET သို့မဟုတ်အခြားနည်းလမ်းများ)
$password = "userinput";

// 2字符ဆားတန်ဖိုး
$salt = "AB";

// စာဝှက်ပယ်
$encryptedPassword = crypt($password, $salt);

// ထုတ်လုပ်ခြင်းစာဝှက်ပယ်结果
echo "Encrypted password for m66.net: " . $encryptedPassword;
?>

URL ဥပမာအစားထိုးခြင်း