คลังคำศัพท์

Cryptographic Hash Function

Moderate

Cryptographic Hash Function จะสร้างค่าแฮชขนาดคงที่จากอินพุตธุรกรรมขนาดผันแปร

Cryptographic Hash Function อะไร

Cryptographic Hash Function เป็นอัลกอริทึม กล่าวคือ ลำดับของการกระทำเฉพาะที่เท่านั้นที่สามารถทำซ้ำได้ ซึ่งสามารถใช้เพื่อแปลงสตริงข้อมูลของความยาวผันแปรให้เป็นหนึ่งในความยาวและรูปแบบที่คงที่ ซึ่งเรียกว่า hash

หนึ่งในตัวอย่างที่ง่ายที่สุดของ hash function คือการบวกตัวเลขในตัวเลขจนเหลือตัวเลขเดียว ตัวอย่างเช่น หากอินพุตเป็น 49 ให้เพิ่ม 4 และ 9 จะได้ 13 จากนั้นนำหลัก 1 และ 3 มาบวกกันอีกครั้งเพื่อให้ได้ผลลัพธ์เป็น 4 ไม่ว่าตัวเลขอินพุตจะมีความยาวเท่าใด เอาต์พุตจะเป็นค่าเดียวเสมอ

อย่างไรก็ตาม นั่นไม่ใช่อัลกอริทึมที่ดี เนื่องจากเพื่อให้การทำงานของมันทำงานได้ดี hash function ก็จำเป็นต้องมีคุณสมบัติอีกหลายประการ:

  • ควรง่ายต่อการคำนวณเอาต์พุตสำหรับอินพุตที่กำหนดไว้ แต่แทบจะเป็นไปไม่ได้เลยที่จะย้อนกลับกระบวนการและคำนวณอินพุตของเอาต์พุตที่รู้อยู่แล้ว
  • Determinism (นิยัตินิยม) — การป้อนอินพุตที่มีความเฉพาะเข้าไปในอัลกอริทึมควรให้ผลลัพธ์ที่เหมือนกันเสมอ
  • Collision resistance — อินพุตที่ต่างกันสองตัวไม่น่าจะสร้างเอาต์พุตเดียวกันได้
  • Avalanche effect — การเปลี่ยนแปลงข้อมูลแม้แต่บิตเดียวในอินพุตควรส่งผลให้เอาต์พุตแตกต่างกันอย่างมาก

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

พวกเขายังเป็นองค์ประกอบสำคัญใน การขุด สำหรับ คริปโตเคอร์เรอร์เรนซีที่มีการทำงานแบบ proof-of-work เช่น Bitcoin (BTC) ซึ่งใช้ฟังก์ชันแฮช SHA-256 ในการเพิ่ม บล็อก ใหม่ให้กับ บล็อกเชน และรับ รางวัล เป็น Bitcoin ที่เพิ่งขุดได้นั้น ก่อนอื่นนักขุดต้องสร้างค่าแฮชที่ต่ำกว่าเกณฑ์ที่กำหนดซึ่งเรียกว่าเป้าหมาย

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