Proof of Work กับ Proof of Stake ต่างกันอย่างไร

· อ่าน 7 นาที

บทความนี้อธิบายว่า Proof of Work และ Proof of Stake ตัดสินอย่างไรว่าใครเพิ่มบล็อกถัดไปในบล็อกเชน แต่ละแบบรักษาความปลอดภัยและสร้างเหรียญใหม่อย่างไร โดยใช้ Blocknet ซึ่งเป็นเหรียญ Proof of Work ที่ขุดบนคอมพิวเตอร์ทั่วไปได้ เป็นตัวอย่างตลอดบทความ

Proof of Work กับ Proof of Stake ต่างกันอย่างไร?

คำตอบสั้นๆ

Proof of Work และ Proof of Stake เป็นสองวิธีที่บล็อกเชนใช้ตัดสินว่าใครเพิ่มบล็อกถัดไป ใน Proof of Work นักขุดใช้กำลังคำนวณเพื่อหาแฮชที่ถูกต้อง ใน Proof of Stake นั้น validator ล็อกเหรียญเป็นเงินประกันและถูกเลือกให้เสนอและลงคะแนนบล็อก ทั้งสองแบบทำให้การโกงมีต้นทุนสูง

ทุกบล็อกเชนต้องแก้ปัญหาเดียวกัน คอมพิวเตอร์หลายพันเครื่องที่ไม่ไว้วางใจกันต้องเห็นตรงกันในประวัติการชำระเงินเดียว เพื่อไม่ให้ใครใช้เหรียญเดียวซ้ำ ต้องมีผู้เสนอบล็อกใหม่แต่ละบล็อก และคนอื่นต้องมีเหตุผลที่จะยอมรับ กฎนี้เรียกว่ากลไกฉันทามติ โดย Proof of Work และ Proof of Stake เป็นสองแบบที่รู้จักกันดีที่สุด

Proof of Work Proof of Stake
ใครสร้างบล็อก นักขุดที่พบแฮชต่ำกว่าหรือเท่าค่าเป้าหมายของเครือข่ายก่อน validator ที่เลือกจากผู้ล็อกเหรียญไว้
สิ่งที่ต้องทุ่ม ฮาร์ดแวร์และไฟฟ้า เหรียญที่ฝากเป็น stake
เชนใดชนะ เชนที่มีงานสะสมมากที่สุด เชนที่มีคะแนน validator สนับสนุนมากที่สุด พร้อมจุดตรวจยืนยันความสิ้นสุด
เหรียญใหม่ไปที่ใด รางวัลบล็อกให้นักขุดที่พบบล็อก รางวัลให้ validator จากการเสนอและลงคะแนน
ต้องมีอะไรเพื่อเข้าร่วม คอมพิวเตอร์ที่คำนวณแฮชได้ เหรียญสำหรับ stake (32 ETH สำหรับ validator ของ Ethereum)
ตัวอย่าง Bitcoin, Monero, Blocknet Ethereum ตั้งแต่ 2022

Proof of Work เลือกบล็อกถัดไปอย่างไร?

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

เอกสาร Bitcoin ปี 2008 ของ Satoshi Nakamoto อธิบายว่า “โดยพื้นฐานแล้ว Proof of Work คือหนึ่ง CPU หนึ่งเสียง” โหนดตามเชนที่มีความพยายาม Proof of Work ลงทุนไว้มากที่สุด และค่าความยากปรับเป้าหมายขึ้นหรือลงเพื่อให้บล็อกมาในอัตราคงที่ไม่ว่ามีกำลังแฮชเพิ่มเท่าไร คู่มือการทำงานของการขุดคริปโต อธิบายแฮช ความยาก และพูลทีละขั้นตอน

Blocknet ทำงานแบบเดียวกัน โดยกำหนดตัวเลขไว้ในโค้ดฉันทามติ:

Proof of Stake เลือกบล็อกถัดไปอย่างไร?

Proof of Stake แทนการแฮชด้วยเงินประกัน ผู้เข้าร่วมเป็น validator ล็อกเหรียญไว้กับโปรโตคอล แล้วโปรโตคอลเลือก validator ให้เสนอและอนุมัติบล็อก Peercoin ซึ่งเปิดตัวในปี 2012 เป็นคริปโตเคอร์เรนซีแรกที่ใช้ และ Ethereum เปลี่ยนมาใช้เมื่อ 15 กันยายน 2022 ในการอัปเกรดชื่อ Merge

การออกแบบของ Ethereum แสดงส่วนประกอบต่างๆ ตาม ethereum.org:

