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

การเข้ารหัสรูปแบบเทียบกับการเข้ารหัสลับ

Base64 เลขฐานสิบหก และรหัสลับ

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

เป้าหมายสองอย่างที่แตกต่างกัน

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

  • การเข้ารหัสรูปแบบ เปลี่ยน รูปแบบ ของข้อมูลเพื่อให้จัดเก็บหรือส่งผ่านได้อย่างปลอดภัย
  • การเข้ารหัสลับ ปกป้อง ความลับของข้อมูล เพื่อให้เฉพาะผู้ที่มีคีย์เท่านั้นที่อ่านได้

การสับสนระหว่างสองสิ่งนี้เป็นหนึ่งในข้อผิดพลาดที่พบบ่อยที่สุดของผู้เริ่มต้นด้านความปลอดภัย

ทุกคนย้อนกลับการเข้ารหัสรูปแบบได้

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

รูปแบบทั่วไปได้แก่ Base64, hex, URL encoding และ ASCII รูปแบบเหล่านี้มีไว้เพื่อให้ข้อมูลไบนารีส่งผ่านช่องทางที่รองรับเฉพาะข้อความ เช่น อีเมลหรือส่วนหัว HTTP ได้

Base64 ในทางปฏิบัติ

Base64 แทนข้อมูลไบนารีด้วยอักขระที่พิมพ์ได้ 64 ตัว (A-Z, a-z, 0-9, + และ /) ทำให้ข้อมูลมีขนาดเพิ่มขึ้นประมาณ 33 เปอร์เซ็นต์ เครื่องหมาย = ที่อยู่ท้ายคือการเติมเต็ม

คุณสามารถถอดรหัสบนเครื่อง Linux ใดก็ได้โดยไม่ต้องใช้คีย์เลย:

echo 'aGVsbG8gd29ybGQ=' | base64 -d
# Output: hello world

การสังเกต Base64

ในฐานะแฮกเกอร์ คุณจะพบ Base64 อยู่ทุกที่ ทั้งโทเค็น JWT คุกกี้ ไฟล์การกำหนดค่า และข้อมูลที่ถูกนำออกไป เบาะแสที่บ่งชี้ว่าข้อมูลก้อนหนึ่งเป็น Base64 ได้แก่:

  • มีเพียง A-Za-z0-9+/ และอาจมีการเติมเต็มด้วย =
  • ความยาวเป็นพหุคูณของ 4
  • ถอดออกมาเป็นข้อความที่อ่านได้หรือส่วนหัวไฟล์ที่สังเกตได้

ลองถอดรหัสสตริงที่น่าสงสัยก่อนเสมอ อย่าเพิ่งสรุปว่าเป็นข้อมูลที่เข้ารหัสลับ

การเข้ารหัสแบบเลขฐานสิบหก

การเข้ารหัสแบบ เลขฐานสิบหก แทนแต่ละไบต์ด้วยอักขระสองตัว (0-9, a-f) มีการใช้งานอย่างแพร่หลายในข้อมูลดักจับเครือข่าย ข้อมูลดัมป์หน่วยความจำ และผลลัพธ์ค่าแฮช

ค่าไบต์ 0x68 0x69 สะกดเป็นข้อความ ASCII ว่า 'hi'

echo -n 'hi' | xxd -p
# Output: 6869

echo '6869' | xxd -r -p
# Output: hi

สิ่งที่การเข้ารหัสลับเพิ่มเข้ามา: คีย์

การเข้ารหัสลับใช้อัลกอริทึม รหัสลับ ร่วมกับ คีย์ลับ หากไม่มีคีย์ ผลลัพธ์ (ข้อความเข้ารหัสลับ) จะย้อนกลับได้ยากเกินกว่าจะคำนวณได้ในทางปฏิบัติ

  • ข้อความต้นฉบับ = ข้อมูลเดิมที่อ่านได้
  • ข้อความเข้ารหัสลับ = ผลลัพธ์ที่ผ่านการเข้ารหัสลับ
  • คีย์ = ความลับที่ควบคุมการเข้ารหัสลับและการถอดรหัส

เมื่อเปลี่ยนคีย์ ข้อความเข้ารหัสลับก็จะเปลี่ยนไปโดยสิ้นเชิง

