လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Database Connection တွင်ဒေတာစာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ခြင်းနည်းပညာအသေးစိတ်ရှင်းလင်းချက်

PHP Database Connection တွင်ဒေတာစာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ခြင်းနည်းပညာအသေးစိတ်ရှင်းလင်းချက်

M66 2025-06-19

PHP Database Connection တွင်ဒေတာစာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ခြင်းနည်းပညာအသေးစိတ်ရှင်းလင်းချက်

အင်တာနက်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်အတူဒေတာဘေ့စ်များသည်အထိခိုက်မခံသောသတင်းအချက်အလက်များကိုသိုလှောင်ခြင်းနှင့်စီမံခြင်းအတွက်အဓိကကိရိယာတစ်ခုဖြစ်လာသည်။ PHP application များအရအသုံးပြုသူစကားဝှက်များ, ခရက်ဒစ်ကဒ်အချက်အလက်ကဲ့သို့သောအထိခိုက်မခံသောအချက်အလက်များကိုဒေတာဘေ့စ်တွင်သိမ်းဆည်းရန်လိုအပ်သည်။ ထို့ကြောင့်ဒေတာအနေဖြင့်ဒေတာဘေ့စ်များ၏လုံခြုံရေးကိုသေချာစေရန်အချက်အလက်များကိုစာဝှက်ခြင်းနှင့်စာဝှက်ဖြည်ခြင်းနည်းပညာများအလွန်အရေးကြီးသည်။

ဒေတာ encryption

PHP သည် AES (အဆင့်မြင့်စာဝှက်စနစ်စံ) နှင့် RSA (rivest-shamir-adleman) ကဲ့သို့သော encryption algorithms အမျိုးမျိုးကိုထောက်ပံ့ပေးသည်။ ဒေတာဘေ့စ်ဆက်သွယ်မှုများတွင် AES algorithm ကိုများသောအားဖြင့်အထိခိုက်မခံသောအချက်အလက်များကိုစာဝှက်ရန်အသုံးပြုလေ့ရှိသည်။ AES algorithm ကိုအသုံးပြုပြီးအချက်အလက်များကိုစာဝှက်နည်းပြသသည့်ဥပမာတစ်ခုမှာဤတွင်ဖော်ပြထားသည်။

<?php
// encryption functions
function encrypt($data, $key) {
    $iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('aes-256-cbc'));
    $encrypted = openssl_encrypt($data, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv);
    return base64_encode($encrypted . '::' . $iv);
}
?>

နောက်တစ်ခုကဒေတာဘေ့စ် connection ကိုတည်ဆောက်ရန်နှင့်စာဝှက်ထားတဲ့အချက်အလက်များကိုသိမ်းဆည်းရန် PDO ကိုသုံးနိုင်သည်။

<?php
// ဒေတာဘေ့စ်ဆက်သွယ်မှု
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$key = "your_encryption_key";

try {
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
    $conn-> setatribute (pdo :: attr_errmode, pdo :: ermdo :: ermoode_exception);

    // $ ဒေတာများကို encrypt လုပ်ထားသည့်ဒေတာ = "sensitive_info";

    // စာဝှက်ထားတဲ့ဒေတာ $ encrypteddata = encryptata = encrypt ($ ဒေတာ, $ key);

    // စာဝှက်ထားတဲ့ဒေတာများကိုဒေတာဘေ့စ် $ sql = "ဇယားသို့ထည့်သွင်းပါ (encrypted_data) တန်ဖိုးများ (&#39;$ encrypteddata&#39;)"
    $ Conn-> Exec ($ sql);

    ECHO "ဒေတာများကိုစာဝှက်ပြီးသိမ်းဆည်းထားတယ်။ ";
} ဖမ်း (PoCoException $ E) {
    ပဲ့တင်သံ "အမှား -" ။ $ e-> gettessage ();
}

$ can = null;
>

ဒေတာစာဝှက်ဖြည်ခြင်း

စာဝှက်ထားတဲ့ဒေတာတွေကိုဒေတာဘေ့စ်ကနေပြန်လည်ရယူရန်လိုအပ်သည့်အခါဒေတာပြန်လည်ထူထောင်ရေးအတွက်စာဝှက်ဖြည်ခြင်းနည်းပညာကိုအသုံးပြုသည်။ AES algorithm ကိုအသုံးပြုပြီးဒေတာကိုစာဝှက်ဖြည်ဖို့ဘယ်လိုဖေါ်ပြတဲ့ဥပမာတစ်ခုမှာဤတွင်ဖော်ပြထားသည်။

<?php
// decryption function ကို
function decrypt($data, $key) {
    list($encryptedData, $iv) = explode('::', base64_decode($data), 2);
    return openssl_decrypt($encryptedData, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv);
}
?>

အောက်ဖော်ပြပါကုဒ်သည်ဒေတာဗေ့စ်မှစာဝှက်ထားသောဒေတာများကိုမည်သို့ရယူရမည်ကိုပြသပြီး၎င်းကိုစာဝှက်ဖြည်ရမည်ကိုပြသသည်။

<?php
// ဒေတာဘေ့စ်ဆက်သွယ်မှု
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$key = "your_encryption_key";

try {
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
    $conn-> setatribute (pdo :: attr_errmode, pdo :: ermdo :: ermoode_exception);

    // စာဝှက်ထားတဲ့ဒေတာတွေကိုဒေတာဘေ့စ် $ sql = "table ကို select လုပ်ထားတဲ့ encrypted_data ကိုရွေးချယ်ပါ" ။
    $ stmt = $ conn-> query ($ sql);
    $ ရလဒ် = $ stmt-> fetch ();

    // decrypt ဒေတာ $ decrypteddata = decrypt ($ ရလဒ် [&#39;encrypted_data&#39;], $ key);

    ပဲ့တင်သံ "စာဝှက်ဖြည်ထားတဲ့အချက်အလက်များ -" ။ $ decrypteddata;
} ဖမ်း (PoCoException $ E) {
    ပဲ့တင်သံ "အမှား -" ။ $ e-> gettessage ();
}

$ can = null;
>

အကျဉ်းချုပ်

PHP တွင်စာဝှက်စနစ်နှင့်စာဝှက်ဖြည်နည်းများကိုအသုံးပြုခြင်းအားဖြင့်ဒေတာဘေ့စ်တွင်အထိခိုက်မခံသောအချက်အလက်များ၏လုံခြုံရေးကိုထိရောက်စွာတိုးတက်အောင်လုပ်နိုင်သည်။ AES algorithm ၏ encryption နှင့်စာဝှက်စနစ်သည်အချက်အလက်များ၏လျှို့ဝှက်ချက်ကိုကာကွယ်ပေးသည်သာမကအချက်အလက်များယိုစိမ့်မှုများကိုလည်းကာကွယ်ပေးသည်။ သတိပြုသင့်သည်မှာစာဝှက်စနစ်၏လုံခြုံရေးကိုကာကွယ်ရန်အလွန်အရေးကြီးသည်, ထို့ကြောင့်သော့ကိုထုတ်ဖော်ခြင်းကိုကာကွယ်ရန်သင့်တော်သောအစီအမံများကိုပြုလုပ်သင့်သည်။

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