13 คะแนน โดย kciter1 2024-04-16 | 4 ความคิดเห็น | แชร์ทาง WhatsApp
  • ทุกวันนี้ผู้คนจำนวนมากใช้ฟีเจอร์ที่มีมาในตัวของ OS หรือเบราว์เซอร์ เพราะระบบจัดการรหัสผ่านใช้งานสะดวก
  • แต่ก็อาจเกิดคำถามขึ้นมาว่าปลอดภัยจริงหรือ?
  • นิยามของการเข้ารหัส
    • เป้าหมายของวิทยาการเข้ารหัสคือการปกป้องโปรโตคอลจากฝ่ายที่ไม่เป็นมิตร
    • กระบวนการส่งต่อข้อมูล (หมายถึงข้อความต้นฉบับ) โดยใช้อัลกอริทึม เพื่อไม่ให้ใครก็ตามสามารถอ่านได้ ยกเว้นผู้ที่มีความรู้เฉพาะ
  • อัลกอริทึมเปิดเผยทั้งหมดแล้ว ยังปลอดภัยอยู่หรือไม่?
    • มีหลักการที่เรียกว่า Kerckhoffs's principle
    • “ระบบเข้ารหัสไม่ควรจำเป็นต้องปกปิดเป็นความลับ และไม่ควรมีปัญหาแม้ตกไปอยู่ในมือศัตรู”
    • เหตุผลที่ยังปลอดภัยแม้อัลกอริทึมถูกเปิดเผยก็เพราะมีคีย์ลับ
    • สิ่งสำคัญคือการทำให้โปรโตคอลปลอดภัย ไม่ใช่อัลกอริทึม
    • ที่จริงแล้วการเปิดเผยอัลกอริทึมกลับดีกว่า เพื่อให้ผู้คนจำนวนมากช่วยตรวจสอบและปรับปรุงได้
  • ทำไมรหัสลับแบบดั้งเดิมจึงอันตราย?
    • ก่อนคอมพิวเตอร์จะถือว่าซับซ้อนและใช้งานได้ดีพอ แต่เมื่อคอมพิวเตอร์ปรากฏขึ้นก็สามารถถอดรหัสได้ในเวลาอันรวดเร็ว
    • มีเทคนิคการโจมตีหลายแบบ เช่น brute force และ frequency analysis
  • การเข้ารหัสสมัยใหม่ปลอดภัยหรือไม่?
    • รหัสลับแบบดั้งเดิมมี key space ไม่เพียงพอ และมีลักษณะทางภาษาปะปนอยู่ จึงมีความเสี่ยง
    • ในทางกลับกัน การเข้ารหัสสมัยใหม่ใช้แนวคิดเรื่อง confusion และ diffusion เพื่อสร้างจำนวนความเป็นไปได้มหาศาล -> ทำให้ถอดรหัสไม่ได้ นอกจากการลองคีย์ทั้งหมดแบบบังเอิญ
    • confusion (Substitution) หมายถึงการแทนที่สตริงอย่าง 'ABCA' ให้เป็น '1231'
    • diffusion (Permutation) หมายถึงการสลับลำดับของสตริงอย่าง 'ABCA' ให้เป็น 'BCAA'
  • วิธีการเข้ารหัส 3 แบบ
    • มีทั้งการเข้ารหัสแบบสมมาตร, แบบอสมมาตร และแบบทางเดียว
    • การเข้ารหัสแบบสมมาตรคืออัลกอริทึมที่ใช้คีย์ลับเพียงตัวเดียว (หรือ symmetric key) ทั้งในการเข้ารหัสและถอดรหัส
      • ตัวอย่างที่เด่นคือ AES
    • การเข้ารหัสแบบอสมมาตรคืออัลกอริทึมที่ใช้คีย์สองตัวในการเข้ารหัสและถอดรหัส
      • ตัวอย่างที่เด่นคือ RSA
      • การเข้ารหัสแบบสมมาตรจะมีปัญหาเมื่อมีผู้เข้าร่วมจำนวนมาก
    • การเข้ารหัสแบบทางเดียวคือการแปลงข้อมูลความยาวใดก็ได้ให้เป็นข้อมูลที่มีความยาวคงที่
      • ตัวอย่างที่เด่นคือ SHA
      • ใช้สำหรับตรวจสอบความถูกต้องสมบูรณ์ของข้อมูล
  • การสร้างตู้นิรภัยความลับส่วนตัว
    • มาสเตอร์พาสเวิร์ดคือคีย์ลับที่ใช้ยืนยันความเป็นเจ้าของระบบจัดการรหัสผ่าน
    • ห้ามเก็บค่าแฮชของมาสเตอร์พาสเวิร์ดเด็ดขาด เพราะอาจถูกโจมตีแบบ Pass-the-Hash ได้
    • หากเพิ่มคีย์สุ่มที่ผูกกับอุปกรณ์ของผู้ใช้เพื่อสร้าง master unlock key ก็จะเก็บรหัสผ่านได้ปลอดภัยยิ่งขึ้น
    • สำหรับ Mac สามารถใช้ Keychain ส่วน Windows สามารถใช้ Credential Manager
  • ดูการนำไปใช้จริงได้จากลิงก์

4 ความคิดเห็น

 
yinn27 2024-04-17

Android ไม่มีอะไรคล้าย keychain เหรอครับ..? Samsung Wallet ของ Galaxy ก็อันตรายเหมือนกันไหม?

 
kciter1 2024-04-18

สวัสดีครับ :) เท่าที่ทราบน่าจะมีสิ่งที่เรียกว่า Secret Manager อยู่ ส่วน Samsung Wallet ผมไม่ค่อยทราบนัก แต่ก็น่าจะถูกสร้างมาให้ปลอดภัยอย่างดีไม่ใช่หรือครับ?

 
dmut7691 2024-04-17

เขียนไว้ว่า ความสับสน (substitution), การกระจาย (permutation) เลยทำให้งงว่าอะไร จึงไปดูต้นฉบับมา แต่

ในนั้นเขียนไว้ว่าความสับสนทำได้โดยใช้การแทนที่ (substitution) และการกระจายทำได้โดยใช้การเรียงสับเปลี่ยน (permutation) นั่นเอง...

 
kciter1 2024-04-17

สรุปสั้นเกินไปเลย ขอโทษครับ ^^;;