stake ทำหน้าที่เดียวกับไฟฟ้าใน Proof of Work การละเมิดกฎทำให้ validator เสียเหรียญที่ตนมีอยู่แล้ว

Proof of Work และ Proof of Stake รักษาความปลอดภัยอย่างไร?

ทั้งสองแบบทำให้การโจมตีมีต้นทุนสูงกว่าที่อาจได้รับ แต่ต้นทุนอยู่คนละที่

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

ใน Proof of Stake ต้นทุนคือเงินทุนที่เสี่ยงสูญเสีย เอกสาร Ethereum ระบุว่าผู้โจมตี “ต้องมี 51% ของ ETH ที่ stake” เพื่อควบคุมเชน หนึ่งในสามของ stake เพียงพอที่จะหยุดบล็อกไม่ให้มีสถานะสิ้นสุด และการย้อนบล็อกที่สิ้นสุดแล้วหมายถึงสูญเสียอย่างน้อยหนึ่งในสามของ ETH ที่ stake ทั้งหมดจาก slashing

Blocknet ยังตั้งเกณฑ์สองข้อเพิ่มเติมจาก Proof of Work เครือข่ายถือว่าการยืนยัน 10 ครั้ง หรือประมาณ 50 นาที ปลอดภัย และโหนดปฏิเสธการจัดเชนใหม่ที่ลึกเกิน 100 บล็อก หรือประมาณแปดชั่วโมง ดังนั้นบล็อกที่ลึก 100 บล็อกจึงถือว่าสิ้นสุด

ทั้งสองแบบออกเหรียญใหม่อย่างไร?

คำตอบสั้นๆ

เหรียญ Proof of Work จ่ายเหรียญใหม่ให้นักขุดที่พบแต่ละบล็อก ใครที่สนับสนุนกำลังคำนวณจึงรับเหรียญได้โดยไม่ต้องมีก่อน เหรียญ Proof of Stake จ่ายเหรียญใหม่ให้ validator ตามสัดส่วน stake รางวัลจึงไปยังผู้ที่ถือเหรียญอยู่แล้ว แต่ละโปรโตคอลกำหนดตารางของตัวเอง

ใน Proof of Work ธุรกรรมแรกของแต่ละบล็อกสร้างเหรียญใหม่ให้นักขุดที่พบ เอกสาร Bitcoin อธิบายว่านี่คือ “วิธีกระจายเหรียญเริ่มต้นเข้าสู่ระบบ เนื่องจากไม่มีหน่วยงานกลางออกเหรียญ” รางวัล Bitcoin ลดครึ่งหนึ่งทุก 210,000 บล็อก หรือประมาณทุกสี่ปี และอุปทานรวมอยู่ต่ำกว่า 21 ล้านเล็กน้อย

ใน Proof of Stake ของ Ethereum รางวัลจาก attestations การเสนอบล็อก และหน้าที่คณะกรรมการ sync ถูกเพิ่มในยอด validator หนึ่งครั้งต่อ epoch รางวัลพื้นฐาน ลดลงเมื่อ stake รวมเพิ่ม ขณะที่การออกเหรียญรวมเพิ่มเมื่อมี validator เข้าร่วมมากขึ้น

การออกเหรียญของ Blocknet ผ่านการขุดทั้งหมด บล็อกกำเนิดไม่มีธุรกรรมเลย จึงไม่มีเหรียญก่อนเริ่มขุด และฉันทามติไม่มี premine คลังส่วนกลาง หรือเอาต์พุตให้ผู้ก่อตั้ง ทุกบล็อกจ่ายรางวัลทั้งหมดในเอาต์พุตเดียวให้นักขุดที่พบ รางวัลเริ่มที่ 723.25 BNT ต่อบล็อก ลดทุกเดือนที่ยาว 30 วันตามเส้นโค้งเอ็กซ์โพเนนเชียลเป็นเวลา 48 เดือน แล้วคงที่ 2 BNT ต่อบล็อกตลอดไป

ทำไม Blocknet จึงใช้ Proof of Work?

Blocknet เลือก Proof of Work เพื่อให้ใครก็ตามที่มีคอมพิวเตอร์รับเหรียญใหม่ได้ตั้งแต่บล็อกแรกโดยไม่ต้องซื้อก่อน daemon อธิบาย Argon2id ว่าเป็น “PoW แบบ memory-hard เพื่อต้าน ASIC และให้ขุดอย่างเป็นธรรม” และรันแต่ละแฮชบนเธรดเดียว “เพื่อความเป็นธรรม”

