0Pricing
Cryptology Academy · บทเรียน

อะไรทำให้โพรโทคอลปลอดภัย

ระบุเป้าหมายของโพรโทคอลการเข้ารหัสลับ ได้แก่ การพิสูจน์ตัวตน การรักษาความลับ ความถูกต้องครบถ้วน และการปฏิเสธความรับผิดไม่ได้

อะไรทำให้โพรโทคอลปลอดภัย เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

การยืนยันตัวตน: การรู้ว่ากำลังสื่อสารกับใคร

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

การรักษาความลับ: มีเพียงฝ่ายที่ตั้งใจไว้เท่านั้นที่อ่านข้อความได้

การรักษาความลับทำให้มั่นใจได้ว่าเนื้อหาของข้อความเข้าถึงได้เฉพาะผู้รับที่ตั้งใจไว้เท่านั้น โดยใช้การเข้ารหัสด้วยคีย์ที่รู้เฉพาะฝ่ายที่เกี่ยวข้อง ความล้มเหลวในการรักษาความลับหมายความว่าผู้ดักฟังสามารถอ่านข้อความระหว่างการส่งได้ การรักษาความลับเพียงอย่างเดียวไม่สามารถป้องกันผู้โจมตีจากการแก้ไขข้อความหรือการโจมตีแบบเล่นซ้ำได้ จึงต้องใช้ร่วมกับการป้องกันความถูกต้องครบถ้วนของข้อมูล

ความถูกต้องครบถ้วน: การตรวจจับการแก้ไขข้อความ

การป้องกันความถูกต้องครบถ้วนของข้อมูลทำให้มั่นใจได้ว่าข้อความที่ได้รับตรงกับที่ผู้ส่งส่งมาอย่างแท้จริง โดยไม่มีการเพิ่ม ลบ หรือแก้ไข รหัสยืนยันความถูกต้องของข้อความและโหมดการเข้ารหัสที่ยืนยันความถูกต้องช่วยให้เกิดความถูกต้องครบถ้วนของข้อมูล หากไม่มีการป้องกันดังกล่าว ผู้โจมตีที่ไม่สามารถอ่านข้อความเข้ารหัสได้ก็ยังอาจพลิกบิตบางตำแหน่งในลักษณะที่คาดเดาได้ เพื่อเปลี่ยนข้อความต้นฉบับหลังถอดรหัส ดังที่เกิดขึ้นในการโจมตีแบบออราเคิลแพดดิ้ง

การไม่สามารถปฏิเสธได้: ผู้ส่งปฏิเสธการส่งไม่ได้

การไม่สามารถปฏิเสธได้หมายความว่า ผู้ส่งไม่อาจปฏิเสธในภายหลังว่าเคยส่งข้อความนั้น คุณสมบัตินี้ทำได้ด้วยลายมือชื่อดิจิทัลที่ใช้คีย์อสมมาตร เพราะมีเพียงผู้ถือคีย์ส่วนตัวเท่านั้นที่สามารถสร้างลายมือชื่อได้ และคีย์สาธารณะที่สอดคล้องกันใช้ตรวจสอบลายมือชื่อนั้น MAC ไม่ให้คุณสมบัติการไม่สามารถปฏิเสธได้ เนื่องจากทั้งผู้ส่งและผู้รับรู้ความลับร่วมกัน และฝ่ายใดฝ่ายหนึ่งก็สามารถสร้าง MAC ได้

ความใหม่: การปฏิเสธข้อความที่เล่นซ้ำ

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

ความลับแบบส่งต่อสมบูรณ์แบบ

ความลับส่งต่อแบบสมบูรณ์ช่วยให้มั่นใจได้ว่าการที่กุญแจระยะยาวถูกเจาะจะไม่เปิดเผยกุญแจเซสชันในอดีต คุณสมบัตินี้เกิดขึ้นจากการสร้างคู่กุญแจชั่วคราวสำหรับแต่ละเซสชันโดยใช้ Diffie-Hellman ระบบจะคำนวณกุญแจเซสชันจากคู่กุญแจชั่วคราว แล้วทิ้งกุญแจเหล่านั้นหลังใช้งาน แม้ว่ากุญแจส่วนตัวระยะยาวของเซิร์ฟเวอร์จะถูกขโมยในภายหลัง ผู้โจมตีก็ไม่สามารถถอดรหัสเซสชันที่บันทึกไว้ก่อนหน้าได้ เพราะคู่กุญแจชั่วคราวไม่มีอยู่อีกต่อไป

