0Pricing
Ethical Hacking Academy · บทเรียน

แบบสมมาตรและแบบอสมมาตร

AES และ RSA

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

การเข้ารหัสสองตระกูล

การเข้ารหัสสมัยใหม่แบ่งออกเป็นสองตระกูลตามวิธีการทำงานของกุญแจ:

  • แบบสมมาตร: ใช้กุญแจเดียวกันในการเข้ารหัสและถอดรหัส ตัวอย่างเช่น AES
  • แบบไม่สมมาตร: ใช้คู่กุญแจ โดยกุญแจหนึ่งใช้เข้ารหัส และอีกกุญแจหนึ่งใช้ถอดรหัส ตัวอย่างเช่น RSA

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

การเข้ารหัสแบบสมมาตร

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

  • ข้อดี: ทำงานเร็วมาก เหมาะสำหรับข้อมูลปริมาณมาก
  • ข้อเสีย: ต้องส่งต่อกุญแจอย่างปลอดภัยก่อน นี่คือปัญหาการแจกจ่ายกุญแจ

AES

AES (มาตรฐานการเข้ารหัสลับขั้นสูง) เป็นอัลกอริทึมเข้ารหัสแบบสมมาตรที่ใช้กันอย่างแพร่หลาย โดยเป็นการเข้ารหัสแบบบล็อกที่ทำงานกับบล็อกขนาด 128 บิต และรองรับกุญแจขนาด 128, 192 หรือ 256 บิต

AES ทำงานได้รวดเร็ว มีการเร่งความเร็วด้วยฮาร์ดแวร์บน CPU รุ่นใหม่ และถือว่าปลอดภัยเมื่อใช้อย่างถูกต้อง AES-256 เป็นตัวเลือกทั่วไปสำหรับความปลอดภัยระดับสูง

openssl enc -aes-256-cbc -salt -in secret.txt -out secret.enc
# Prompts for a password used to derive the key

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

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

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

เพนกวินใน ECB

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

นี่คือเหตุผลที่คุณควรระบุ ECB เป็นข้อค้นพบระหว่างการประเมินความปลอดภัย ตัวเข้ารหัสนั้นแข็งแกร่ง แต่โหมดเป็นจุดอ่อน

การเข้ารหัสแบบไม่สมมาตร

การเข้ารหัสแบบไม่สมมาตรใช้คู่กุญแจที่เชื่อมโยงกันทางคณิตศาสตร์:

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

วิธีนี้ช่วยแก้ปัญหาการแจกจ่ายกุญแจ เพราะคุณสามารถเผยแพร่กุญแจสาธารณะได้โดยไม่ทำให้ความปลอดภัยลดลง

RSA

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

ปัจจุบันกุญแจขนาด 2048 บิตเป็นขนาดที่ใช้กันทั่วไป ส่วนขนาด 3072 หรือ 4096 บิตให้ระดับเผื่อความปลอดภัยที่มากกว่า RSA ทำงานช้ากว่า AES จึงแทบไม่ใช้เข้ารหัสข้อมูลปริมาณมากโดยตรง

openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -pubout -out public.pem

การเข้ารหัสกับการลงลายมือชื่อ

คู่กุญแจแบบไม่สมมาตรทำหน้าที่สำคัญสองประการ:

  • การรักษาความลับ: เข้ารหัสด้วยกุญแจ สาธารณะ ของผู้รับ และมีเพียงกุญแจส่วนตัวของผู้รับเท่านั้นที่ใช้ถอดรหัสได้
  • การยืนยันแหล่งที่มา (การลงลายมือชื่อ): ลงลายมือชื่อด้วยกุญแจ ส่วนตัว ของคุณ ทุกคนสามารถตรวจสอบด้วยกุญแจสาธารณะของคุณ เพื่อยืนยันว่าข้อมูลมาจากคุณ

โปรดสังเกตว่าการใช้งานสองรูปแบบนี้ใช้กุญแจในบทบาทที่ตรงข้ามกัน

การเข้ารหัสแบบผสม

