Proof of Stake

  Cryptopedia

นิยาม


Proof of Stake คือ แนวคิดที่บอกว่า บุคคลหนึ่งสามารถขุดหรือว่ายืนยันธุรกรรมของ Block (Cryptocurrencies) ตามจำนวนเหรียญที่เขาถืออยู่ หมายความว่า ยิ่งคนที่ถือเหรียญที่ใช้วิธีการของ Proof of Stake มากก็ยิ่งจะมีกำลังขุดมากตามไปด้วย1 Proof of Stake หรือ PoS นั้นเป็นประเภทหนึ่งของ Algorithms ของ Block chain ที่ใช้การมีส่วนของระบบการตรวจสอบใน Network ของ Block chain2 Proof of Stake (PoS) พยายามแก้ปัญหาของการใช้เหมืองขุดเป็นตัวยืนยัน โดยจะใช้สัดส่วนของผู้ถือครองเหรียญในการเป็นตัวยืนยันธุรกรรม

ความเป็นมา


PoS แตกต่างจากเหรียญที่ใช้ระบบ Proof of Work (PoW) ตัวอย่างเช่น BTC โดยการใช้ Algorithm Proof of Work นั้น Algorithm จะมีผลตอบแทนให้กับผู้ที่สามารถถอดสมการของ Algorithm ได้ (นั่นก็คือการขุดโดยใช้การ์ดจอ หรือ Mining) ซึ่งทำให้เกิด Block ใหม่เกิดขึ้น การที่จะขุดจะต้องใช้กำลังในการประมวลผลทางคอมพิวเตอร์ ซึ่งพลังในการคำนวณหรือการขุดเหล่านั้นจะต้องถูกนำมาใช้เพื่อสร้างและบันทึกธุรกรรม โดยเป้าหมายของการขุดนั้นมีอยู่ 2 ข้อ 3, 4

  1. เพื่อใช้ตรวจสอบธุรกรรมที่เกิดขึ้นใหม่หรือใช้เพื่อป้องกันการโกงจากการทำธุรกรรมซ้ำซ้อน
  2. เพื่อสร้างเหรียญใหม่โดยให้ผลตอบแทนต่อนักขุดที่สามารถแก้ algorithm ได้

จะเห็นว่าการทำธุรกรรมนั้นจะเกี่ยวข้องกับการใช้พลังของการประมวลผลทางคอมพิวเตอร์เป็นอันมาก ในปี  2011 ถึง 2012 แนวคิดของ Proof of stake ได้เผยแพร่เข้ามาในโลกของ Cryptocurrency โดย Sunny King และ Scott Nadal ซึ่งพยายามจะแก้ไขปัญหาการใช้พลังงานที่สูงของเหรียญ Bitcoin ซึ่งต้องใช้ต้นทุนประมาณ 150,000 USD ต่อวัน ณ ตอนนั้นในการบำรุงรักษาเครือข่าย Bitcoin Network5  Sunny และ Scott กล่าวว่า ระบบที่ว่านี้คือ “Staking” ซึ่ง algorithm จะเลือก Node ที่มีสัดส่วนมากที่สุดที่ถือเหรียญหรือ “Stake” โดยในระบบนี้ Block ของ Coin จะถูก “forged” หรือ “minted” แทนที่จะเรียกว่า “Mined” อย่างที่เรียกกันใน Algorithm Proof of Work ซึ่งการที่จะสร้าง Block หรือ forged หรือ minted เหรียญขึ้นมาใหม่นี้ได้นั้น เจ้าของเหรียญหรือ “Staker” จะต้องถือครองเหรียญของตัวเองไว้ ซึ่งถ้าถูกพบว่าทำผิดกฏ ก็จะสูญเสียสิทธิในการ forged เหรียญนั้นในอนาคต เมื่อเขาถือครองเหรียญนั้นก็จะมีสิทธิที่จะสร้างหรือยืนยันธุรกรรมขึ้นมาซึ่งเรียกว่า “forgers”6  หรือกล่าวอีกแง่ก็คือ คนที่มีเหรียญมากที่สุดก็จะมีโอกาสสูงในการถูกเลือกเป็นตัวยืนยันธุรกรรม เพิ่มธุรกรรมและถ้าทำสำเร็จก็จะได้ Rewards เข้ากระเป๋าที่ถือเหรียญของเขาเหล่านั้น

