คำอธิบาย
ฟังก์ชัน crypt() ใช้แฮชสตริงด้วยอัลกอริทึมต่างๆ เช่น DES, Blowfish, MD5, SHA-256, SHA-512 พฤติกรรมอาจแตกต่างกันไปตามระบบปฏิบัติการ ฟังก์ชันนี้เก่าและไม่แนะนำให้ใช้ใหม่ ให้ใช้ password_hash() แทน
ค่าคงที่สำหรับอัลกอริทึม (Constants)
- CRYPT_STD_DES - DES มาตรฐาน salt 2 ตัวอักษร
- CRYPT_EXT_DES - DES ขยาย salt 9 ตัวอักษร
- CRYPT_MD5 - MD5 salt 12 ตัวอักษร เริ่มต้น $1$
- CRYPT_BLOWFISH - Blowfish salt เริ่มต้น $2a$, $2x$, $2y$
- CRYPT_SHA_256 - SHA-256 salt 16 ตัวอักษร เริ่มต้น $5$
- CRYPT_SHA_512 - SHA-512 salt 16 ตัวอักษร เริ่มต้น $6$
รูปแบบการใช้งาน (Syntax)
crypt(string $string, string $salt = ""): string
พารามิเตอร์
- string - สตริงที่ต้องการแฮช (จำเป็น)
- salt - salt สำหรับการแฮช (ตัวเลือก แต่อย่าปล่อยว่าง)
ค่าที่คืนกลับ (Return Value)
คืนค่าสตริงที่แฮชแล้ว หรือสตริงสั้นกว่า 13 ตัวอักษรที่แตกต่างจาก salt ถ้าล้มเหลว
ตัวอย่างการใช้งาน
<?php
if (CRYPT_STD_DES == 1) {
echo "DES supported = " . crypt('demo', 'st') . "\n";
} else {
echo "DES not supported!";
}
?>ผลลัพธ์
DES supported = st7zBedJadRn2
คำเตือน: อย่าใช้ crypt() สำหรับแอปพลิเคชันใหม่ ให้ใช้ password_hash() และ password_verify() แทน