ในการเข้ารหัสและถอดรหัสใน MySQL ให้ใช้ AES_ENCRYPT() และ AES_DECRYPT() ใน MySQL -
ใส่ค่า yourTableName(AES_ENCRYPT(yourValue,yourSecretKey));select cast(AES_DECRYPT(yourColumnName, yourSecretKey) as char) from yourTableName;
เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง demo63−> (−> value blob−> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (2.60 วินาที)
แทรกบางระเบียนลงในตารางโดยใช้คำสั่งแทรก เรากำลังเข้ารหัสขณะแทรก -
mysql> แทรกลงในค่า demo63 (AES_ENCRYPT('John','PASS')); เคียวรีตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที)mysql> แทรกลงในค่า demo63 (AES_ENCRYPT('David','PASS'));แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.41 วินาที)mysql> แทรกลงในค่า demo63 (AES_ENCRYPT('123456','PASS')); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.41 วินาที)
แสดงบันทึกจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก demo63;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------------------------+| ค่า |+------------------------------------------+| 0x16D8A4F11321D761920783BF96BB8314 || 0x0A85099F705F21D27B0129C54C4473AA || 0xAB7C6D6068BC100B0F04D1C4EA068AC9 |+------------------------------------+3 แถวในชุด (0.00 วินาที)ก่อน>ต่อไปนี้เป็นแบบสอบถามที่จะถอดรหัส -
mysql> เลือก cast(aes_decrypt(value, 'PASS') AS char) จาก demo63;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+------------------------------------------+| cast(aes_decrypt(value, 'PASS') AS ถ่าน) |+----------------------------------- --------+| จอห์น || เดวิด || 123456 |+------------------------------------------+3 แถวในชุด (0.00 วินาที)