โดยเหรียญแรกที่ใช้ระบบ PoS คือ Peercoin ตามมาด้วย Nxt,blackcoin และ ShadowCoin ตามลำดับ7

ต่อมา Sunny King ได้สร้างเหรียญ Peercoin (PPC) ขึ้นมาในปี 2013 และเป็นเหรียญแรกที่ใช้ Proof of Stake algorithm ขณะที่ยังมีระบบ Proof of Work อยู่ด้วย หลังจากนั้น NXT ได้พยายามประยุกต์ใช้ Proof of Stake algorithm แบบ 100 % คือไม่มีการขุดเหรียญเลย

ในเดือนกุมภาพันธ์ ปี 2014 Blackcoin ได้ถูกสร้างขึ้นโดย Pavel Vasin (หรือชื่อ User ว่า Rat4) โดยเขาพยายามเอาเงื่อนไขเรื่อง Coin age (อายุของการถือครอง) และ PoW ออก เพราะคิดว่าการที่เหรียญมีอายุจะเพิ่มความเสี่ยงที่จะมีปัญหาคนที่ถือเหรียญเกิน 51 % (ทำให้ถูกเลือกโดยสมบูรณ์ว่าจะเป็นคนยืนยันธุรกรรมอยู่ทุกครั้งซึ่งเป็นการผูกขาด)

หลังจากนั้น ได้มีการพยายามพัฒนา Algorithm Proof of Stake กันอย่างไม่หยุดยั้ง

ปัญหาของระบบ Proof of Stake 


ปัญหาของระบบ Proof of Stake algorithm มี 4 รูปแบบ8

  1. ปัญหาการกระจาย (Distribution) เนื่องจาก Block rewards นั้นจ่ายให้กับคนที่ได้ทำการยืนยันธุรกรรม (Staker) แล้วเหรียญจะกระจายไปอยู่คนหลายกลุ่มได้อย่างไร?
  2. ปัญหาการผูกขาด (Monopolization) เนื่องจากคนที่มีเหรียญมากที่สุดจะมีโอกาสที่จะได้ทำการยืนยันธุรกรรมสร้างเหรียญใหม่และยังได้เหรียญเพิ่มจาก Rewards อีกทำให้เหรียญกระจุกตัวอยู่กับคนกลุ่มเดียว
  3. ปัญหา 51 % attack ปัญหานี้เป็นปัญหาที่ไม่แตกต่างกับกรณี 51 % attack ที่เกิดกับ Proof of Work algorithm จากการที่มีกลุ่มคนที่ถือครองกำลังขุดเกิน 51 % ของกำลังขุดทั้งหมดเพราะมันทำให้มีโอกาสที่จะได้รับ Rewards สูงกว่ากลุ่มอื่น
  4. Nothing at Stake (NoS) ปัญหานี้เกิดขึ้นเมื่อ Algorithm Proof of Stake ได้ทำการเพิ่ม Block เมื่อ Node นั้นเข้าเงื่อนไขทุกข้อรวมทั้งค่าน้ำหนักของ Stake ด้วย ซึ่งนำไปสู่ปัญหาที่ว่าเมื่อมีการ forge coin และมี 2 Nodes ที่เข้าเงื่อนไขพร้อมกันเวลาเดียวกัน การยืนยันธุรกรรมได้ถูกยืนยันโดย Nodes อื่น ๆ ที่อยู่ในระบบเพียง 1 block เท่านั้นที่ถูกยืนยันแต่ว่าทุก Nodes ที่อยู่ในเครือข่ายก็จะทำการยืนยันทุก Block ที่เกิดขึ้นอยู่ดีแม้ว่าจะมีเพียง 1 Block จาก 2 Block ที่ถูกยืนยัน มันทำให้มีการทำธุรกรรมซ้อนกันเกิดขึ้น ไม่ว่าการ forge เหรียญนี้จะเกิดขึ้นโดยความบังเอิญหรือไม่