การยืนยันตัวตนแบบสองฝ่ายเทียบกับแบบทางเดียว

การยืนยันตัวตนแบบทางเดียวจะตรวจสอบเพียงฝ่ายเดียว ใน HTTPS เซิร์ฟเวอร์จะแสดงใบรับรองให้ไคลเอ็นต์ตรวจสอบ แต่โดยทั่วไปเซิร์ฟเวอร์จะไม่ตรวจสอบตัวตนของไคลเอ็นต์ การยืนยันตัวตนแบบสองฝ่าย หรือ TLS แบบสองฝ่าย (mTLS) กำหนดให้ทั้งสองฝ่ายแสดงและตรวจสอบใบรับรอง mTLS ใช้กันทั่วไปในสถาปัตยกรรมไมโครเซอร์วิส เกตเวย์ API และ VPN ระดับองค์กร ซึ่งต้องตรวจสอบปลายทางทั้งสองก่อนแลกเปลี่ยนข้อมูลที่ละเอียดอ่อน

เป้าหมายความปลอดภัยที่เป็นทางการเทียบกับสัญชาตญาณ

ผู้ออกแบบโพรโทคอลไม่สามารถพึ่งพาสัญชาตญาณเพียงอย่างเดียวได้ โพรโทคอลที่ดูเหมือนปลอดภัยอย่างเห็นได้ชัดอาจล้มเหลวด้วยวิธีที่ละเอียดอ่อนได้ โพรโทคอลกุญแจสาธารณะ Needham-Schroeder เผยแพร่ในปี 1978 และเชื่อกันว่าปลอดภัย ในปี 1995 Gavin Lowe พบข้อบกพร่องที่เปิดทางให้เกิดการโจมตีแบบปลอมตัว โดยใช้เครื่องมือตรวจสอบอย่างเป็นทางการ การตรวจสอบอย่างเป็นทางการด้วยเครื่องมือตรวจสอบแบบจำลอง เช่น Tamarin หรือ ProVerif ได้กลายเป็นแนวปฏิบัติมาตรฐานสำหรับการออกแบบโพรโทคอลที่มีความสำคัญด้านความปลอดภัย

แบบจำลองภัยคุกคาม Dolev-Yao

แบบจำลอง Dolev-Yao เป็นแบบจำลองภัยคุกคามมาตรฐานสำหรับการวิเคราะห์โพรโทคอลการเข้ารหัส แบบจำลองนี้สมมติว่าผู้โจมตีควบคุมเครือข่ายทั้งหมด โดยสามารถดักจับ ปิดกั้น แก้ไข ส่งซ้ำ และแทรกข้อความใด ๆ ได้ นอกจากนี้ยังสมมติว่ากลไกพื้นฐานด้านการเข้ารหัสสมบูรณ์แบบ ไม่มีจุดอ่อนทางคณิตศาสตร์ ภายใต้แบบจำลองนี้ โพรโทคอลจะปลอดภัยก็ต่อเมื่อบรรลุเป้าหมาย แม้ผู้โจมตีจะควบคุมการสื่อสารทั้งหมดได้อย่างสมบูรณ์

เหตุใดการออกแบบโพรโทคอลจึงเป็นเรื่องยาก