โพรโทคอลจริงอย่าง TLS จะใช้ทั้งสองแบบร่วมกัน ลำดับการทำงานมีดังนี้:

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

วิธีนี้ให้ความเร็วของการเข้ารหัสแบบสมมาตร พร้อมความสะดวกในการแจกจ่ายกุญแจแบบการเข้ารหัสไม่สมมาตร

การแลกเปลี่ยนกุญแจ: Diffie-Hellman

Diffie-Hellman ช่วยให้สองฝ่ายตกลงใช้ความลับร่วมกันผ่านช่องทางที่ไม่ปลอดภัยได้ โดยไม่ต้องส่งความลับนั้นออกไปโดยตรง วิธีนี้เป็นพื้นฐานของการแลกเปลี่ยนกุญแจใน TLS สมัยใหม่

รูปแบบที่ใช้เส้นโค้งวงรี (ECDH, ECDSA) ให้ความปลอดภัยระดับเดียวกับ RSA โดยใช้กุญแจที่มีขนาดเล็กกว่ามาก จึงทำงานได้เร็วกว่าและกลายเป็นตัวเลือกเริ่มต้นมากขึ้นเรื่อย ๆ

จุดอ่อนทั่วไปของวิทยาการเข้ารหัสลับ

อัลกอริทึมที่แข็งแกร่งก็ล้มเหลวได้หากใช้งานไม่ถูกต้อง โปรดระวังข้อค้นพบเหล่านี้:

  • โหมด ECB ที่ทำให้รูปแบบของข้อความต้นฉบับรั่วไหล
  • ค่า IV หรือค่าที่ใช้ครั้งเดียวซึ่งถูกนำกลับมาใช้ซ้ำหรือคาดเดาได้ใน CBC หรือ GCM
  • กุญแจที่ฝังตายตัวอยู่ในซอร์สโค้ดหรือไฟล์กำหนดค่า
  • กุญแจ RSA ขนาดเล็ก (512 หรือ 1024 บิต) ซึ่งสามารถแยกตัวประกอบได้
  • พฤติกรรมของช่องทางตรวจสอบการเติมข้อมูลที่เปิดเผยข้อความต้นฉบับทีละไบต์

โดยมากแล้วคณิตศาสตร์ไม่ได้มีปัญหา แต่การนำไปใช้งานต่างหากที่มักมีปัญหา

ตรวจสอบความเข้าใจอย่างรวดเร็ว

โปรดประยุกต์ความเข้าใจเกี่ยวกับกุญแจสาธารณะและกุญแจส่วนตัว

สรุปทบทวน

คุณได้เปรียบเทียบการเข้ารหัสสองตระกูลแล้ว:

  • แบบสมมาตร (AES): ใช้กุญแจร่วมกันหนึ่งดอก ทำงานเร็ว แต่แจกจ่ายกุญแจได้ยาก ควรใช้โหมด GCM และห้ามใช้ ECB
  • แบบไม่สมมาตร (RSA, ECC): ใช้คู่กุญแจสาธารณะและส่วนตัว ช่วยแก้ปัญหาการแจกจ่ายกุญแจ แต่ทำงานช้า
  • เข้ารหัสด้วยกุญแจ สาธารณะ ของผู้รับ และลงลายมือชื่อด้วยกุญแจ ส่วนตัว ของคุณ
  • ระบบ แบบผสมและ Diffie-Hellman รวมข้อดีของทั้งสองแบบไว้ใน TLS

ต่อไป: การระบุชนิดและถอดรหัสค่าแฮชในทางปฏิบัติ

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

บทเรียน “แบบสมมาตรและแบบอสมมาตร” ฟรีหรือไม่

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

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

AES และ RSA คุณปฏิบัติ Ethical Hacking Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

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

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

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

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

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

  1. การเข้ารหัสรูปแบบเทียบกับการเข้ารหัสลับ
  2. การแฮช
  3. แบบสมมาตรและแบบอสมมาตร
  4. การถอดรหัสแฮช
← กลับไปที่ Ethical Hacking Academy