มีผู้พยายามอธิบายปัญหา (NoS) นี้ให้เข้าใจง่าย ๆ ว่า “เราไม่ได้เสียอะไรไปจากการเป็นคนนิสัยไม่ดี กล่าวคือ ไม่เสียอะไรจากการที่ Node ยืนยันธุรกรรมที่เกิดขึ้นทุก ๆ การ forge เพราะว่าแรงจูงใจของการยืนยันธุรกรรมนี้คือให้ยืนยันทุกครั้งทุกที่โดยที่ไม่มีต้นทุนอะไรเกิดขึ้น” เมื่อทำการยืนยันทุกครั้งก่อให้เกิดการสร้าง Block ซ้อนกันหรือว่าทำธุรกรรมการซื้อขายจ่ายโอนเหรียญซ้อนกันมันก็จะยืนยันทั้ง 2 ธุรกรรมนั่นเองเพราะ Miners (หรือคนที่ถือเหรียญ Staker) ไม่ได้มีต้นทุนอะไรที่ต้องเสีย9

เงื่อนไขธุรกรรมของ Proof of Stake


เงื่อนไขธุรกรรม หรือกระบวนการเลือกว่าผู้ถือครองเหรียญคนไหนจะเป็นคน forge เหรียญ สำหรับ Block ที่จะสร้างขึ้นมาใหม่นี้ การเลือกเหรียญนี้จะขึ้นอยู่กับขนาดของจำนวนเหรียญที่ถือครองอยู่จะทำให้คนที่ครองเหรียญจำนวนมากอยู่แล้ว มีเหรียญจำนวนมากยิ่งขึ้นไปอีก ทำให้เกิดปัญหาดังที่กล่าวมาทั้ง 4 ข้อ การที่จะแก้ไขปัญหาเหล่านั้น จะต้องมีการเลือก Block ที่เหมาะสม มีวิธีการ 2 วิธีการ คือ Randomized Block Selection และ Coin Age Based Selection10, 11

Randomized Block Selection


ระบบนี้เป็นระบบแบบสุ่ม ซึ่งจะใช้สูตรการค้นหาค่า Hash Value ที่มีค่าต่ำสุดร่วมกับขนาดของ Size Stake ที่น้อยที่สุดในการเลือกว่าใครจะได้เป็นผู้ Forge เหรียญต่อไป อย่างไรก็ตามเนื่องจาก Hash Value เป็นค่าที่เปิดเผยกันในเว็บข้อมูล จึงทำให้รู้ว่าใครจะได้เป็นผู้ทำการ Forge เหรียญคนต่อไป ตัวอย่างของเหรียญที่ใช้ระบบนี้ได้แก่ NXT และ BLACKCOIN

Coin Age-Based Selection


ระบบ Coin Age-Based หรือขึ้นอยู่กับจำนวนอายุของ Coin ที่จะมาเป็นตัว forge Block ที่จะสร้างขึ้นถัดไป โดยการคำนวณนั้นจะทำได้โดย

สูตร = ระยะเวลาที่ถือครอง x จำนวนเหรียญที่ถือครอง12

เหรียญที่ทำการ forge จะต้องถือมาอย่างน้อย 30 วันก่อนที่จะมีสิทธินั้น ยิ่งคนที่ถือมานานและมีจำนวนเหรียญถือครองมากก็ยิ่งมีสิทธิมากในการที่จะถูกเลือก และเมื่อคนที่ถือเหรียญได้สิทธิในการ Forge Block นั้นไปแล้ว อายุเหรียญที่ถือครองจะตั้งต้นเป็น 0 ใหม่หมายความว่า คนถือครองจะต้องรอไปอีกอย่างน้อย 30 วันถึงจะมีสิทธิในการ Forge เหรียญใหม่อีกครั้ง