การออกแบบโพรโทคอลการเข้ารหัสขึ้นชื่อว่ายากมาก เพราะข้อบกพร่องมักละเอียดอ่อนและมองไม่เห็นได้โดยง่าย ปฏิสัมพันธ์ระหว่างข้อความหลายรายการ ค่าที่ใช้ครั้งเดียว ประทับเวลา และกุญแจ อาจสร้างช่องทางโจมตีที่คาดไม่ถึง ผู้มีส่วนร่วมแต่ละรายอาจมองสถานะของโพรโทคอลแตกต่างกัน เซสชันที่ทำงานพร้อมกันอาจรบกวนกันเอง โพรโทคอลสำคัญทุกโพรโทคอลที่นำไปใช้งานจริง รวมถึง SSL, TLS, WPA2 และ 802.11 ล้วนเคยพบช่องโหว่สำคัญหลังจากนำไปใช้งานแล้ว

ความล้มเหลวของโพรโทคอลในโลกจริง

SSL 3.0 ถูกทำลายด้วยการโจมตี POODLE ส่วน TLS 1.0 และ TLS 1.1 ถูกเลิกใช้เนื่องจากมีจุดอ่อนหลายประการ การเข้ารหัส WEP WiFi ถูกทำลายโดยสมบูรณ์ภายในปีแรกที่นำไปใช้งาน PPTP VPN ถือว่าไม่ปลอดภัยเนื่องจากจุดอ่อนของ MS-CHAPv2 ความล้มเหลวแต่ละครั้งสอนให้ชุมชนด้านความปลอดภัยเข้าใจช่องว่างระหว่างสัญชาตญาณด้านความปลอดภัยแบบไม่เป็นทางการกับการออกแบบโพรโทคอลที่พิสูจน์ได้ว่าถูกต้องภายใต้แบบจำลอง Dolev-Yao

เป้าหมายความปลอดภัยของโพรโทคอล

คุณสมบัติด้านความปลอดภัยใดรับรองว่าข้อความที่ผู้โจมตีบันทึกไว้ในวันนี้จะไม่สามารถส่งซ้ำไปยังเซิร์ฟเวอร์ในภายหลังได้สำเร็จ เพื่อทำให้การกระทำเดิมเกิดขึ้นซ้ำ

เป้าหมายของโพรโทคอลที่ปลอดภัย: ประเด็นสำคัญ

โพรโทคอลที่ปลอดภัยต้องบรรลุคุณสมบัติด้านการยืนยันตัวตน การรักษาความลับ ความถูกต้องครบถ้วนของข้อมูล การปฏิเสธความรับผิดไม่ได้ และความใหม่ของข้อความ ความลับส่งต่อแบบสมบูรณ์ช่วยปกป้องเซสชันในอดีตจากการที่กุญแจถูกเจาะในอนาคต การยืนยันตัวตนแบบสองฝ่ายตรวจสอบทั้งสองฝ่าย แบบจำลอง Dolev-Yao ถือว่าเครือข่ายเป็นปฏิปักษ์อย่างเต็มรูปแบบ การออกแบบโพรโทคอลต้องอาศัยการตรวจสอบอย่างเป็นทางการ ไม่ใช่เพียงสัญชาตญาณ โพรโทคอลสำคัญทุกโพรโทคอลล้วนเคยพบช่องโหว่หลังนำไปใช้งาน ซึ่งผลักดันให้มาตรฐานการเข้ารหัสพัฒนาอย่างต่อเนื่อง

คำถามที่พบบ่อย

บทเรียน “อะไรทำให้โพรโทคอลปลอดภัย” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “อะไรทำให้โพรโทคอลปลอดภัย” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “อะไรทำให้โพรโทคอลปลอดภัย”

ระบุเป้าหมายของโพรโทคอลการเข้ารหัสลับ ได้แก่ การพิสูจน์ตัวตน การรักษาความลับ ความถูกต้องครบถ้วน และการปฏิเสธความรับผิดไม่ได้ คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “อะไรทำให้โพรโทคอลปลอดภัย” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม

ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. อะไรทำให้โพรโทคอลปลอดภัย
  2. SSH: การรักษาความปลอดภัยการเข้าถึงระยะไกล
  3. SFTP และ SCP: การถ่ายโอนไฟล์อย่างปลอดภัย
  4. DNSSEC: การพิสูจน์ความถูกต้องของคำตอบ DNS
← กลับไปที่ Cryptology Academy