Cyber Security Academy · บทเรียน

การเข้ารหัสแบบสมมาตร: AES และการเข้ารหัสแบบสตรีม

เรียนรู้การทำงานของการเข้ารหัสแบบสมมาตร ขนาดกุญแจ ความแตกต่างระหว่างการเข้ารหัสแบบบล็อกกับแบบสตรีม และโหมดการทำงาน

บทเรียน 1 จาก 413 ขั้นตอน

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

การเข้ารหัสแบบสมมาตรคืออะไร

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

เออีเอส: มาตรฐานการเข้ารหัสขั้นสูง

เออีเอส เป็นมาตรฐานสากลสำหรับการเข้ารหัสแบบสมมาตร ซึ่ง NIST นำมาใช้ในปี 2001 ทำงานกับบล็อกขนาด 128 บิต และรองรับกุญแจขนาด 128, 192 หรือ 256 บิต เออีเอสถูกใช้ใน TLS การเข้ารหัสดิสก์ เครือข่ายไร้สาย (WPA2) และโพรโทคอลอื่น ๆ อีกนับไม่ถ้วน

โหมดการเข้ารหัสแบบบล็อกของเออีเอส

โหมดการเข้ารหัสแบบบล็อกกำหนดว่าเออีเอสจะจัดการกับข้อมูลที่มีขนาดใหญ่กว่าหนึ่งบล็อกอย่างไร:

  • ECB — เข้ารหัสแต่ละบล็อกอย่างอิสระ (ไม่ปลอดภัย — ทำให้เห็นรูปแบบข้อมูล)
  • CBC — นำแต่ละบล็อกไปดำเนินการเอ็กซ์ออร์กับข้อความเข้ารหัสของบล็อกก่อนหน้า (ต้องใช้เวกเตอร์เริ่มต้น)
  • GCM — การเข้ารหัสที่ยืนยันตัวตนได้ ให้ทั้งการรักษาความลับและความถูกต้องสมบูรณ์ของข้อมูล (เป็นตัวเลือกที่แนะนำ)
  • CTR — เปลี่ยนการเข้ารหัสแบบบล็อกให้เป็นการเข้ารหัสแบบกระแส

เหตุผลที่นิยมใช้โหมด GCM

AES-GCM ให้การเข้ารหัสที่ยืนยันตัวตนพร้อมข้อมูลประกอบ (AEAD): การเข้ารหัสและการตรวจสอบความถูกต้องสมบูรณ์ในกระบวนการเดียว การแก้ไขข้อความเข้ารหัสจะถูกตรวจพบ ใช้ใน TLS 1.3 และโพรโทคอลสมัยใหม่ ควรเลือกใช้ GCM แทน CBC สำหรับระบบใหม่เสมอ

การเข้ารหัสแบบกระแส

การเข้ารหัสแบบกระแส เข้ารหัสข้อมูลทีละบิตหรือไบต์ โดยใช้กระแสกุญแจสุ่มเทียมที่นำไปเอ็กซ์ออร์กับข้อความธรรมดา ตัวอย่างเช่น RC4 (ถูกทำลายความปลอดภัยแล้ว) และ ChaCha20 (ทันสมัยและใช้ใน TLS 1.3) การเข้ารหัสแบบกระแสมีประสิทธิภาพสำหรับข้อมูลที่มีความยาวแปรผันและสภาพแวดล้อมที่มีข้อจำกัดด้านฮาร์ดแวร์

ChaCha20-Poly1305

ChaCha20-Poly1305 เป็นรหัสลับ AEAD สมัยใหม่ที่ใช้ใน TLS 1.3 และ WireGuard โดย ChaCha20 เป็นรหัสลับแบบสตรีม ส่วน Poly1305 ทำหน้าที่สร้างแท็กยืนยันตัวตน รหัสลับนี้ทำงานได้ดีกว่า AES บนอุปกรณ์ที่ไม่มีการเร่งความเร็ว AES ด้วยฮาร์ดแวร์ เช่น อุปกรณ์เคลื่อนที่และอุปกรณ์ IoT

ปัญหาการกระจายกุญแจ

