Bloggang.com : weblog for you and your gang
[
Home]
[
Tech]
[
จิปาถะ]
[
Cactus]
Manager Online News
Group Blog
Cactus
Technology
จิปาถะ
Homework
3-1
3-2
<<
ตุลาคม 2551
>>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
15 ตุลาคม 2551
MD5
All Blogs
Epoch คืออะไร
สรุปการแสดงผลของ blog นี้ตลอดเวลา 5 ปีที่ผ่านมา
The new design of the iPhone 4
Google - Nexus One
อ่านเว็บข่าวITที่ไหนกันบ้าง
Google Wave
Escape sequence
มาดูการเปรียบเทียบความเร็วของ web browser กัน
รวม Windows Vista Tips
จอ LCD vs LED
iFrame ข่าวสารต่างๆ
รู้เรื่อง....นามสกุลไฟล์ต่างๆ
TCP/IP FLAG ต่างๆ
Alt Codes ★[star] ❤[heart] symbols ตัวอักษรพิเศษ ตัวอักษรน่ารักๆ ของ ALT CODE
รู้จัก IEEE 802.11 , Wi-Fi และ WiMAX
MD5
Driver Compaq Presario C791tu for Windows XP
10 อันดับภัยอินเทอร์เน็ตล่าสุดประจำปี พ.ศ. 2551 Top Ten Cyber Security Threats Year 2008
ไขข้อข้องใจ"กฎหมายไอที" รู้ไว้ห่างไกลคุก!
.:: คำสั่ง Unix ที่ใช้เป็นประจำ ::.
รวมคำสั่ง DOS เวลาซ่อมคอม
คืนชีพให้ Dead Pixel ในจอ LCD
"ความลับ" สำหรับคนทำเว็บ
เทคนิคเปลี่ยน mouse ธรรมดาให้เป็นSuper mouse
10 สุดยอดแห่งโลกเทคโนโลยีและวิทยาศาสตร์ ที่น่าจับตามองในปี 2551
FAT32 กับ NTFS มันต่างกันยังไงคับพี่
23 โปรแกรมลับใน Windows XP
ศัพท์อินเทอร์เน็ต และคอมพิวเตอร์ที่น่ารู้
ศัพท์คอมพิวเตอร์น่ารู้ สำหรับผู้เริ่มต้นใช้งานและระดับกลาง
บางเรื่องที่คุณอาจยังไม่รู้
Windows XP: ตามล่าไฟล์ .DLL
วิธีเสียบปลั๊ก Notebook ที่ถูกต้อง
10 วิธี ดูแลฮาร์ดดิสก์ของคุณให้มีสุขภาพดี
DOScommand
รวมคีย์บอร์ดชอร์ตคัทหมาย่าง (Keyboard shortcuts)
ลักษณะ การเข้าหัวสาย RJ-45 ใช้ต่ออุปกรณ์ Network Interface
แผ่น DVD แต่ละแบบต่างกันอย่างไรคะ
Security Road Map
เคล็ดลับน่ารู้ [MIX]
KB: หลักการเขียนโปรแกรมทั่วๆไป
ว่ากันด้วยเรื่องของ RAM ( มาทำความรู้จักมันหน่อยดีกว่า )
สุดยอด คลิ๊กขวา My Computer ให้เหนือชั้น
สาเหตุและวิธีแก้ ต่อเน็ตหรือเปิดหน้าเว็บแล้ว error
คำสั่งพื้นฐานที่ควรรู้ซึ่งใช้ได้ใน Command Prompt
Blue Screen of Death คัมภีร์แก้ปัญหาจอมรณะ (ภาค 2)
BLUE SCREEN OF DEATH !
20 สุดยอดวิะธีแก้ปีญหากวนใจชาว Windows โด้ๆๆ
เล็กๆน้อยๆ เรื่อง ชื่อและเลข IP
รวม Hot Keys A-Z สำหรับ MS Office
รู้ไหมว่า คอมพิวเตอร์ตั้งโต๊ะ กินไฟประมาณ 400-500 วัตต์
ความลับของ Google ที่คุณต้องรู้
เสนอ 100 วิธี Keyboard shortcuts ปุ่มลัดเพียบ
ความแตกต่างของ Virus, Worm, Spyware, Trojan, Malware
วิธีแก้เครื่องอืด 10 ประการ
รวมคำสั่งลัด แค่ Run ก็ทำงานได้ดั่งใจ
วิธีใช้ Google
ขอโทษที !! มือใหม่หัดเล่น(เครื่องเสียง)
TIP computer ทั่วไป
คีย์ลัดของ WIN XP
10 วิธีที่ทำให้เครื่องคอมฯเร็วขึ้น(98 , XPใช้ได้บางข้อ)
Win XP > วิธีทำให้เน็ต กระฉูด
MD5
ถ้าพูดถึงวิธีในการรักษาปลอดภัยของข้อมูล ไม่ให้โดนล้วงไปอ่านง่ายๆ หลายคนจะนึกถึงวิธีเข้ารหัส จะเข้ารหัสยังไงก็ได้ ให้มันอ่านไม่รู้เรื่องเข้าไว้ เพื่อให้คนที่ขโมยข้อมูลไปนั้น ไม่สามารถอ่านได้อย่างง่ายดาย
การเข้ารหัส มันก็มีอยู่สารพัดวิธี สุดแล้วแต่ใครจะคิดได้ ไม่ว่าจะเป็นวิธีที่โบราณสุดๆ อย่าง Ceasar Cipher ไปจนถึงวิธีที่กำลังนิยมในปัจุบันอย่าง Key-encryption
แต่ที่พูดถึงกันมากก็คือ MD5
Ronald Rivest คนคิด MD5 และหนึ่งในผู้ร่วมสร้าง RSA หน้าตาเป็นงี้แหละ
หลาย คนเข้าใจเกือบถูกว่า MD5 เป็นอัลกอริทึมการเข้ารหัสที่ดีวิธีหนึ่ง แต่ความจริงแล้ว มันไม่ใช่ทั้งหมดครับ โดยเนื้อแท้ของ MD5 นั้น มันไม่ใช่การเข้ารหัสข้อมูลเลยแม้แต่น้อย ดังนั้น การนำ MD5 มาใช้เพียงเพื่อหวังว่าจะช่วยปกป้องข้อมูลของเราได้นั้น คงจะไม่ได้แล้วล่ะครับ
ถ้าพูดตามทฤษฏีก็คือ
MD5 เป็น Hashing Algorithm ครับ ไม่ใช่ Encryption
Hashing Algorithm หรือ Hashing Function นั้น เป็นลักษณะของการนำข้อมูลมาเข้าฟังก์ชันซักตัวนึง เพื่อให้ได้ค่าออกมาอีกค่าหนึ่ง
......แล้ว Hashing Function มันเอาไปเข้ารหัสไม่ได้หรือ?? huh.gif
ก็ แล้วแต่จะนำไปประยุกต์ใช้ครับ แต่ใน MD5 จะใช้ Hashing Function ในการสร้าง Digest ขึ้นมา เจ้า Digest เนี่ย จะเป็นข้อมูลที่มีความยาวคงที่ 128 bits ไม่ว่าข้อมูลจะมหาศาลซักเท่าใดก็ตาม ซึ่ง Digest ก็จะได้มาจากผลลัพธ์ของการนำข้อมูลของเรา ไปเข้า Hashing Function นี่แหละครับ
บางคนหัวใส(ไม่ใช่หัวล้าน) เอา Digest ไปย้อนกลับเข้า MD5 อีกครั้งนึง...หมดสิทธิ์ครับ เพราะ MD5 เป็นฟังก์ชันในลักษณะของ One-way Function เอาคำตอบย้อนกลับทำวิธีเดิมในลักษณะตรงกันข้าม หรือย้อนกลับเข้า Input อีกรอบ ก็ไม่ได้ค่าเดิมครับ tongue.gif
ข้อมูล 1 ตัว เมื่อนำไปผ่าน MD5 จะได้ Digest ขึ้นมา 1 ตัว เช่น
Thaiflashdev จะมี Digest เป็น 9e1afdaa0bac2ace1c692d711af10b6c
และถ้าลองเปลี่ยนข้อมูลซักนิดนึง ให้เป็น Thaiflashdef ก็จะได้ Digest เป็น a405441b6ed5edafcef1062cac13da33
จาก ตัวอย่างนี้จะเห็นว่า แม้ข้อมูลเปลี่ยนไปเพียงนิดเดียว Digest ที่ได้จาก MD5 นั้น จะเปลี่ยนแปลงไปจากเดิมมากเลยทีเดียว ฉะนั้นถ้าจะหวังว่าเพิ่มข้อมูลไป 1 ตัวแล้วเพิ่มค่า Digest ขึ้นอีก 1 นี่หมดสิทธิคับ วิธีตื้นๆ นี้ใช้กับ MD5 ไม่ได้หรอกครับ แต่ด้วยความที่ MD5 มันเปิดเผยอัลกอริทึมนั้น เราสามารถหา Digest ได้โดย....เอ่อ ไม่บอกดีกว่าคับ (แค่นี้ก็ชี้โพรงแล้ว อิอิ)
เมื่อผู้ส่งมีข้อมูล และมี Digest ที่ได้จาก MD5 แล้วทำอะไรได้??
...ก็ส่งไปให้ผู้รับสิครับ จะเก็บไว้ทำไม ถามได้ เอ้อ dry.gif
คราว นี้พอผู้รับ รับข้อมูลมา ก็เอาข้อมูลที่ได้รับ(ไม่รวม Digest) ไปผ่าน MD5 เพื่อหา Digest อีกรอบ เสร็จแล้วก็เอา Digest ที่เพิ่งได้นี้ มาเทียบกับ Digest ที่ได้รับมาจากผู้ส่ง ถ้าตรงกัน แสดงว่าข้อมูลที่ได้รับถูกต้องครับ ไม่มีใครมาทะลึ่งแก้ไขใดๆ ทั้งสิ้น (หรือไม่มี error ระหว่างส่งข้อมูล ประมาณว่าบิต 0 กลายเป็นบิต 1) rolleyes.gif
จากลักษณะการรับส่ง ข้อมูลโดยมี MD5 มาช่วยรักษาความปลอดภัยนั้น จะเห็นว่า มันไม่ได้ปกปิดข้อมูลอะไรให้เราเลย MD5 เพียงแค่ช่วยในเรื่องของความถูกต้องของข้อมูลเท่านั้นเองครับ (Data Integrity)
เนื่องจากว่าในเรื่องของความปลอดภัยนั้น ต้องมีคุณสมบัติอยู่ 3 ตัวคือ
1. Secracy การปกปิดข้อมูล
2. Authentic การยืนยันตัวตนผู้ใช้ (การใช้พาสเวิร์ด เป็นเพียงแค่ Identifier ยังไม่ถึงขั้น Authentic นะครับ แต่ก็พอกล้อมแกล้มได้)
3. Integrity การคงสภาพข้อมูล
แต่ MD5 ช่วยได้แค่ข้อ 3 เท่านั้นเอง ดังนั้นเราต้องหาวิธีอื่นๆ มาเสริมอีก 2 ข้อที่เหลือครับ ซึ่งก็แล้วแต่ครับ ว่าอยากได้ความปลอดภัยระดับไหน
ใน การใช้งานจริง เท่าที่ผมเคยเห็น จะมีการใช้ Encryption เข้ามาช่วย เพื่อปกปิดตัวข้อมูล หรือปกปิดตัว Digest ครับ ไม่ให้มองเห็นและแก้ไขได้ครับ หรือถ้าใครชอบดาวน์โหลด มักจะเห็นว่าข้างๆ Link สำหรับดาวน์โหลดจะมีเขียนไว้ว่า MD5: ....แล้วตามด้วย Digest นะครับ นั่นแหละครับ เอาไว้ให้ผู้ใช้เอา Digest นี้ไปตรวจสอบว่าแฟ้มที่เราดาวน์โหลดไป มีข้อมูลถูกต้องหรือไม่ ตามวิธีที่ได้บอกไปข้างต้นนั่นแหละครับ
ว่าไป MD5 ก็ไม่ใช่จะไม่มีจุดบกพร่องนะคับ มีเหมือนกัน แต่ที่ผมจำได้ก็คือ มันสามารถเกิด Digest ซ้ำกันได้ครับ แต่โอกาสเกิดก็น้อยมากครับ คนทั่วไปอย่างเราคงไม่สนใจจุดนี้อยู่แล้วล่ะ (แต่ในระดับสูงแล้ว บกพร่องนิดเดียวก็ไม่ได้ครับ)
ที่มา: //www.thaiflashdev.com
: //www.tosdn.com
Create Date : 15 ตุลาคม 2551
Last Update : 15 ตุลาคม 2551 6:26:49 น.
3 comments
Counter : 795 Pageviews.
Share
Tweet
ความรู้ใหม่(สำหรับผม)
โดย:
อัสติสะ
วันที่: 15 ตุลาคม 2551 เวลา:7:48:54 น.
น่าสนใจทีเดียวครับ ขอบคุณสำหรับความรู้
โดย:
civic_coupe
วันที่: 15 ตุลาคม 2551 เวลา:22:51:19 น.
ปัญหาเรื่องการเกิด digest ซ้ำกันนั้นไม่น่าจะเรียกว่าเป็นข้อบกพร่องนะครับ
เพราะไม่มี hashing algorithm ใดสามารถหลีกเลี่ยงได้ เหตุที่เป็น
เช่นนั้นเพราะการทำงานของ hashing function นั้นจะรับอินพุท
ขนาดใดๆ มาแล้วแปลงให้ได้ผลลัพธ์ซึ่งมีขนาดคงที่ในแต่ละ algorithm
เช่น MD5 ให้ผลลัพธ์ digest ขนาด 128 บิต ดังนั้นถ้าเราเตรียม
อินพุทที่แตกต่างกันจำนวน (2^128) + 1 แบบ ย่อมต้องเกิดการซ้ำกัน
ของ digest แน่นอน
ขนาดของ digest ที่ใหญ่ขึ้นจะทำให้โอกาสการซ้ำน้อยลง แต่ต้องแลก
ด้วยเวลาที่ใช้ในการคำนวณ ซึ่งต้องเพิ่มขึ้นตามกันไป
โดย: anonymous IP: 125.25.39.190 วันที่: 22 ธันวาคม 2551 เวลา:14:28:23 น.
ชื่อ :
Comment :
*ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก
แมวอุณหภูมิห้อง
Location :
กรุงเทพ Thailand
[ดู Profile ทั้งหมด]
ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 1 คน [
?
]
loading...
New Comments
Friends' blogs
Webmaster - BlogGang
[Add แมวอุณหภูมิห้อง's blog to your web]
Links
BlogGang.com
Pantip.com
|
PantipMarket.com
|
Pantown.com
| © 2004
BlogGang.com
allrights reserved.