Verifying Files with MD5 Checksum

Published on September 7, 2024
Verifying Files with MD5 Checksum

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

MD5 (ย่อมาจาก Message Digest Algorithm 5) เป็นอัลกอริทึมการแฮชแบบเข้ารหัสที่ใช้ในการสร้างค่าที่เป็นตัวแทนข้อมูลขนาดใหญ่ในรูปของสตริงที่มีความยาวคงที่ โดยปกติแล้ว MD5 จะสร้างผลลัพธ์ที่เป็นสตริงความยาว 128 บิต (16 ไบต์) หรือ 32 ตัวอักษรในระบบเลขฐานสิบหก

อัลกอริทึมนี้มักใช้ในการตรวจสอบความถูกต้องของข้อมูลหรือไฟล์ โดยการสร้างแฮชจากข้อมูลต้นฉบับและเปรียบเทียบกับแฮชที่ได้รับ หากแฮชตรงกัน แสดงว่าข้อมูลไม่ถูกแก้ไขโดยผู้ไม่หวังดี หรือเสียหายเช่นความเสียหายที่เกิดขึ้นระหว่างการ transfer เช่น data corruption อย่างไรก็ตาม MD5

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

  1. ตรวจสอบความสมบูรณ์ของไฟล์ (Integrity Check): MD5 ช่วยให้สามารถตรวจสอบได้ว่าไฟล์ไม่ได้ถูกแก้ไข เปลี่ยนแปลง หรือเสียหายระหว่างการโอนย้ายหรือการดาวน์โหลด การเปรียบเทียบค่าแฮชของไฟล์ที่ได้รับกับค่าแฮชที่รู้จัก (หรือที่ผู้ส่งให้) จะช่วยยืนยันว่าไฟล์ยังคงสมบูรณ์
  2. การตรวจสอบความถูกต้องของการดาวน์โหลด: เมื่อดาวน์โหลดไฟล์จากอินเทอร์เน็ต ผู้ให้บริการมักจะให้ค่าแฮช MD5 ของไฟล์เพื่อให้ผู้ใช้งานสามารถตรวจสอบได้ว่าไฟล์ที่ดาวน์โหลดนั้นถูกต้องและไม่ได้รับผลกระทบจากข้อผิดพลาดในกระบวนการดาวน์โหลดหรือการถูกแก้ไขโดยผู้ไม่ประสงค์ดี
  3. การตรวจสอบความถูกต้องในระบบเก็บข้อมูล (Data Integrity in Storage Systems): ใช้ในการตรวจสอบความถูกต้องของข้อมูลที่ถูกเก็บในระบบเก็บข้อมูลหรือเซิร์ฟเวอร์ เพื่อป้องกันความผิดพลาดที่เกิดจากฮาร์ดแวร์หรือการคัดลอกข้อมูล

ในครั้งหน้าเราจะมาสอนเรื่องการใช้ SHA-256 ที่เริ่มเข้ามาแทนที่ MD5 ด้วยความปลอดภัยที่เหนือกว่า และ ตอนนี้เรามายกตัวอย่างและคำสั่งในการเช็ค checksum ด้วย MD5 สำหรับ fireware ที่เราดาวน์โหลดมาเพื่อทำการอัพเกรด Fortigate 201E ของเรา

ด้านหลังไฟล์นั้นจะมีสิ่งที่เรียกว่า checksum ให้เราเช็ค และ ดูตัวอักษรดังกล่าวไว้

หลังจากนั้นให้เราใช้คำสั่ง Get-FileHash ตามด้วย -Path และตามด้วยชื่อไฟล์ และ ตามด้วย -Algorithm MD5 เพื่อเช็คว่าไฟล์มี checksum ตรงกันหรือปล่าว ถ้าตรงเราก็นำไปใช้ได้ เพราะไฟล์นั้นปลอดภัย ไม่เสียหายและไม่ถูกเปลี่ยนแปลงโดยบุคคลอื่น

การเชื่อมต่อไปยัง Hyper-V จาก Workstation ที่มีสถานะของโดเมนต่างกัน

แน่นอนว่า การติดตั้ง Hyper-V นั้นสามารถทำได้ทั้งแบบ standalone หรือว่า domain ด้วยเหตุผลที่ต่างๆ กันไป เช่นกลัวการโดน...

Read more »

วิธีติดตั้งและตั้งค่า ProxCenter เชื่อมต่อ Proxmox VE ใช้งานจริง

เมื่อองค์กรเริ่มใช้งานหลายคลัสเตอร์ของ Proxmox VE การบริหารจัดการผ่านหน้าเว็บของแต่ละโหนดอาจไม่สะดวก และมองภาพรวมได้ยาก ProxCenter ถูกออกแบบมาเพื่อรวมศูนย์การจัดการทั้งหมด ไม่ว่าจะเป็น VM, Container,...

Read more »

ขับเคลื่อนความยั่งยื่นด้าน IT ผ่านกลยุทธ์ RSE

RSE คืออะไร RSE หรือ Responsible Sustainable Efficient หากแปลความตัวเราก็จะได้ความหมายว่า ความรับผิดชอบ ความยั่งยืน...

Read more »

ProxCenter บริหาร Proxmox VE แบบเดียวกับ vCenter ใน VMware

สิ่งหนึ่งที่ผู้ใช้งาน VMware รู้สึกว่าเหมือนจะหายไป หลังจากย้ายมา Proxmox VE นั่นก็คือ เครื่องมือบริหารแบบองค์รวมที่ทำหน้าที่คล้าย vCenter แต่ว่าตอนนี้ท่านอาจจะต้องเปลี่ยนความคิด...

Read more »

ทดสอบการรับภาระงานและความเค้นใน Web App และ API ด้วย Gatling

ความจำเป็นของการทำ Load และ Stress Test สำหรับ Web Application และ API...

Read more »

Hyper-V vs Proxmox VE เปรียบเทียบทุกมุมมอง

ทุกวันนี้ virtualization ได้กลายเป็นกระดูกสันหลังของทุกองค์กรไปแล้ว ด้วยคุณสมบัติของมันที่จะช่วยให้คุณใช้ทรัพยากรได้อย่างมีประสิทธิภาพที่สุด และ ให้ความอิสระในแง่ของการใช้งานและการบริหารระบบ หากพูดถึงเรื่องการเลือก Hypervisor คุณอาจจะเคยได้ยินคนพูดถึงการเปรียบเทียบระหว่าง Hyper-V...

Read more »