Checksum คืออะไร?

ตัวอย่าง Checksum, กรณีใช้และเครื่องคิดเลข

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

การตรวจสอบยังเรียกว่าบางครั้งเป็นการ รวมแฮช และมักไม่ค่อยมี ค่า แฮชรหัสแฮช หรือเพียงแค่ แฮช

ตัวอย่าง Checksum แบบง่าย

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

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

นี่คือการทดสอบ. 120EA8A25E5D487BF68B5F7096440019

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

นี่คือการทดสอบ CE114E4501D2F4E2DCEA3E17B546F339

อย่างที่คุณเห็นแม้การเปลี่ยนแปลงเล็กน้อยในไฟล์จะทำให้เกิดการตรวจสอบที่แตกต่างกันอย่างสิ้นเชิงทำให้เห็นได้ชัดเจนว่าไม่มีใครเหมือนอย่างอื่น

กรณีการใช้งาน Checksum

สมมติว่าคุณดาวน์โหลดอัปเดตขนาดใหญ่เช่น Service Pack ไปยังโปรแกรมที่คุณใช้ทุกวันเช่นโปรแกรมแก้ไขกราฟิก นี่อาจเป็นไฟล์ขนาดใหญ่จริงๆโดยใช้เวลานานหลายนาทีในการดาวน์โหลด

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

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

ตัวอย่างเช่นบอกว่าเว็บไซต์นี้มีไฟล์ checksum MD5: 5a828ca5302b19ae8c7a66149f3e1e98 สำหรับไฟล์ที่คุณดาวน์โหลด จากนั้นคุณใช้เครื่องคิดเลข checksum ของคุณเองในการสร้าง checksum โดยใช้ฟังก์ชันแฮชบาคีการเข้ารหัสเดียวกัน MD5 ในตัวอย่างนี้ในไฟล์บนคอมพิวเตอร์ของคุณ ตรวจสอบ checksums หรือไม่? ที่ดี! คุณสามารถมั่นใจได้มากว่าไฟล์ทั้งสองแบบเหมือนกัน

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

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

เครื่องคิดเลข Checksum

เครื่องคิดเลข Checksum เป็นเครื่องมือที่ใช้ในการคำนวณ checksums มีเครื่องคิดเลข checksum จำนวนมากออกมีแต่ละที่สนับสนุนชุดที่แตกต่างกันของฟังก์ชันแฮชรหัสลับ

เครื่องคิดเลขเช็คฟรีที่ยอดเยี่ยมคือ Microsoft Checksum Integrity Verifier ซึ่งเรียกสั้น ๆ ว่า fciv Fciv สนับสนุนเฉพาะ MD5 และ SHA-1 cryptographic hash functions แต่ตอนนี้พวกเขาได้รับความนิยมมากที่สุด

ดู วิธีตรวจสอบความสมบูรณ์ของไฟล์ใน Windows กับ FCIV สำหรับบทแนะนำที่สมบูรณ์ เครื่องตรวจสอบ Checksum Integrity Verifier ของ Microsoft เป็นโปรแกรม บรรทัดคำสั่ง แต่ใช้งานง่ายมาก

อีกหนึ่งเครื่องคิดเลขยอดเยี่ยมสำหรับ Windows คือ IgorWare Hasher และเป็นอุปกรณ์พกพาที่สมบูรณ์แบบดังนั้นคุณจึงไม่จำเป็นต้องติดตั้งอะไรเลย ถ้าคุณไม่พอใจกับเครื่องมือบรรทัดคำสั่งโปรแกรมนี้น่าจะเป็นทางเลือกที่ดีกว่า สนับสนุน MD5 และ SHA-1 รวมทั้ง CRC32 คุณสามารถใช้ IgorWare Hasher เพื่อตรวจสอบความถูกต้องของข้อความและไฟล์ได้

JDigest เป็นเครื่องคิดเลข checksum แบบโอเพนซอร์สที่ทำงานได้ใน Windows เช่นเดียวกับบน macOS และ Linux

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