ทั้งสองฝ่ายต้องมีกุญแจเดียวกัน แต่จะแลกเปลี่ยนกุญแจกันอย่างปลอดภัยได้อย่างไร ตัวเลือกมีดังนี้:

  • กุญแจที่แชร์ไว้ล่วงหน้า (แลกเปลี่ยนทางกายภาพ)
  • การห่อหุ้มกุญแจด้วยการเข้ารหัสแบบอสมมาตร
  • การแลกเปลี่ยนกุญแจแบบ Diffie-Hellman ผ่านช่องทางที่ไม่น่าเชื่อถือ

ขนาดกุญแจ AES

AES-128 ให้ความปลอดภัยเพียงพอสำหรับการใช้งานส่วนใหญ่ ส่วน AES-256 ใช้กับข้อมูลลับสุดยอดและการพิจารณาด้านความปลอดภัยหลังยุคควอนตัม ภาระเพิ่มเติมของ AES-256 เมื่อเทียบกับ AES-128 มีน้อยมากเมื่อใช้การเร่งความเร็วด้วยฮาร์ดแวร์ (คำสั่ง CPU ของ AES-NI)

การเข้ารหัสแบบสมมาตรในทางปฏิบัติ

ตัวอย่างการใช้งานการเข้ารหัสแบบสมมาตร:

# Encrypt a file with AES-256-CBC using OpenSSL:
openssl enc -aes-256-cbc -pbkdf2 -in file.txt -out file.enc
# Decrypt:
openssl enc -d -aes-256-cbc -pbkdf2 -in file.enc -out file.txt

การเข้ารหัสดิสก์

การเข้ารหัสดิสก์ทั้งชุด (FDE) ใช้การเข้ารหัสแบบสมมาตรเพื่อปกป้องข้อมูลขณะจัดเก็บ:

  • BitLocker (วินโดวส์) — AES-XTS-128 หรือ 256
  • FileVault 2 (macOS) — AES-XTS-128
  • LUKS (ลินุกซ์) — กำหนดค่าได้ โดยทั่วไปคือ AES-XTS-256

อัลกอริทึมที่ไม่ปลอดภัยและควรหลีกเลี่ยง

อย่าใช้สิ่งเหล่านี้กับระบบใหม่:

  • DES — กุญแจขนาด 56 บิต ถูกทำลายความปลอดภัยตั้งแต่ปี 1999
  • 3DES — ช้าและเลิกใช้แล้วใน TLS
  • RC4 — รหัสลับแบบสตรีมที่มีจุดอ่อนหลายประการ
  • โหมด ECB — ทำให้รูปแบบของข้อมูลรั่วไหล (เพนกวิน ECB)

แบบทดสอบสั้น ๆ: การเข้ารหัสแบบสมมาตร

โหมดใดของ AES ที่ให้ทั้งการรักษาความลับและความถูกต้องครบถ้วน (การเข้ารหัสที่ยืนยันตัวตน) และเป็นที่นิยมใช้ในโพรโทคอลสมัยใหม่

สรุปบทเรียน

การเข้ารหัสแบบสมมาตรใช้กุญแจหนึ่งดอกสำหรับการเข้ารหัสและถอดรหัส AES เป็นมาตรฐาน โดยนิยมใช้โหมด GCM สำหรับการเข้ารหัสที่ยืนยันตัวตน ChaCha20-Poly1305 เป็นทางเลือกสมัยใหม่สำหรับอุปกรณ์ที่มีทรัพยากรจำกัด หลีกเลี่ยง DES, 3DES, RC4 และโหมด ECB การกระจายกุญแจต้องใช้การเข้ารหัสแบบอสมมาตรหรือ Diffie-Hellman

เริ่มต้นได้ฟรี

เรียนรู้ Cyber Security Academy ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
76
บทเรียน
303

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

บทเรียน “การเข้ารหัสแบบสมมาตร: AES และการเข้ารหัสแบบสตรีม” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การเข้ารหัสแบบสมมาตร: AES และการเข้ารหัสแบบสตรีม”

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

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

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

บทเรียน “การเข้ารหัสแบบสมมาตร: AES และการเข้ารหัสแบบสตรีม” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การเข้ารหัสแบบสมมาตร: AES และการเข้ารหัสแบบสตรีม
  2. การเข้ารหัสแบบไม่สมมาตร: RSA และเส้นโค้งวงรี
  3. ฟังก์ชันแฮช: SHA-256 และอื่น ๆ
  4. ลายเซ็นดิจิทัลและใบรับรอง
← กลับไปที่ Cyber Security Academy