กลไกรักษาความปลอดภัย

              ไวไฟได้กำหนดให้มีทางเลือกสำหรับสร้างความปลอดภัยให้กับเครือข่ายแลนแบบไร้สาย ด้วยกลไกซึ่งมีชื่อเรียกว่า WEP (Wired Equivalent Privacy) ซึ่งออกแบบมาเพื่อเพิ่มความปลอดภัยกับเครือข่าย LAN แบบไร้สายให้ใกล้เคียงกับความปลอดภัยของเครือข่ายแบบที่ใช้สายนำสัญญาณ (IEEE 802.3 Ethernet) บทบาทของ WEP แบ่งเป็น 2 ส่วนหลัก ๆ คือ การเข้ารหัสข้อมูล (Encryption) และ การตรวจสอบผู้ใช้ (Authentication)

การเข้าและถอดรหัสข้อมูล

การเข้าและถอดรหัสข้อมูล (WEP Encryption/Decryption) ใช้หลักการในการเข้าและถอดรหัสข้อมูลที่เป็นแบบ symmetrical (นั่นคือรหัสที่ใช้ในการเข้ารหัสข้อมูลจะเป็นตัวเดียวกันกับรหัสที่ใช้ สำหรับการถอดรหัสข้อมูล)
  • การทำงานของการเข้ารหัสข้อมูลในกลไก WEP Encryption
    • 1. Key ขนาด 64 หรือ 128 บิต สร้างขึ้นโดยการนำเอารหัสลับซึ่งมีความยาว 40 หรือ 104 บิต มาต่อรวมกับข้อความเริ่มต้น IV (Initialization Vector) ขนาด 24 บิตที่กำหนดแบบสุ่มขึ้นมา
    • 2. Integrity Check Value (ICV) ขนาด 32 บิต สร้างขึ้นโดยการคำนวณค่า 32-bit Cyclic Redundant Check จากข้อมูลดิบที่จะส่งออกไป (ICV) ซึ่งจะนำไปต่อรวมกับข้อมูลดิบ มีไว้สำหรับตรวจสอบความถูกต้องของข้อมูลหลังจากการถอดรหัสแล้ว)
    • 3. ข้อความที่มีความสุ่ม (Key Stream) ขนาดเท่ากับความยาวของข้อมูลดิบที่จะส่งกับอีก 32 บิต (ซึ่งเป็นความยาวของ ICV) สร้างขึ้นโดยหน่วยสร้างข้อความที่มีความสุ่มหรือ PRNG (Pseudo-Random Number Generator) ที่มีชื่อเรียกว่า RC4 ซึ่งจะใช้ Key ที่กล่าวมาข้างต้นเป็น Input (หรือ Seed) หมายเหตุ PRNG จะสร้างข้อความสุ่มที่แตกต่างกันสำหรับ Seed แต่ละค่าที่ใช้
    • 4. ข้อความที่ได้รับการเข้ารหัส (Ciphertext) สร้างขึ้นโดยการนำเอา ICV ต่อกับข้อมูลดิบแล้วทำการ XOR แบบบิตต่อบิตกับข้อความสุ่ม (Key Stream) ซึ่ง PRNG ได้สร้างขึ้น
    • 5. สัญญาณที่จะส่งออกไปคือ ICV และข้อความที่ได้รับการเข้ารหัส (Ciphertext)
  • การทำงานของการเข้ารหัสข้อมูลในกลไก WEP Decryption
    • 1. Key ขนาด 64 หรือ 128 บิต สร้างขึ้นโดยการนำเอารหัสลับซึ่งมีความยาว 40 หรือ 104 บิต (ซึ่งเป็นรหัสลับเดียวกับที่ใช้ในการเข้ารหัสข้อมูล) มาต่อรวมกับ IV ที่ส่งมากับสัญญาณที่ได้รับ
    • 2. PRNG สร้างข้อความสุ่ม (Key Stream) ที่มีขนาดเท่ากับความยาวของข้อความที่ได้รับการเข้ารหัสและส่งมา โดยใช้ Key ที่กล่าวมาข้างต้นเป็น Input
    • 3. ข้อมูลดิบและ ICV ได้รับการถอดรหัสโดยการนำเอาข้อความที่ได้รับมา XOR แบบบิตต่อบิตกับข้อความสุ่ม (Key Stream) ซึ่ง PRNG ได้สร้างขึ้น
    • 4. สร้าง ICV' โดยการคำนวณค่า CRC-32 จากข้อมูลดิบที่ถอดรหัสแล้วเพื่อนำมาเปรียบเทียบกับค่า ICV ที่ส่งมา หากค่าทั้งสองตรงกัน (ICV' = ICV) แสดงว่าการถอดรหัสถูกต้องและผู้ที่ส่งมาได้รับอนุญาต (มีรหัสลับของเครือข่าย) แต่หากค่าทั้งสองไม่ตรงกันแสดงว่าการถอดรหัสไม่ถูกต้องหรือผู้ที่ส่งมาไม่ได้รับอนุญาต

การตรวจสอบผู้ใช้