รหัสลับคลาสสิก: ซีซาร์

รหัสลับซีซาร์ เลื่อนตัวอักษรแต่ละตัวตามจำนวนคงที่ หากเลื่อน 3 ตำแหน่ง A จะกลายเป็น D นี่เป็นเพียงตัวอย่างเพื่อการสอน เพราะมีคีย์ที่เป็นไปได้เพียง 25 แบบ จึงถูกทำลายได้ง่ายมากด้วยการลองครบทุกแบบ

ROT13 คือรหัสลับซีซาร์ที่เลื่อน 13 ตำแหน่ง ในทางเทคนิคถือเป็นรหัสลับ แต่ไม่มี ความปลอดภัยจริงเลย

echo 'hello' | tr 'a-z' 'd-za-c'
# Output: khoor  (shift of 3)

รหัสลับสมัยใหม่

การเข้ารหัสลับจริงใช้อัลกอริทึมอย่าง AES (สมมาตร) และ RSA (ไม่สมมาตร) โดยอาศัยคีย์ขนาดใหญ่และปัญหาทางคณิตศาสตร์ที่แก้ได้ยาก แทนการปกปิดอัลกอริทึม

หลักการของเคิร์กฮอฟส์: ระบบเข้ารหัสลับควรปลอดภัยแม้ทุกอย่างเกี่ยวกับระบบ ยกเว้นคีย์ จะเปิดเผยต่อสาธารณะ ความปลอดภัยมาจาก คีย์ ไม่ใช่จากการซ่อนอัลกอริทึม

การเข้ารหัสลับดูเหมือนสุ่ม

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

  • Base64 ของ 'hello' จะเป็น aGVsbG8= เสมอสำหรับทุกคน
  • AES ของ 'hello' จะเปลี่ยนไปตามคีย์และเวกเตอร์เริ่มต้น ทำให้ได้ผลลัพธ์ต่างกันในแต่ละครั้ง

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

เหตุใดเรื่องนี้จึงสำคัญต่อแฮกเกอร์

ระหว่างการประเมิน คุณจะพบข้อมูลที่ถูกทำให้อ่านได้ยากอยู่เสมอ การถามว่า “นี่คือการเข้ารหัสรูปแบบหรือการเข้ารหัสลับ” จะช่วยชี้แนวทางถัดไป:

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

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

การทำให้คลุมเครือเป็นสิ่งที่สาม

โปรดระวังหมวดหมู่ที่สาม: การทำให้คลุมเครือ คือการจงใจทำให้ข้อมูลอ่านได้ยาก (เช่น JS ที่ลดรูป ไบนารีที่แพ็ก หรือ XOR ด้วยไบต์คงที่) โดยไม่มีรหัสลับหรือการจัดการคีย์จริง

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

ตรวจสอบอย่างรวดเร็ว

ทดสอบความเข้าใจของคุณเกี่ยวกับความแตกต่างหลัก

สรุปทบทวน

คุณได้เรียนรู้ความแตกต่างสำคัญระหว่างการเข้ารหัสรูปแบบและการเข้ารหัสลับ:

  • การเข้ารหัสรูปแบบ (Base64, hex) ทุกคนสามารถย้อนกลับได้ และเปลี่ยนเพียงรูปแบบเท่านั้น
  • การเข้ารหัสลับ (AES, RSA) ต้องใช้คีย์ลับและปกป้องความลับของข้อมูล
  • การทำให้คลุมเครือ ช่วยซ่อนข้อมูลแต่ไม่ได้รักษาความปลอดภัย
  • ถอดสตริงที่น่าสงสัยก่อนเสมอ ข้อความเข้ารหัสลับดูเหมือนสัญญาณรบกวนแบบสุ่ม ขณะที่ข้อมูลที่เข้ารหัสรูปแบบจะถอดออกมาเป็นเนื้อหาที่อ่านได้โดยไม่ต้องใช้คีย์

ถัดไป คุณจะลงลึกเรื่อง การทำแฮช ซึ่งเป็นการแปลงทางเดียวที่แตกต่างจากทั้งสองอย่าง

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

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

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

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

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

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

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

บทเรียน “การเข้ารหัสรูปแบบเทียบกับการเข้ารหัสลับ” ใช้เวลานานแค่ไหน

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

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

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

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

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