ความต้องการหน่วยความจำคือสิ่งที่เปิดให้ทุกคนขุดได้ แต่ละแฮชเติมหน่วยความจำ 2 GiB ดังนั้นแต่ละเธรดขุดต้องมี RAM ประมาณ 2 GB และคอมพิวเตอร์ที่ผู้คนมีอยู่แล้ว ทั้งเดสก์ท็อป แล็ปท็อป และเซิร์ฟเวอร์ มีหน่วยความจำและตัวควบคุมที่รองรับ Blocknet อยู่ในกลุ่มเหรียญ Proof of Work ที่ออกแบบรอบฮาร์ดแวร์ทั่วไป เช่น Monero ใช้ RandomX ที่ “ปรับให้เหมาะกับ CPU ทั่วไป” ตั้งแต่พฤศจิกายน 2019

Proof of Work ยังอยู่ในแผนของ Blocknet การอัปเกรด Faraday ซึ่งวางแผนราวกุมภาพันธ์ 2027 ตาม blocknetcrypto.com จะนำ “Proof of Work ที่เบาลง” มาใช้เพื่อให้โหนดใหม่ตามเชนทันเร็วขึ้น

เริ่มขุดเหรียญ Proof of Work อย่างไร?

สำหรับ Blocknet คุณต้องมีที่อยู่กระเป๋าเงินและ seine โปรแกรมขุดฟรีแบบโอเพนซอร์ส:

  1. รับที่อยู่จากกระเป๋าเงินอย่างเป็นทางการ คู่มือกระเป๋าเงิน แสดงขั้นตอน
  2. ดาวน์โหลด seine สำหรับ Windows, macOS หรือ Linux แล้วเรียกใช้
  3. วางที่อยู่หรือ @name แล้วใช้พูลเริ่มต้น bntpool.com

seine เลือกจำนวนเธรดจาก RAM เปรียบเทียบเคอร์เนล CPU ระหว่างขุดแล้วเก็บตัวที่เร็วที่สุด และเพิ่มการ์ดจอ NVIDIA บน Windows และ Linux ให้ขุดควบคู่กับโปรเซสเซอร์ คู่มือขุด ครอบคลุมฮาร์ดแวร์และการจ่ายเงินโดยละเอียด

คำถามที่พบบ่อย

Blocknet ใช้ Proof of Work หรือ Proof of Stake?

Blocknet ใช้ Proof of Work นักขุดคำนวณแฮช Argon2id ที่แต่ละแฮชต้องใช้หน่วยความจำ 2 GiB พบบล็อกใหม่ประมาณทุกห้านาที และรางวัลบล็อกทั้งหมดเป็นของนักขุดที่พบ ไม่มี staking คุณขุดด้วย seine บนคอมพิวเตอร์ทั่วไปผ่านพูล bntpool.com ได้

Ethereum เปลี่ยนจาก Proof of Work เป็น Proof of Stake เมื่อไร?

Ethereum เปลี่ยนเป็น Proof of Stake ในการอัปเกรดชื่อ Merge เมื่อ 15 กันยายน 2022 ตั้งแต่นั้น validator ที่ฝาก 32 ETH ทำหน้าที่เสนอบล็อกและลงคะแนนแทนนักขุด Bitcoin, Monero และ Blocknet ยังใช้ Proof of Work ซึ่งบล็อกใหม่เกิดจากงานคำนวณ

การโจมตี 51% คืออะไร?

การโจมตี 51% คือความพยายามควบคุมว่าบล็อกใดจะถูกยอมรับ โดยถือทรัพยากรส่วนใหญ่ที่ใช้ตัดสิน ใน Proof of Work หมายถึงกำลังแฮชส่วนใหญ่ของเครือข่าย ส่วน Proof of Stake หมายถึงเหรียญที่ stake ไว้ส่วนใหญ่ ทั้งสองกรณีผู้โจมตีต้องทุ่มทรัพยากรจริงมากกว่าครึ่ง

ขุดเหรียญแบบ Proof of Stake ได้หรือไม่?

ไม่ได้ เหรียญที่เป็น Proof of Stake ล้วนไม่มีการขุด เหรียญใหม่จ่ายให้ validator ที่ล็อกเหรียญเดิมเป็น stake จึงต้องมีเหรียญก่อนจึงจะรับเพิ่มได้ หากต้องการรับเหรียญใหม่ด้วยคอมพิวเตอร์ที่มีอยู่ ต้องเลือกเหรียญแบบ Proof of Work เช่น Blocknet