สำหรับเครือข่ายไวไฟ ผู้ใช้ (เครื่องลูกข่าย) จะมีสิทธิในการรับส่งสัญญาณข้อมูลในเครือข่ายได้ก็ต่อเมื่อได้รับการตรวจสอบ แล้วได้รับอนุญาต ซึ่งมาตรฐานไวไฟได้กำหนดให้มีกลไกสำหรับการตรวจสอบผู้ใช้ (Authentication) ใน 2 ลักษณะคือ Open System Authentication และ Shared Key Authentication ซึ่งเป็นดังต่อไปนี้
  • Open System Authentication
การตรวจสอบผู้ใช้ในลักษณะ นี้เป็นทางเลือกแบบ default ที่กำหนดไว้ในมาตรฐาน IEEE 802.11 ในการตรวจสอบแบบนี้จะไม่ตรวจสอบรหัสลับจากผู้ใช้ ซึ่งอาจกล่าวได้ว่าเป็นการอนุญาตให้ผู้ใช้ใด ๆ ก็ได้สามารถเข้ามารับส่งสัญญาณในเครือข่ายนั่นเอง แต่อย่างไรก็ตามในการตรวจสอบแบบนี้อุปกรณ์ที่ทำหน้าที่เป็นสถานีแม่ข่ายไม่จำเป็นต้องอนุญาตให้สถานีผู้ใช้เข้ามาใช้เครือข่ายได้เสมอไป ในกรณีนี้บทบาทของ WEP จึงเหลือแต่เพียงการเข้ารหัสข้อมูลเท่านั้น กลไกการตรวจสอบแบบ open system authentication มีขั้นตอนการทำงานดังต่อไปนี้
    • 1. สถานีที่ต้องการจะเข้ามาร่วมใช้เครือข่ายจะส่งข้อความซึ่งไม่เข้ารหัสเพื่อขอรับการตรวจสอบ (Authentication Request Frame) ไปยังอุปกรณ์ที่ทำหน้าที่เป็นสถานีแม่ข่าย โดยในข้อความดังกล่าวจะมีการแสดงความจำนงเพื่อรับการตรวจสอบแบบ open system
    • 2. อุปกรณ์ที่ทำหน้าที่เป็นสถานีแม่ข่ายโต้ตอบด้วยข้อความที่แสดงถึงการตอบรับหรือปฏิเสธ Request ดังกล่าว
  • Shared Key Authentication
การตรวจสอบผู้ใช้แบบ shared key authentication จะอนุญาตให้สถานีผู้ใช้ซึ่งมีรหัสลับของเครือข่ายนี้เท่านั้นที่สามารถเข้า มารับส่งสัญญาณกับอุปกรณ์ที่ทำหน้าที่เป็นสถานีแม่ข่ายได้ โดยมีการใช้เทคนิคการถามตอบที่ใช้กันทั่วไปผนวกกับการเข้ารหัสด้วย WEP เป็นกลไกสำหรับการตรวจสอบ (ดังนั้นการตรวจสอบแบบนี้จะทำได้ก็ต่อเมื่อมีการ Enable การเข้ารหัสด้วย WEP) กลไกการตรวจสอบดังกล่าวมีขั้นตอนการทำงานดังต่อไปนี้
    • 1. สถานีผู้ใช้ที่ต้องการจะเข้ามาร่วมใช้เครือข่ายจะส่งข้อความซึ่งไม่เข้ารหัสเพื่อขอรับการตรวจสอบ (Authentication Request Frame) ไปยังอุปกรณ์ที่ทำหน้าที่เป็นสถานีแม่ข่าย โดยในข้อความดังกล่าวจะมีการแสดงความจำนงเพื่อรับการตรวจสอบแบบ shared key
    • 2. หากสถานีแม่ข่ายต้องการตอบรับ Request ดังกล่าว จะมีการส่งข้อความที่แสดงถึงการตอบรับและคำถาม (challenge text) มายังเครื่องลูกข่าย ซึ่ง challenge text ดังกล่าวมีขนาด 128 ไบต์และสุ่มขึ้นมา (โดยอาศัย PRNG) หากอุปกรณ์แม่ข่ายไม่ต้องการตอบรับ Request ดังกล่าว จะมีการส่งข้อความที่แสดงถึงการไม่ตอบรับ ซึ่งเป็นการสิ้นสุดของการตรวจสอบครั้งนี้
    • 3. หากมีการตอบรับจากสถานีแม่ข่าย สถานีผู้ใช้ที่ขอรับการตรวจสอบจะทำการเข้ารหัสข้อความคำถามที่ส่งมาโดยใช้รหัสลับของเครือข่ายแล้วส่งกลับไปยังสถานีแม่ข่าย
    • 4. สถานีแม่ข่ายทำการถอดรหัสข้อความที่ตอบกลับมาโดยใช้รหัสลับของเครือข่าย หลังจากถอดรหัสแล้วหากข้อความที่ตอบกลับมาตรงกับข้อความคำถาม (challenge text) ที่ส่งไป สถานีแม่ข่ายจะส่งข้อความที่แสดงถึงการอนุญาตให้สถานีผู้ใช้นี้เข้าใช้เครือข่ายได้ แต่หากข้อความที่ตอบกลับมาไม่ตรงกับข้อความคำถาม สถานีแม่ข่ายจะโต้ตอบด้วยข้อความที่แสดงถึงการไม่อนุญาต


แหล่งอ้างอิง


ไม่มีความคิดเห็น:

แสดงความคิดเห็น