อีกเงื่อนไขหนึ่งเพิ่มเติมสำหรับ Coin Age-Based คือ นอกจากการถือครองเหรียญ 30 วันขึ้นไปแล้ว เพื่อป้องกันคนที่มีจำนวนวันที่ไม่ได้รับเลือกให้ forge มีเวลาสะสมมากจนเกินไป จึงทำการรีเซ็ตเวลาใหม่ทุก ๆ 90 วัน (หรือที่เรียกว่า Maximum coin age) กลไกดังกล่าวนี้ทำให้โอกาสของคนที่ยังไม่ได้รับสิทธิให้ Forge เหรียญจะสูงขึ้นเมื่อไม่ได้รับสิทธิก่อนหน้า ทำให้ระบบมีการกระจายอำนาจในการตัดสินใจ (Decentralization) ได้มากขึ้น

ผลตอบแทนของคนที่ถือครองเหรียญ Algorithm Proof of Stake นี้ได้ผลตอบแทนจากการยืนยันธุรกรรมโดยจ่ายเข้ามาในกระเป๋าที่ถือครองในลักษณะผลตอบแทน ซึ่งไม่แตกต่างจากดอกเบี้ยในตลาดการเงินทำให้มีคนสนใจที่เข้ามาถือครองเหรียญนี้เนื่องจากทำได้ง่ายเมื่อเปรียบเทียบกับการขุดเหมือง (Mining) กลไกนี้สร้างความเข้มแข็งให้กับชุมชน และทำให้ราคาของเหรียญมีเสถียรภาพไม่แกว่งตัวสูง เนื่องจากผู้ถือครองเหรียญจะไม่ขายเหรียญของตัวเองออกไปเพราะการมีสัดส่วนเหรียญที่สูงย่อมทำให้มีโอกาสสูงที่จะทำให้ได้รับโอกาส Forge Block ใหม่ที่เกิดขึ้น  นอกจากนี้ต้นทุนของเหรียญที่ใช้ Algorithm Proof of Stake ยังต่ำกว่าการขุดมากอีกด้วย

MASTERNODE รูปแบบหนึ่งของ Proof of Stake


Masternode ถือเป็นรูปแบบหนึ่งของ Proof of Stake กล่าวคือ มีการถือครองเหรียญใน Wallet มีการติดตั้ง wallet qt รันใน Server ที่ต้องเปิดตลอด 24 ชั่วโมง และได้ผลตอบแทนมาในรูปแบบการยืนยันธุรกรรม ซึ่งมีความคล้ายคลึงในการทำ Staking กับเหรียญที่ใช้ Algorithm Proof of Stake เช่น QTUM บางข้อมูลให้ความเห็นว่า Masternode มีข้อจำกัดคือ เป็นการทำโดยกลุ่มบุคคลเดียว กล่าวคือ บุคคลดังกล่าวต้องใช้จำนวนเหรียญ จำนวนหนึ่งที่ต้องถือครองใน Wallet ยกตัวอย่างเช่น DASH ต้องใช้ Collateral coin (สำหรับฝากเข้า Address ใน Cold Wallet) จำนวน 1,000 DASH ซึ่งคิดเป็นมูลค่ากว่า 392,656 USD13 (ณ วันที่ 12 พฤษภาคม 2018) ขณะที่การทำ Staking ไม่มีข้อจำกัดในเรื่องนี้จำนวนเหรียญขั้นต่ำที่ต้องถือครอง

รูปแบบอื่น ๆ ของ Coin Staking


