ในการจัดเก็บชื่อผู้ใช้และรหัสผ่านอย่างปลอดภัยในฐานข้อมูล MySQL เราสามารถใช้ MD5()
เรามาดูตัวอย่างกัน ขั้นแรกเราจะสร้างตาราง คำสั่ง CREATE ใช้สำหรับสร้างตาราง
mysql> สร้างตาราง UserNameAndPasswordDemo-> (-> U_Id int(10) ไม่ได้ลงนาม NOT NULL AUTO_INCREMENT,-> UserId varchar(255) DEFAULT NULL,-> UserPassword varchar(255) DEFAULT NULL,-> primary key (U_Id) ,-> UNIQUE KEY `UserId` (`UserId`)-> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)
การแทรกบันทึกและจัดเก็บรหัสผ่านอย่างปลอดภัยด้วยความช่วยเหลือของ MD5()
mysql> INSERT INTO UserNameAndPasswordDemo(UserId, UserPassword) VALUES ('[email protected]', MD5('john123'));Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> INSERT INTO UserNameAndPasswordDemo(UserId, UserPassword ) VALUES (MD5('[email protected]'), MD5('123Carol'));แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.14 วินาที)
ตอนนี้ เราจะใช้คำสั่ง SELECT เพื่อแสดงบันทึก รวมถึงรหัสผ่านใน MD5 ที่นี่ เราจะแสดงเฉพาะบันทึกสำหรับ UserId '[email protected]'
mysql> SELECT *จาก UserNameAndPasswordDemo โดยที่ UserId='[email protected]';
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+------+-------------+------------------------- ---------+| U_Id | รหัสผู้ใช้ | รหัสผ่านผู้ใช้ |+------+-------------+-------------------------- --------+| 1 | [email protected] | 6e0b7076126a29d5dfcbd54835387b7b |+------+-------------+-------------------------- --------+1 แถวในชุด (0.00 วินาที)เพื่อแสดงรายการทั้งหมด
mysql> SELECT *จาก UserNameAndPasswordDemo;
ต่อไปนี้เป็นผลลัพธ์ที่เราได้บันทึกชื่อผู้ใช้และรหัสผ่านโดยใช้ MD5 -
<ก่อนหน้า>+------+-----------------------------------+---- ------------------------------+| U_Id | รหัสผู้ใช้ | รหัสผ่านผู้ใช้ |+------+-----------------------------------+----- ------------------------------------+| 1 | [email protected] | 6e0b7076126a29d5dfcbd54835387b7b || 2 | 5f565a3d794f85e5db4f3bb7b5811a25 | f1d2fb85f7d6ce7428b9b3fd569be42b |+------+ ----------------------------------+ ----- ------------------------------------+2 แถวในชุด (0.00 วินาที)