Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

Cryptanalysis ในความปลอดภัยข้อมูลคืออะไร?

Cryptanalysis (การวิเคราะห์รหัสลับ)

Cryptanalysis เป็นการถอดรหัสและการสอบสวนโค้ด ไซเฟอร์ หรือข้อความที่เข้ารหัส Cryptanalysis ใช้กฎเชิงตัวเลขเพื่อค้นหาความอ่อนแอของอัลกอริทึม และแบ่งเข้าไปในระบบ Cryptography หรือความปลอดภัยข้อมูล

วัตถุประสงค์หลักของ Cryptanalysis คือการค้นพบจุดอ่อนในหรือวิธีเอาชนะอัลกอริทึมการเข้ารหัส การวิจัยนี้สามารถใช้โดยนักเข้ารหัสลับ (Cryptographers) เพื่อปรับปรุงและเสริมสร้าง หรือฟื้นฟูอัลกอริทึมที่มีข้อบกพร่องอย่างไม่สามารถแก้ไขได้

ประเภทการโจมตีนี้ใช้ลักษณะของอัลกอริทึมเพื่อได้ Plaintext หรือคีย์ที่ใช้จากข้อความที่เข้ารหัส

Cryptanalysis โดยทั่วไปต้องการการตรวจสอบโดยตรงของ Cryptosystem ที่มีอยู่ บ่อยครั้งเป็นความพยายามทางคณิตศาสตร์ขั้นสูงที่มุ่งเน้นการถอดรหัสโดยใช้ข้อมูลที่รู้จักเกี่ยวกับการออกแบบการเข้ารหัส

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

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

มีประเภทของการโจมตี Cryptanalysis ดังนี้:

  • Ciphertext-only attacks (โจมตีเฉพาะ Ciphertext) - โจมตีนี้ โจมตีมีเข้าถึงได้เฉพาะ Ciphertext บางส่วน พยายามค้นหาคีย์และ Plaintext ที่สอดคล้อง สมมติว่าโจมตีรู้จักอัลกอริทึมและสามารถดักจับ Ciphertext ได้
  • Known-plaintext attack (โจมตี Plaintext ที่รู้จัก) - ในโจมตีนี้ นักวิเคราะห์รหัสลับรู้จักคู่ Plaintext บางคู่ที่รวบรวมไว้ก่อนหน้านี้ นอกจากนี้ Ciphertext ที่ถูกดักจับที่ต้องการแยก
  • Chosen-plaintext attack (โจมตี Plaintext ที่เลือก) - คล้ายกับ Known-plaintext attack แต่คู่ Plaintext ถูกเลือกโดยโจมตีเอง ประเภทโจมตีนี้ง่ายกว่าที่จะดำเนินการ แต่ไม่น่าจะเกิดขึ้นมาก
  • Brute force attack (โจมตีแบบ Brute force) - ประเภทโจมตีนี้ต้องการอัลกอริทึมที่พยายามเดาชุดที่เป็นไปได้ของ Plaintext ซึ่งจากนั้นถูกเข้ารหัสและเปรียบเทียบกับ Ciphertext ต้นฉบับ
  • Chosen-ciphertext attack (โจมตี Ciphertext ที่เลือก) - โจมตี Chosen-ciphertext คล้ายกับ Chosen plaintext ในนี้ โจมตีเลือก Ciphertext บางส่วนและถอดรหัสเพื่อพัฒนา Ciphertext โจมตีนี้ใช้ได้หากโจมตีมีเข้าถึงคอมพิวเตอร์ของผู้รับ
  • Dictionary attack (โจมตีแบบ Dictionary) - ประเภทโจมตีนี้ต้องการ Wordlist เพื่อหาคู่ที่ตรงกับ Plaintext หรือคีย์ มักใช้เมื่อพยายามแยกรหัสผ่านที่เข้ารหัส
  • Rainbow table attack (โจมตีแบบ Rainbow table) - ประเภทโจมตีนี้เปรียบเทียบ Ciphertext กับ Precomputed hashes เพื่อหาคู่ที่ตรงกัน
  • Man-in-the-Middle (MITM) Attack (โจมตีคนกลาง) - โจมตีเกิดขึ้นเมื่อสองฝ่ายใช้ข้อความหรือการแชร์คีย์สำหรับการสื่อสารผ่านช่องทางที่ดูปลอดภheiros แต่จริงๆ แล้วถูกโจมตี โจมตีใช้โจมตีนี้สำหรับการบล็อกข้อความที่ผ่านช่องทางสื่อสาร ฟังก์ชันแฮชป้องกันโจมตี MITM
  • Adaptive Chosen-Plaintext Attack (ACPA) - คล้ายกับ CPA โจมตีนี้ใช้ Plaintext และ Ciphertext ที่เลือก ตามข้อมูลที่เรียนรู้จากการเข้ารหัสในอดีต