ไคลเอนต์ SOCKS5 เริ่มด้วยเวอร์ชัน 5 จากนั้นส่งเวอร์ชัน 1 ระหว่างการยืนยันตัวตนด้วยรหัสผ่าน นั่นไม่จำเป็นต้องเป็นการลดเวอร์ชันหรือพร็อกซีที่ผิด

การแลกเปลี่ยนครั้งแรกเจรจาวิธีการยืนยันตัวตนของ SOCKS5 เมื่อเลือกชื่อผู้ใช้/รหัสผ่าน RFC 1929 กำหนดการเจรจาย่อยแยกต่างหากซึ่งช่องเวอร์ชันคือ 0x01

คำขอยืนยันตัวตนนั้นมีความยาวและไบต์ของชื่อผู้ใช้และรหัสผ่าน เซิร์ฟเวอร์ส่งคืนเวอร์ชันของการเจรจาย่อยและสถานะ ไคลเอนต์จะส่งคำขอปลายทาง SOCKS5 หลังจากยืนยันตัวตนสำเร็จเท่านั้น

แยกการแลกเปลี่ยนทั้งสองออกจากกันเมื่ออ่านแทรซหรือนำไคลเอนต์ไปใช้งาน การทำ 0x05 ซ้ำทุกที่เพราะบริการนี้ชื่อ SOCKS5 จะสร้างข้อความยืนยันตัวตนที่ผิด

สถานะรหัสผ่านที่สำเร็จก็ไม่ได้หมายความว่าปลายทางที่ร้องขอได้รับอนุญาต การตอบกลับ SOCKS ครั้งถัดไปยังคงปฏิเสธการเชื่อมต่อนั้นได้

สุดท้าย วิธีชื่อผู้ใช้/รหัสผ่านนี้ไม่ได้เข้ารหัสข้อมูลรับรองของตน ไบต์เวอร์ชันระบุรูปแบบข้อความ ไม่ใช่โหมดเข้าสู่ระบบที่เข้ารหัสหรือแข็งแกร่งกว่า

บทความที่เกี่ยวข้อง