วิทยาการอำพรางข้อมูล (Steganography)

” วิทยาการอำพรางข้อมูล (Steganography)ได้ถูกนำมาใช้เป็นเครื่องมือรับส่งข้อความลับของกลุ่มผู้ก่อการร้าย โดยหนังสือพิมพ์ New York Times ได้ตีพิมพ์บทความหนึ่งที่กล่าวถึงกลุ่มผู้ก่อการร้ายอัลกออิดะห์ (al-Qaeda) ได้ใช้วิทยาการอำพรางข้อมูล (Steganography)เพื่อทำการเข้ารหัส (Encode) ข้อความลงในแฟ้มข้อมูลภาพและส่งอีเมล์ผ่านเครือข่าย USENET เพื่อเตรียมการและปฏิบัติการก่อการร้ายโจมตีเมื่อวันที่ 11 เดือนกันยายน ”

 

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

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

 

สำหรับในข้อมูล Digital นั้นผมจะนำเสนอเฉพาะการซ่อนข้อมูลลับไปกับรูปภาพโดยแบ่งออกเป็นสองประเภท

1.)LSB(Least Significant Bits) วิธีนี้จะใช้วิธีการเปลี่ยน Bit สุดท้าย(ค่าสีที่มีนัยน้อยสุด)ของสีเพื่อใช้เก็บข้อมูลลับ โดยทั่วไปในไฟล์ภาพประเภทที่ไม่ถูกการบีบอัดเช่น BMP,PNG จะใช้ 3 Byte ในการระบุสี 1 Pixel โดย 3 Byte นั้นคือ R,G,B อย่างละ Byte

จะเห็นว่าถ้าเราจะซ้อนข้อความที่เป็น ASCII นั้นต้องใช้เกือบ 3 Pixel ในการเก็บอักษรหนึ่งตัว(1 ASCII = 8 Bit)

 

รูปประกอบจาก http://blog.pupasoft.com/2009/11/09/aeronzsteganography/

 

ซึ่งวิธีนี้จะทำให้สีของภาพเปลี่ยนแปลงแต่ไม่สามารถสังเกตุได้ด้วยตาปล่าวและยังไม่ทำให้ขนาดไฟล์เปลี่ยนแปลงแต่อย่างใด

 

2.)ซ่อนข้อมูลไว้นอก Pixel ของรูป สำหรับวิธีนี้มักจะถูกใช้กับกรณีรูปภาพที่ผ่านการบีบอัด(Compression) มาแล้วเช่น jpeg, gif เพราะว่าภาพที่ถูกบีบอัด(Compression) นี้จะไม่สามารถใช้เทคนิค LSB(Least Significant Bits) เนื่องจากการ Compression คา pixels ของภาพที่แสดงจะมีคาไมตรงกับภาพตนฉบับเสียทีเดียวนั้นข้อแตกต่างก็คือเทคนิคนี้จะได้ภาพเหมือนต้นฉบับทุกประการแต่ขนาดไฟล์จะต่างไปจากเดิม

 

ทั้งนี้การที่เราจะตรวจสอบว่ารูปหรือสิ่งใดๆเป็นของจริงที่ยังไม่ถูกแก้ไขนั้น(ข้อมูล Digital)เราสามารถใช้ Hash เช่น MD5sum,Sha1sum เข้ามาช่วยในการตรวจสอบดังเช่น ในเทคนิค LSB(Least Significant Bits) จะเห็นว่าสีเปลี่ยนแปลงน้อยจนมองไม่ออกด้วยตาปล่าวและขนาดไฟล์ก็ไม่เปลี่ยนแปลงแต่ Hash ไม่เหมือนเดิมแน่นอน 😀 (ทั้งนี้ยังมีเทคนิคขั้นสูงในการสร้าง hash ให้เหมือนต้นฉบับได้เราอาจจะใช้ Hash สองชั้นในการยืนยันเช่น Sha1 + MD5)

 

 

 

เฉลย

สำหรับโจทย์ที่ผมได้ให้ไปหารหัสลับจากรูป Monalisa นี้

 

 

error@ERROR:~/key$ wget http://std.kku.ac.th/5230405096/avinci.jpg

–2011-04-27 11:27:44–  http://std.kku.ac.th/5230405096/avinci.jpg

Resolving std.kku.ac.th… 202.12.97.31

Connecting to std.kku.ac.th|202.12.97.31|:80… connected.

HTTP request sent, awaiting response… 200 OK

Length: 37234 (36K) [image/jpeg]

Saving to: avinci.jpg'

 

100%[==========================================================================================================================================>] 37,234      --.-K/s   in 0.02s   

 

2011-04-27 11:27:44 (2.05 MB/s) - avinci.jpg’ saved [37234/37234]

 

error@ERROR:~/key$ outguess -k “davinci” -r avinci.jpg davinci.txt

Reading avinci.jpg….

Extracting usable bits:   38481 bits

Steg retrieve: seed: 145, len: 41

error@ERROR:~/key$ cat davinci.txt 

password : http://mayaseven.blogspot.com

,
Previous Post
วิธีเข้ารหัส ถอดรหัส สามารถเอาไปประยุกต์ใช้ช่วยจำ Passwords ได้ด้วย
Next Post
Hack Linux Server with Backtrack 5

Related Posts

No results found.

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Menu