ความน่าสนใจของรูปแบบ Coin Staking แม้จะไม่ได้ใช้ในการยืนยันธุรกรรม หรือสร้างบล็อคแต่มีบางเหรียญ ประยุกต์ใช้แนวคิดของ Proof of Stake coin ในการสร้างแรงจูงใจให้ผลตอบแทนกับเหรียญโดยการให้ผลตอบแทนกับเจ้าของเหรียญที่ซื้อเหรียญและฝากเหรียญไว้ใน Account ที่เปิดกับตลาด (หรือ Broker ) เช่น เหรียญ ATMchain เป็น Token ที่ใช้มาตรฐาน ERC 20 โดยโบรคเกอร์ Rfinex ให้ผลตอบแทน 12% ต่อปีในการฝากเหรียญ ATMchain (ATM)กับ Rfinex  หรือ BridgeCoin (BCO) ให้ผลตอบแทนสำหรับผู้ที่ถือครองเหรียญ BCO ไว้ใน Account ของ BCO กว่า 100 % ต่อปี ซึ่ง BridgeCoin นี้เป็นเหรียญสำหรับ Back Up ตลาด Cryptocurrency ชื่อ CryptoBridge นอกจากนี้ยังมีเหรียญหรือ Token อื่น ๆ ที่จ่ายผลตอบแทนอื่นอีก[ผลตอบแทนมีการเปลี่ยนแปลงตามเงื่อนไขของ Cryptocurrency โปรดศึกษารายละเอียดให้ถี่ถ้วน]

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

footnotes

Show 13 Footnotes

  1. Investopedia, 2018. Proof of Stake (PoS) ที่มา:https://www.investopedia.com/terms/p/proof-stake-pos.asp สืบค้นเมื่อวันที่ 11 พฤษภาคม 2018, footnotes
  2. James Ray 2018, Proof of Stake FAQ: Ethereum/wiki ที่มา:https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ สืบค้นเมื่อวันที่ 11 พฤษภาคม 2018, footnotes
  3. Beam 2017. Proof of Work vs Proof of Stake สิ่งที่นักขุดควรจะรู้ก่อนเริ่มขุด ที่มา:https://siamblockchain.com/2017/08/13/proof-of-work-vs-proof-of-stake/ สืบค้นเมื่อ 11 พฤษภาคม 2018, footnotes
  4. Ameer Rosic, 2017. Proof of work vs Proof of Stake: Basic mining guide – proof of work and mining. ที่มา: https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  5. Guest Author, 2017. The History and evolution of Proof of Stake ที่มา:https://cointelegraph.com/news/the-history-and-evolution-of-proof-of-stake สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  6. Shaan Ray, 2017. What is Proof of Stake? ที่มา:https://hackernoon.com/what-is-proof-of-stake-8e0433018256 สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  7. Investorpedia.com n.d. Proof of Stake(Pos) ที่มา:https://www.investopedia.com/terms/p/proof-stake-pos.asp สืบค้นเมื่อ 11 พฤษภาคม 2018, footnotes
  8. Guest Author, 2017 The history and evolution of Proof of Stake ที่มา:https://cointelegraph.com/news/the-history-and-evolution-of-proof-of-stake สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  9. EURI10, 2016 What exactly is the Nothing-At-Stake problem? ที่มา:https://ethereum.stackexchange.com/questions/2402/what-exactly-is-the-nothing-at-stake-problem สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  10. Shaan Ray, 2017. What is Proof of Stake?: Block Selection Methods ที่มา:https://hackernoon.com/what-is-proof-of-stake-8e0433018256 สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  11. Wikipedia, n.d. Proof of Stake: Block Selection Variants ที่มา:https://en.wikipedia.org/wiki/Proof-of-stake สืบค้นเมื่อ 12 พฤษภาคม 2018, footnotes
  12. Shaan Ray, 2017. What is Proof of Stake?: Block Selection Methods, Coin Age-based selection, ที่มา:https://hackernoon.com/what-is-proof-of-stake-8e0433018256 สืบค้นเมื่อวันที่ 12 พฤษภาคม 2018, footnotes
  13. Masternode.online n.d. Dash Masternode stats ที่มา:https://masternodes.online/currencies/DASH/ สืบค้น ณ วันที่ 13 พฤษภาคม 2018, footnotes