Nonce คืออะไร?
Nonce คือจำนวนที่ใช้ครั้งเดียวเพื่อทำให้ความพยายามทางคริปโตกราฟฟีมีความเฉพาะตัว ในการทำเหมืองแบบ Bitcoin-style มันคือค่าที่ miner ปรับทดแทนจน hash ของบล็อกตรงตามกฎ เกร็ดเป็นเหมือนการหมุนวงล้อบานประตูใหม่เรื่อยๆ จนคลิก
Nonce มักเป็นแบบสุ่มอยู่เสมอ แน่ล่ะ ไม่ใช่ซะทีเดียว มันต้องมีความเป็นเอกลักษณ์สำหรับความพยายามนั้น ดังนั้น miner มักลองค่าเป็นลำดับแทนการสุ่มแบบสเกลเตอร์
วิธีการทำงานของ Nonce
นี่คือ play by play อย่างรวดเร็วสำหรับการขุด เหมือนมองเห็นนักขุดที่คียบอร์ด คอฟฟี่ในมือลองค่าต่างๆ ด้วยความเร็วเครื่องจักร
- Step 1: นักขุดรวบรวมธุรกรรมและเตรียม block header ต่างๆ
- Step 2: พวกเขาลองค่า Nonce ค่า hash header แล้วตรวจดูผลลัพธ์ว่าเป็นไปตามเป้าหมายที่ network's difficulty ตั้งไว้หรือไม่
- Step 3: ถ้าไม่ผ่าน พวกเขาเปลี่ยค่าแล้วลองใหม่ ทำซ้ำ ซ้ำ แล้วซ้ำ
- Step 4: เมื่อทำงานได้สำเร็จ miner จะกระจายบล็อกให้ทุกคนสามารถตรวจสอบได้โดยการ hash header เดิมบวกกับ block data ที่รวมอยู่
- Step 5: บล็อกถัดไป การค้นหาใหม่ เกมเดิม รอบใหม่
ใช่ นี่แหละ
ทำไม Nonce ถึงสำคัญ
แล้วข้อดีสำหรับคุณล่ะ?
- ประโยชน์: มันทำให้ proof of work สามารถตรวจสอบได้โดยใครก็ได้ ซึ่งช่วยรักษาความซื่อสัตย์ในการผลิตบล็อก
- มุมมอง: ใน chains ที่ใช้บัญชีเป็นหลัก ปสท.นับธุรกรรมที่เรียกว่า nonce ช่วยหยุด replay attacks และกลยุทธ์เรียงลำดับที่แปลกๆ
- ความเกี่ยวข้อง: คุณจะเห็นมันใน block explorers, wallet UIs, mining dashboards และ dev tools
อ่าน block explorer? ตรวจสอบว่าเป็น mining nonce ในบล็อกหรือเป็น transaction counter สำหรับบัญชีเดียวกัน คำเดียวกัน แต่หน้าที่ต่างกัน
คุณลักษณะหลักของ Nonce
จุดเด่นที่คุณจะให้ความสำคัญ:
- ความเป็นเอกลักษณ์: ใช้ครั้งเดียวสำหรับความพยายาม cryptographic เฉพาะ แล้วไม่ถูกใช้อีกในจุดนั้น
- ปรับได้: ในการขุด มันคือ knob ที่ miner หมุนเพื่อค้นหา hash ที่ถูกต้อง
- สามารถตรวจสอบได้: ใครๆ ก็ recompute hash เพื่อยืนยันข้ออ้าง ไม่จำเป็นต้องเชื่อถือ
- จำกัด: Bitcoin มีฟิลด์ 32 บิต ดังนั้น miner จะปรับเปลี่ยนฟิลด์อื่นเมื่อรันออก
Variations
ชื่อเดียวกัน แต่มีหลายเวอร์ชันที่ควรรู้:
- Mining: ค่าใน block header สำหรับการค้นหา proof of work
- Extra: nonce พิเศษที่ซ่อนใน coinbase transaction เพื่อขยายพื้นที่ค้นหา
- Account: ตัวนับธุรกรรมในเครือข่ายอย่าง Ethereum ที่หยุดการทำสำเนาซ้ำและบังคับลำดับ
- Signature: ค่า random ลับใน ECDSA signing ที่ห้ามซ้ำ หรือจะทำให้กุญแจรั่วไหล
มันไม่ใช่รหัสผ่าน มันเผยแพร่พร้อมกับบล็อกหรือธุรกรรม และหน้าที่ของมันคือทำให้การคำนวณมีเอกลักษณ์และตรวจสอบได้
ตัวอย่าง
miner ลูปค่าต่างๆ ใน header หลายพันล้านครั้งจนกว่าจะพบ hash ที่เริ่มด้วยศูนย์หลายหลัก จากนั้นก็ส่งบล็อกออกไป
ข้อเท็จจริงที่น่าสนใจ
Nonce มาจากวลี for the nonce ใน Middle English ที่หมายถึงเพื่อโอกาส ความหมาย สำหรับเหตุการณ์ นักเข้ารหัสได้ใช้มันมานานแล้ว ก่อน GPUs และ memecoins
Wrap-Up
สั้นๆ ได้ใจความ: มันคือจำนวนหนึ่งครั้งที่ทำให้ proof of work และหลายกลโกง crypto ทำงานจริง โดยไม่ต้องมีคนกลาง