รับทําเว็บไซต์ รับทําseo
บทความที่น่าสนใจ

บทความ ที่น่าสนใจ

PHP Encryption การเข้ารหัสและถอดรหัสโดยการใช้กุญแจดอกเดียวกัน(Secret-Key) !!!

    ในการพัฒนาระบบหนึ่งๆ นั้นจำเป็นจะต้องมีการแลกเปลี่ยนข้อมูลข่าวสารระหว่างเครื่องคอมพิวเตอร์ ไม่ว่าจะเป็นแบบ client-server หรือแบบ server-server เราจึงต้องคํานึงถึงความปลอดภัยในระหว่างการใช้งานแลกเปลี่ยนข้อมูล วิธีการป้องกันไม่ให้ข้อความที่ต้องการสื่อสารนั้นมีการเปลี่ยนแปลงแก้ไขหรือเปิดเผยข้อมูลก่อนถึงมือผู้รับ การเข้ารหัสข้อมูล (Encryption) จึงเป็นทางเลือกหนึ่งของการเพิ่ม ความปลอดภัยข้อมูลยิ่งขึ้น

    การเข้ารหัสแบบสมมาตร (Symmetric Encryption หรือ   Secret    Key)
    โดยนําาข้อความ (Plain Text) ที่ต้องการส่งมาทําการเข้ารหัสด้วยลูกกุญแจ (Encryption) จะได้ข้อความที่ถูกเข้ารหัส (Cipher 
    Text) การเข้ารหัสจะใช้ Key ลับของผู้เข้ารหัส ซึ่งคนที่จะถอดรหัสนั้นได้ ก็ต้องใช้ Key เดียวกันด้วย

    mcrypt_encrypt/ mcrypt_decrypt
    แบบนี้มี key ที่ต้องใช้ ถอดรหัส 2 คีย์ อันนึงรู้เฉพาะผม อีกอันสุ่มไว้ตอนเข้ารหัสครั้งแรกใช้ 64_encode เก็บไว้ ทั้ง key ที่สุ่มมา และ พาสที่เข้ารหัสแล้ว ถ้าให้ปลอดภัยกว่านั้นเก็บแยกกัน

    ตัวอย่าง code ฝั่งส่ง (url ให้เป็น http://www.example.com/api)
    <?php

      $data = 'Test Symmetric Encryption';

      $key = 'utrdn6kcxkfgs6keo23345kfniomgf4s';
      $suffix = '4678965001980654';

      $code = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $data, MCRYPT_MODE_CFB, $suffix); 
      echo $code; exit;

    ?>

    ตัวอย่าง code ฝั่งรับ
    <?php

      $code = file_get_contents('http://www.example.com/api');
      
      $key = 'utrdn6kcxkfgs6keo23345kfniomgf4s';
      $suffix = '4678965001980654';

      $data = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $code, MCRYPT_MODE_CFB, $suffix);

    ?>


     
บทความที่น่าสนใจ

บทความ ล่าสุด

บทความ ความรู้ด้านไอที, คอมพิวเตอร์ Techonlogy, Gadget, ความรู้เกี่ยวกับคอมพิวเตอร์ กับทาง SoftMelt.com