เล่นเป็นสายลับผ่านเทคโนโลยีอำพรางข้อมูล Steganography

Print Friendly

Image Steganography

 

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

บางคนอาจจะคุ้นๆ กับคำว่า Steganography จากคำว่า Steganographer ครับ ซึ่งอันนั้นจะแปลว่า คนจดชวเลข ที่เขาจะมีตัวอักษรพิเศษ ยึกยือๆ ที่ใช้แทนตัวอักษรหรือข้อความในภาษาปกติอะ ซึ่งคนที่ไม่ได้เรียนด้านนี้มาก็จะอ่านกันไม่ออก

แต่เทคนิค Steganography นี่มันจะเหมือนกับการอำพรางข้อมูลลับ (Secret message) โดยอาศัยข้อมูลอื่นที่เรียกว่า Carrier ซึ่งหากไม่มีเครื่องมือพิเศษหรือความรู้ในการถอดรหัสข้อมูล คนทั่วไปก็จะเห็นแค่ข้อมูลที่เป็น Carrier ครับ ซึ่งในคอมพิวเตอร์เองนั้น Carrier มีได้ทั้งในรูปของภาพนิ่ง วิดีโอ ไฟล์เสียง หรือแม้แต่ไฟล์ข้อความ

 

ซ่อนไฟล์ไว้ในไฟล์ ทำได้ไง?

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

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

เช่นในกรณีของไฟล์รูปภาพ มันจะมีส่วนที่เรียกว่า Least Significant Bit (LSB) อยู่ในแต่ละสี เพราะแต่ละสี จะประกอบไปด้วยข้อมูลที่บอกสีว่าเป็นสีอะไรระหว่าง แดง เขียว และ น้ำเงิน (RGB) ซึ่งด้วยเครื่องมือพิเศษ เราจะสามารถซ่อนข้อมูลขนาด 1 บิตไว้ในแต่ละสีได้ หรือพูดง่ายๆ แต่ละพิกเซลของรูป เราจะสามารถซ่อนข้อมูลได้ 3 บิตครับ ถ้าคิดแบบนี้แล้ว รูปภาพขนาด 1 ล้านพิกเซล เราจะซ่อนข้อมูลได้ 3 ล้านบิต หรือ 375KB เลยทีเดียว ซึ่งมากพอสำหรับไฟล์ Microsoft Word ขนาดย่อมๆ ล่ะ

ในกรณีของไฟล์ MP3 ก็จะมีส่วนที่เรียกว่า Inner loop อยู่ ซึ่งเอาไว้ใช้ซ่อนข้อมูลลับได้ โดยไฟล์ MP3 แต่ละไฟล์ จะสามารถเก็บซ่อนข้อมูลไว้ได้มากน้อยแตกต่างกันออกไปครับ ซึ่งหากไม่ต้องการให้ไฟล์ Carrier เกิดการผิดเพี้ยน ก็ต้องระวังอย่าใส่ไฟล์ลับที่มีขนาดใหญ่เกินเข้าไป

 

ลองเล่นขำๆ กับ Steganography

ลองเล่นขำๆ ได้ครับ กับการอำพรางข้อมูลไปกับไฟล์ มีโปรแกรมฟรีให้เลือกดาวน์โหลดเยอะแยะ ลองไปค้น Google ด้วยคำว่า Steganography free software ก็ได้ครับ อย่างผมก็ลองง่ายๆ กับโปรแกรม Image Steganography ดาวน์โหลดฟรี และใช้อำพรางข้อมูลไปกับภาพถ่ายครับ … ลองเล่นแบบขำๆ นะครับ

 

ไฟล์รูปต้นฉบับ ขนาด 9MB กว่าๆ

 

ผมก็เอาไฟล์รูปภาพตอนไปงาน CES 2016 ที่ลาสเวกัสมาใช้ครับ แต่รูปเป็น JPEG ก็เลยแปลงเป็น PNG ก่อน เพราะไฟล์จะได้ใหญ่ๆ มีที่ให้แอบแทรกข้อมูลเยอะๆ (หุหุ) จะเห็นว่าต้นฉบับมีขนาดไฟล์อยู่ที่ 9.84MB ครับ

 

ใช้โปรแกรม Image Steganography ฝังไฟล์

 

ทีนี้ก็เอาไฟล์ที่อยากซ่อนมาใส่ครับ ก็เป็นไฟล์ Digital citizenship ที่ผมเคยใช้ในการเขียนบล็อก ขนาดไม่กี่ร้อย KB มาแอบใส่เข้าไป หรือจริงๆ จะใส่ข้อความไปเฉยๆ ก็ได้ แล้วก็ฝังโลด

 

ไฟล์รูปหลังแทรกไฟล์อีกไฟล์เข้าไปแล้ว มีขนาดใหญ่ขึ้นนิดหน่อย

 

ฝังไฟล์เสร็จ ขนาดไฟล์เพิ่มมาเป็น 10.48MB จะเห็นว่าขนาดไฟล์เพิ่มมานิดหน่อย คือประมาณ 600KB นั่นคือ ไฟล์ที่ผมอยากซ่อน มันแอบฝังไว้อยู่ตามหลืบของพิกเซลต่างๆ บนรูปแล้ว แต่ถ้าเกิดใครมาดูรูป ก็จะไม่เห็นอะไรผิดสังเกตครับ … ทีนี้เวลาเราอยากเปิดรูปที่ซ่อนอยู่ ก็แค่เอาโปรแกรม Image Steganography ไปถอดรหัส เราก็จะได้ไฟล์ทั้งต้นฉบับ และไฟล์ที่แอบซ่อนอยู่ออกมาครับผม

 

ซ่อนให้เนียนกว่าเดิม

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

 

ก็เขียนมาให้อ่านๆ กันครับ ว่ามีอะไรประเภทนี้อยู่ด้วย เผื่อเอาไว้เล่นขำๆ กับลูกๆ หลานๆ ได้ครับ (ฮา)

@kafaak

ในอดีตเมื่อครั้งยังไม่ต๊อกต๋อย เคยเป็นผู้บริหารฝ่ายผลิตของโรงงานอุตสาหกรรม แต่ภายหลังเลือกงานที่ให้เวลากับชีวิต เพื่อมาอัพเดตเทรนด์เทคโนโลยีมากกว่า ปัจจุบันเป็นทั้งไอทีต๊อกต๋อยในสถานศึกษา เป็นบล็อกเกอร์ต๊อกต๋อยที่เขียนไปเรื่อยทั้งเรื่องเทคโนโลยี โซเชียลมีเดีย การตลาดดิจิตอล และจิตวิทยา เป็นที่ปรึกษาด้านการตลาดดิจิตอลให้กับธุรกิจ SMEs หลายแห่ง และเป็นวิทยากรรับเชิญด้านเทคโนโลยี การตลาดดิจิตอล และโซเชียลมีเดีย เป็นบางครา

Leave a Reply

%d bloggers like this: