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

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

Steganography (การซ่อนข้อมูล)

Steganography เป็นแนวทางที่อำนวยความสะดวกในการซ่อนข้อความที่ต้องการเก็บความลับ ไว้ภายในข้อความอื่น ผลลัพธ์คือการปิดบังข้อความลับเอง

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

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

เป้าหมายหลักของ Steganography คือการสื่อสารอย่างปลอดภัยในลักษณะที่แยกแยะไม่ได้เลย และป้องกันไม่ให้ดึงดูดความสงสัยต่อการส่งข้อมูลที่ซ่อนอยู่

ไม่ได้เป็นการป้องกันไม่ให้ผู้อื่นเข้าใจข้อมูลที่ซ่อนอยู่ แต่เป็นการป้องกันไม่ให้ผู้อื่นคิดว่าข้อมูลนั้นมีอยู่จริง หากวิธี Steganography ทำให้ใครสงสัยช่องทาง Carrier วิธีนั้นจึงล้มเหลว

โมเดลพื้นฐานของ Steganography ประกอบด้วย Carrier, Message และ Password Carrier เรียกอีกอย่างว่า Cover-object ซึ่งข้อความถูกติดตั้งและทำหน้าที่ซ่อนการมีอยู่ของข้อความ

Message คือข้อมูลที่ผู้ส่งต้องการให้เป็นความลับ สามารถเป็น Plain text, Ciphertext, ภาพอื่น หรืออะไรก็ตามที่สามารถติดตั้งใน Bit stream ได้ รวมถึงเครื่องหมายลิขสิทธิ์ การสื่อสารลับ หรือหมายเลขซีเรียล

Password เรียกว่า Stego-key สามารถรับรองว่าผู้รับที่เข้าใจคีย์ถอดรหัสที่สอดคล้อง จะสามารถแยกที่อยู่จาก Cover-object ได้ Cover-object ที่มีข้อความที่ติดตั้งลับ จึงเรียกว่า Stego-object

การกู้คืนที่อยู่จาก Stego-object ต้องการ Cover-object เอง และคีย์ถอดรหัสที่สอดคล้อง หาก Stego-key ถูกใช้ในช่วงการเข้ารหัส ภาพต้นฉบับอาจหรืออาจไม่จำเป็นในแอปพลิเคชันส่วนใหญ่ในการแยกข้อความ

มี Carrier ที่เหมาะสมหลายอย่าง ดังนี้:

  • Network Protocols เช่น TCP, IP และ UDP
  • Audio ที่ใช้รูปแบบเสียงดิจิทัล รวมถึง wav, midi, avi, mpeg, mpi และ voc
  • File and Disk ที่สามารถซ่อนและผนวกเอกสารโดยใช้ Slack space
  • Text รวมถึง Null characters, เฉพาะ Morse code แบบคล้ายกัน เช่น html และ java
  • Image files รวมถึง bmp, gif และ jpg ซึ่งสามารถเป็นทั้งสีและ Grayscale

โดยทั่วไป กระบวนการซ่อนข้อมูลแยกบิตซ้ำ (Redundant bits) จาก Cover-object กระบวนการรวม 2 ขั้นตอน ดังนี้:

  • การรู้จำบิตซ้ำใน Cover-object - บิตซ้ำคือบิตที่สามารถเปลี่ยนแปลงได้โดยไม่ทำลายคุณสมบัติหรือหลักการของ Cover-object
  • กระบวนการฝัง (Embedding procedure) - เลือกซับเซตของบิตซ้ำเพื่อแทนที่ด้วยข้อมูลจากข้อความลับ Stego-object ถูกสร้างโดยการแทนที่บิตซ้ำที่เลือกด้วยบิตข้อความ