3DES Encrypt Decrypt with PHP

ပြီးခဲ့သည့် အပတ်က .NET ဘက်ကနေပြီးတော့ TripleDES ကို သုံးပြီး encrypt လုပ်ထားတာကို PHP က ပြန်ဖြည်ဖို့ ဖြစ်လာတယ်။ PHP ရဲ့ default openssl encrypt decrypt က အလုပ်မလုပ်ဘူး။ ဒါနဲ့ ရှာကြည့်တော့ နောက်ဆုံး phpseclib နဲ့ပဲ အဆင်ပြေသွားတယ်။

အရင်ဆုံး composer နဲ့ phpseclib ကို သွင်းဖို့ လိုမယ်။

composer require phpseclib/phpseclib

ပြီးရင် composer နဲ့ အခုလို အသုံးပြုနိုင်ပါတယ်။


use phpseclib\Crypt\TripleDES;
function encrypt($val,$key) {
    $des = new \phpseclib\Crypt\TripleDES(\phpseclib\Crypt\Base::MODE_ECB);
    $key = "HELLO";
    $des->setKey($key);
    $res = $des->encrypt($val);
    $res = base64_encode($res);
    return $res;
}

function decrypt($val,$key) {
    $des = new \phpseclib\Crypt\TripleDES(\phpseclib\Crypt\Base::MODE_ECB);
    $key = "HELLO";
    $des->setKey($key);
    $val = base64_decode($val);
    return $des->decrypt($val);
}

တစ်ခါတစ်လေ သိသွားရင် သိပ်ခက်လှတာ မဟုတ်ပေမယ့် မသိခင်မှာတော့ အတော်လေးကို ရှာလိုက်ရတယ်။

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.