JSON သို့မဟုတ် XML အချက်အလက်များကိုလုပ်ဆောင်သောအခါဒေတာလုံခြုံရေးသည်အလွန်အရေးကြီးသည်။ အထူးသဖြင့်ဒေတာထုတ်လွှင့်ခြင်းသို့မဟုတ်သိုလှောင်ခြင်းများတွင်အချက်အလက်များကိုခိုးယူခြင်းသို့မဟုတ်အတိုချုပ်ထားခြင်းမှကာကွယ်ရန်အထူးအရေးကြီးသည်။ PHP သည် crypt () function ကို hash password များ၌အသုံးပြုသော encryption နှင့် hash functions အမျိုးမျိုးကိုထောက်ပံ့ပေးသည်။ ထို့ကြောင့် JSON သို့မဟုတ် XML ကဲ့သို့သောစနစ်တကျအချက်အလက်များကို encrypt လုပ်ရန်သင့်လျော်သော Crypt () function သည် function ဖြစ်သည်။ ဤဆောင်းပါးသည်ဖြစ်နိုင်ခြေနှင့်ဘေးကင်းလုံခြုံမှု၏ရှုထောင့်များ၏ရှုထောင့်များမှအသေးစိတ်သုံးသပ်ချက်ပြုလုပ်မည်ဖြစ်သည်။
Crypt () သည် PHP တွင်အဓိကအားဖြင့် PHP တွင်အဓိကအားဖြင့် encryption function တစ်ခုဖြစ်သည်။ ၎င်း၏အဓိကရည်ရွယ်ချက်မှာဆားတန်ဖိုးများမှတစ်ဆင့် hash strings များနှင့် Hash algorithms များကိုသိုလှောင်ထားသည့်အယ်လ်ဂါလ်,
function ကိုလက်မှတ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
string crypt(string $str, string $salt);
crypt () သည်အချိုးကျစာဝှက်ခြင်းလုပ်ငန်းလည်ပတ်မှုမဟုတ်ပါ။ ၎င်းသည်စကားဝှက်များကိုသိုလှောင်ရန်အလွန်အရေးကြီးသည်, သို့သော် plaintext ပြန်လည်တည်ဆောက်ရန်လိုအပ်သည့်အခြေအနေများအတွက်မဟုတ်ပါ။
JSON နှင့် XML တို့သည်စနစ်တကျစာသားအချက်အလက်များဖြစ်ပြီးများသောအားဖြင့် string form တွင်ရှိသည်။ သီအိုရီအရမည်သည့် string ကိုမဆို crypt () function ကို input အဖြစ်အသုံးပြုနိုင်သည်။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
<?php
$data = json_encode(['user' => 'alice', 'role' => 'admin']);
$salt = '$6$rounds=5000$m66.net$'; // အသုံးပြု SHA-512 အဆိုပါ algorithm ၏ဆား,ဒိုမိန်းအမည်ကိုအစားထိုးပါ m66.net
$hashedData = crypt($data, $salt);
echo $hashedData;
?>
နည်းပညာဆိုင်ရာရှုထောင့်မှကြည့်လျှင် Crypt () သည် JSON သို့မဟုတ် XML ကြိုးများနှင့် output hash တန်ဖိုးများကိုထုတ်လုပ်နိုင်သည်။ သို့သော်ဤသည်မှာတစ်လမ်းတည်းသာ hash, encryption မဟုတ်။ မူရင်းဒေတာကို hash တန်ဖိုးကိုမရရှိနိုင်ပါ။
နောက်ပြန်လှည့်
crypt () မှထုတ်လုပ်သော hash သည်နောက်ကြောင်းပြန်လှည့ ်. မရသောကြောင့်မူရင်း JSON သို့မဟုတ် XML ဒေတာများကိုပြန်စာဝှက်မထားနိုင်ပါ။ ဆိုလိုသည်မှာစာဝှက်ခြင်းမဟုတ်ဘဲ hash ။ အချက်အလက်များကိုမဖတ်ရှုခြင်းမှကာကွယ်ရန်လိုအပ်ပါက၎င်းသည်လိုအပ်ချက်များနှင့်မကိုက်ညီပါ။
hash collision အန္တရာယ် <br> ခိုင်ခံ့သော algorithms တိုက်မှုအန္တရာယ်များ (ထိုကဲ့သို့သော Sha-512 ကဲ့သို့သော) သည်အလွန်နိမ့်သော်လည်း Hash အရှည်သည်ပုံသေတပ်ဆင်ထားပြီးဖွဲ့စည်းတည်ဆောက်ပုံဆိုင်ရာအချက်အလက်များအတွက်တိုက်ရိုက်မသုံးနိုင်ပါ။
ဒေတာစာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ခြင်းအခြေအနေများအတွက်မသင့်တော်ပါ ဒေတာပြန်လည်နာလန်ထူရန်လိုအပ်သည့်အခြေအနေများအတွက် Crypt () သည်မသက်ဆိုင်ပါ။ ဥပမာအားဖြင့်, အကယ်. သင်သည် Encrypted JSON ဆင်ကိုထုတ်လွှင့်လျှင်၎င်းကိုမဖတ်မီ၎င်းကိုစာဝှက်ဖြည်ရန်လိုသည်, Crypt () က မလုပ်နိုင်ပါ။
စကားဝှက်သိုလှောင်မှုအတွက်ကောင်းသောအလေ့အကျင့်
Crypt () သည်အသုံးပြုသူစကားဝှက်များကဲ့သို့သောကြိုးတစ်ချောင်းတည်းကိုသိုလှောင်ရန်သင့်တော်ပြီးရှုပ်ထွေးသောအချက်အလက်များ၏ကြီးမားသောအပိုင်းအစများကိုစာဝှက်ရန်မသင့်တော်ပါ။
အကယ်. လိုအပ်ချက်မှာ JSON သို့မဟုတ် XML အချက်အလက်များကို စာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ရန် ဖြစ်သည်ဆိုပါက, PHP တွင်၎င်းကိုအကောင်အထည်ဖော်ရန် Openssl_encrypt () နှင့် OpenSSL_Decrypt ကို သုံးနိုင်သည်။
နမူနာကုဒ်:
<?php
$data = json_encode(['user' => 'alice', 'role' => 'admin']);
$key = 'your-secret-key-1234'; // စာဝှက်စနစ်သော့
$iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('aes-256-cbc'));
$encrypted = openssl_encrypt($data, 'aes-256-cbc', $key, 0, $iv);
$encryptedData = base64_encode($iv . $encrypted);
echo $encryptedData;
?>
စာဝှက်ပြီးနောက်မူရင်း JSON သို့မဟုတ် XML အချက်အလက်များကိုသက်ဆိုင်ရာ Openssl_Decrypt မှတဆင့်ပြန်လည်တည်ဆောက်နိုင်သည်။
Crypt () function သည် password ကိုဆေးကြော ရန်အတွက်သင့်လျော်သည်။ JSON သို့မဟုတ် XML အချက်အလက်များကိုစာဝှက်ရန်မသင့်တော်ပါ။
Crypt () သည်တစ်လမ်းတည်းရှိသော hash ဖြစ်သည့်အတွက်၎င်းကိုစာဝှက်ဖြည်။ မရပါ။
JSON သို့မဟုတ် XML အချက်အလက်များ၏လုံခြုံရေးကိုကာကွယ်ရန် OpenSSL_encrypt မှအကောင်အထည်ဖော်သည့် AES ကဲ့သို့သောအချိုးကျစာဝှက်စနစ် algorithms ကိုအသုံးပြုရန်အကြံပြုသည်။
မည်သည့်စာဝှက်စရာမြင်ကွင်းတွင်မဆိုဆားတန်ဖိုးများသို့မဟုတ်သော့များကိုစီမံခန့်ခွဲခြင်းသည်အလွန်အရေးကြီးသည်။ ဥပမာတွင် M66.net ကို သရုပ်ပြဒိုမိန်းအမည်အဖြစ်သာအသုံးပြုသည်။ အမှန်တကယ်အသုံးပြုမှုတွင်လုံခြုံသောကျပန်းဆားသို့မဟုတ်သော့များကိုလိုအပ်ချက်များနှင့်အညီထုတ်လုပ်သင့်သည်။
အနှစ်ချုပ်အနေဖြင့် Crypt () သည် စနစ်တကျအချက်အလက်များကိုစာဝှက်ရန်ဖြစ်နိုင်ခြေရှိသည်။ ၎င်း၏လုံခြုံရေးနှင့်လုပ်ဆောင်နိုင်စွမ်းသည်အစစ်အမှန် applications များ၏လိုအပ်ချက်များကိုဖြည့်ဆည်းရန်မလုံလောက်ပါ။ ဒေတာလုံခြုံရေးကာကွယ်မှုကိုဖြည့်စွက်ရန်သင့်တော်သောစာဝှက်စနစ်ကိုရွေးချယ်ရန်အကြံပြုသည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
JSON