Hash function

Phatcharapol Ngamthuan
1 min readDec 8, 2018

--

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

Hash function

การจัดเก็บข้อมูลโดยใช้ Hash function

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

ซึ่ง Hash function จะนำวิธีการบวกตัวเลขดังกล่าวมาใช้ โดยหลังจากบวกตัวเลขทุกตัวเสร็จจะนำมาหารกับขนาดของฐานข้อมูลแล้วเอาเศษเหลือ หรือก็คือ sum Modulo size จะทำให้ได้ตำแหน่งที่อยู่ในฐานข้อมูลหรือ index จากนั้นนำข้อมูลไปใส่ในตำแหน่งนั้นเป็นการเสร็จสิ้น

ประโยชน์ของ Hash function

ข้อมูลที่ถูกจัดเก็บแบบ Hash function นั้นจะสามารถรู้ตำแหน่งของข้อมูลได้ทันที เพราะตำแหน่งของข้อมูลนั้นได้มาจากการย่อยข้อมูลด้วยวิธีดังที่กล่าวไปข้างต้นนั่นเอง จึงทำให้การหาข้อมูลเป็นเรื่องที่ง่ายดายและรวดเร็วมากเมื่อเทียบกับวิธีการหาแบบอื่น

ข้อเสียของ Hash function

เมื่อข้อมูลมีอย่างไม่จำกัดแต่พื้นที่จัดเก็บมีไม่เพียงพอต่อความต้องการ Hash function จึงเกิดเหตุการณ์ที่เรียกว่า Collision ซึ่งก็คือ การที่ข้อมูลมากกว่าสองข้อมูลขึ้นไปนำมาย่อยแล้วได้ตำแหน่งเดียวกัน แม้ว่าพื้นที่จัดเก็บจะมีเพียงพอแต่เหตุการณ์ดังกล่าวอาจเกิดขึ้นอย่างหลีกเลี่ยงไม่ได้

Next part: https://medium.com/@inkstar0000/cryptography-6499958e843a

--

--