เป็นที่รู้กันว่า md5 มีปัญหาเรื่อง collision มาได้สักระยะหนึ่งแล้ว ซึ่งถือเป็นปัญหาที่ร้ายแรงของ hash algorithm และควรเปลี่ยนไปใช้ hash algorithm อื่นแทน เช่น sha1 เป็นต้น อย่างไรก็ตาม หลายๆ คน แม้กระทั่งผู้ที่อยู่ในวงการ security เอง ได้มีความเข้าใจเกี่ยวกับปัญหา hash collision ของ md5 ไม่ถูกต้องนัก ซึ่งเป็นประเด็นที่ผมจะนำมาเสนอในบทความนี้ครับ hash หรือ digest hash หรือ digest คือกระบวนการทางคณิตศาสตร์ ซึ่งรับ input มา และให้ output ออกมาค่าหนึ่ง โดยไม่มีกระบวนการใดสามารถแปลงจาก output กลับไปเป็น input ได้ บางคนจะเรียกว่ากระบวนการนี้ว่า “การเข้ารหัสทางเดียว” หรือ “one-way hashing” (ไม่สามารถแปลงย้อนกลับได้นั่นเอง) หมายเหตุ hashing จะต่างกับ …
Continue reading »

More...