เราทราบกันดีอยู่แล้วว่า Bitcoin และ Blockchain คืออะไร แต่ทราบกันหรือไม่ว่า ระบวนการทำงานของ Blockchain ทำงานอย่างไร และเกี่ยวข้องกับ Bitcoin อย่างไร ทำไม Bitcoin จึงมีปริมาณสูงสุดที่ประมาณ 21 ล้าน BTC และมูลค่าของ Bitcoin มาจากที่ใด บทความนี้จะไขปริศนาให้กระจ่างเอง
หลักการทำงานของ Blockchain Technology
สำหรับสกุลเงินทั่วไป อาทิ สกุลเงินบาท สกุลเงินดอลลาร์ หรือสกุลเงินเยน สกุลเงินเหล่านี้ผู้คนสามารถจับต้องได้ในรูปแบบของเหรียญและธนบัตร โดยวิธีการเคลื่อนย้ายเหรียญและธนบัตรจากคนหนึ่งไปสู่อีกคนหนึ่งที่เราสามารถมั่นใจได้ว่าเงินนั้นถึงผู้รับแน่นอน คือการนำเงินเหล่านี้ไปให้ผู้รับด้วยมือของเราเอง
แต่เนื่องจากเงินดิจิทัลไม่สามารถที่จะจับต้องได้ในรูปแบบของเหรียญและธนบัตร การเคลื่อนย้ายจากคนหนึ่งไปสู่อีกคนหนึ่งก็ย่อมเป็นเรื่องยากที่จะดูแลให้เงินถึงผู้รับได้อย่างครบถ้วนโดยไม่มีข้อผิดพลาดใด ๆ ตามมา ทำให้จำเป็นต้องมี Middleman (ตัวกลาง) เช่น ธนาคารพาณิชย์ในการทำธุรกรรมทางการเงิน เช่น การโอนเงินผ่าน Internet Banking หรือผ่านตู้ ATM
ในปัจจุบันและอนาคต เทคโนโลยี Blockchain ได้เข้ามามีบทบาทสำคัญต่อการทำธุรกรรมทางการเงินโดยการใช้เงินดิจิทัลเหล่านี้ เพราะ Blockchain สามารถช่วยทำให้เราเคลื่อนย้ายเงินดิจิทัลไปสู่ผู้รับได้อย่างถูกต้อง ปลอดภัย และสามารถตรวจสอบแหล่งที่มาได้
ซึ่งในบทความนี้ผู้เขียนจะยกตัวอย่างเงินดิจิทัลที่เป็นสกุลหลักคือ Bitcoin และอ้างอิงจากบทความ “Bitcoin : A Peer-to-Peer Electronic Cash System” (https://bitcoin.org/bitcoin.pdf) ของผู้ที่ใช้นามว่า Mr. Satoshi Nakamoto โดยหลักการทำงานของ Blockchain ที่กล่าวมาข้างต้นมีดังต่อไปนี้ (ดูรูปที่ 1)
รูปที่ 1 : หลักการทำงานของ Blockchain (Source : https://assets.weforum.org/editor/_DRLsawgrOCG3OwH3VP4o9VuR4HMAsBeRGFZSo_7RPk.png)
1.เมื่อมีธุรกรรมใหม่ที่เกี่ยวกับการแลกเปลี่ยน Bitcoin เกิดขึ้น ธุรกรรมนี้จะยังไม่สมบูรณ์ทันที รายละเอียดของธุรกรรมจะถูกคัดลอกไปยังทุกเครื่องคอมพิวเตอร์ที่เชื่อมต่อเครือข่าย Bitcoin (Bitcoin Network)
2.ในแต่ละ Node ของเครือข่าย Bitcoin จะมีสำเนาของ Block ที่ได้รับการยืนยันและตรวจสอบจาก Node ของเครือข่าย Bitcoin เรียบร้อยแล้ว และเชื่อมต่อกันตามลำดับ (Chain) ที่เหมือนกัน เนื่องจากอยู่ในเครือข่าย Bitcoin เดียวกัน แล้วเก็บสะสมข้อมูลรายละเอียดธุรกรรมที่เกิดขึ้นใหม่ต่าง ๆ ลงใน Block ล่าสุด ซึ่ง Block นี้จะยังไม่ถูกนำไปเชื่อมต่อกับ Chain ที่มีอยู่ เนื่องจากยังไม่ได้รับการยืนยันและตรวจสอบจาก Node อื่น ๆ
3.ในแต่ละ Node จะทำการหา Proof-of-Work และ Proof-of-Stake ของ Block แต่ละ Block เพื่อทำการยืนยันและตรวจสอบรายละเอียดของธุรกรรมทั้งหมดใน Block นั้น ซึ่ง Proof-of-Work และ Proof-of-Stake จะมีการอธิบายในลำดับถัดไป
4.เมื่อมี Node ที่พบ Proof-of-Work ของ Block เรียบร้อยแล้ว Block นั้นจะถูกประกาศไปยังทุก Node ในเครือข่าย Bitcoin
5.ทุก Node จะยอมรับ Block แล้วนำไปเชื่อมต่อกับ Chain ที่มีอยู่ก็ต่อเมื่อทุกรายละเอียดของธุรกรรมใน Block นั้นได้ถูกยืนยันและตรวจสอบความถูกต้องเรียบร้อยแล้ว
6.ทุก Node เชื่อม Block ใหม่เข้าสู่ Chain ที่มีอยู่ และมีการแลกเปลี่ยน Bitcoin ไปยังผู้รับเงิน
จากทั้งหมด 6 ขั้นตอนที่กล่าวมาข้างต้น สามารถช่วยให้เงินดิจิทัลเคลื่อนย้ายไปสู่ผู้รับได้อย่างถูกต้อง ปลอดภัย และสามารถตรวจสอบแหล่งที่มาได้ ซึ่งมีหลายกระบวนการที่ซับซ้อนและเข้าใจได้ยาก ซึ่งอยากจะอธิบายในลำดับถัดไป
ทำความรู้จัก Digital Signatures
เนื่องจากหลักการทำงานของ Blockchain มีการส่งรายละเอียดธุรกรรมไปยังเครือข่ายซึ่งจำเป็นที่จะต้องทำ Digital Signatures เป็นอันดับแรก โดย Digital Signatures เป็นกระบวนการยืนยันตัวตนเพื่อให้ผู้อื่นสามารถตรวจสอบได้ว่าผู้ทำธุรกรรมเป็นผู้ที่มีความประสงค์ที่จะทำธุรกรรมนั้นจริง ๆ
โดยผู้ทำธุรกรรมจะต้องใช้ Private Key ของตนเองในการ Sign Signature ซึ่งผู้ที่ตรวจสอบสามารถใช้ Public Key ของผู้ทำธุรกรรมตรวจสอบตัวตนได้ โดย (ดูรูปที่ 2) Private Key เปรียบเสมือนเป็นกุญแจที่ทุกคนที่อยู่ในเครือข่าย Bitcoin ต้องมีและห้ามเปิดเผยให้คนอื่นทราบ เนื่องจากใช้ในการสร้าง Digital Signature สำหรับการทำธุรกรรม เช่น การโอน Bitcoin ให้บุคคลอื่น ดังนั้นถ้ามีคนทราบ Private Key ของเรา คนคนนั้นก็สามารถโอน Bitcoin ของเราไปให้ใครก็ได้
รูปที่ 2 : ภาพรวมการทำงานของ Digital Signature
(Source : www.laserfiche.com)
Public Key เป็นกุญแจที่ทุกคนที่อยู่ในเครือข่าย Bitcoin จำเป็นต้องมีและสามารถบอกให้บุคคลอื่นทราบได้ เพื่อให้คนในเครือข่ายทั้งหมดสามารถยืนยันความถูกต้องของธุรกรรมย้อนหลังของเราได้ หรือโดยทั้ง Public Key และ Private Key ในคู่หนึ่ง ๆ ถือได้ว่าเป็นตัวแทนของผู้โอนและผู้รับโอนโดยจะไม่ทราบชื่อจริงว่าเป็นใคร แต่ถ้าจะตรวจสอบตัวตนของผู้โอนและผู้รับโอนจริง ๆ ก็สามารถที่จะทำได้เช่นกัน
Digital Signature ถูกนำมาใช้ในการแสดงตัวตนของผู้โอนเงินและแนบไปพร้อมกับข้อมูลธุรกรรมเพื่อใช้ในการยืนยันตัวตนว่าเป็นผู้โอนจริง ๆ และรหัสดังกล่าวจะเปลี่ยนทันทีถ้ามีการดัดแปลงข้อมูลธุรกรรมที่แนบไป
รูปที่ 3 : การเข้ารหัส Hash ของ Bitcoin
(Source : http://apprize.info/payment/bitcoin/5.html)
นอกจากนี้ Digital Signatures ยังทำให้เราสามารถตรวจสอบรายละเอียดของธุรกรรมนั้นว่ามีความถูกต้องหรือไม่ โดยการใช้ Cryptographic Hash Function (ดูรูปที่ 3) ซึ่งเป็นกระบวนการแปลงข้อมูลดิบให้กลายเป็นผลลัพธ์ที่เรียกว่า “Digest” ซึ่งอาจจะเป็นค่า Hash โดยความยาวของ Digest ขึ้นอยู่กับ Cryptographic Hash Function เป็น One-Way Function คือถ้าทราบ Digest ไม่สามารถแปลงกลับให้กลายเป็นข้อมูลดิบได้ และยังมีความไวต่อข้อมูลดิบด้วยเช่นกัน
ยกตัวอย่างเช่น Cryptographic Hash Function ของ Bitcoin คือ SHA-256 ผลที่ได้จะเป็น Digest ซึ่งเป็นค่า Hash ที่มีความยาว 256 Bit โดยค่า Hash นี้จะเปลี่ยนทันทีเมื่อข้อมูลดิบมีการเปลี่ยนแปลง ดังนั้นถ้าข้อมูลธุรกรรมมีการเปลี่ยนแปลงไป ค่า Hash ที่ได้จากสำเนาธุรกรรมจะไม่ตรงกับค่า Hash ของรายละเอียดธุรกรรมที่ได้จากผู้ทำธุรกรรม (ดูรูปที่ 4)
รูปที่ 4 : การเข้ารหัส Hash ของ Bitcoin ที่ข้อมูลมีการเปลี่ยนแปลง
(Source : http://apprize.info/payment/bitcoin/5.html)
ทำความเข้าใจกับ Proof-of-Work และ Proof-of-Stake
Proof-of-Work เป็นโจทย์ปัญหาหนึ่งที่หาคำตอบได้ยาก แต่สามารถตรวจสอบความถูกต้องได้ง่าย โดย Proof-of-Work ใน Bitcoin เกี่ยวข้องกับการคำนวณค่า Hash ของ Block ซึ่งในแต่ละ Block จะมีค่า Difficulty ที่ถูกสร้างขึ้นจากเครือข่ายของ Bitcoin ถ้าค่า Hash ที่คำนวณได้มีค่าน้อยกว่าค่า Difficulty ที่ถูกสร้างขึ้นใน Block นั้นแสดงว่าได้ค้นพบคำตอบของ Proof-of-Work เรียบร้อยแล้ว และ Block นั้นจะสามารถเชื่อมต่อเข้าสู่ Chain ที่มีอยู่ได้
สำหรับค่า Difficulty หรือระดับความยากของการแก้ปัญหาจะมีการเปลี่ยนแปลงระดับความยากของการแก้โจทย์ปัญหาทุก ๆ 2016 Blocks ที่ถูกค้นพบ เพื่อให้โดยเฉลี่ยแล้วจะมี Block ใหม่เข้าสู่ Chain ได้ทุก ๆ 10 นาที (ดูรูปที่ 5)
ในขณะที่ Node กำลังแก้โจทย์ปัญหา Proof-of-Work อยู่นั้น จะมีการตรวจสอบความเป็นเจ้าของ Bitcoin ว่าผู้ทำธุรกรรม มีจำนวน Bitcoin เพียงพอต่อการทำธุรกรรมที่ต้องการได้ การตรวจสอบนี้เรียกว่า “Proof-of-Stake”
รูปที่ 5 : ระดับ Difficulty ของ Proof-of-Work
(Source : https://blockchain.info/charts/difficulty?timespan=all)
Bitcoin Incentive for Miners
เมื่อนักขุด (Bitcoin Miner) สามารถยืนยัน Block ได้แล้ว Block นั้นจะถูกเชื่อมต่อกับ Block ก่อนหน้ากลายเป็น Chain ที่ยาวขึ้น ในขณะที่นักขุดจะได้ Bitcoin เป็นรางวัลตอบแทนที่ช่วยยืนยันธุรกรรมทางการเงินดิจิทัลให้ผู้อื่นเป็นแรงจูงใจในการช่วยยืนยันธุรกรรมต่อไป
การตอบแทน Bitcoin จากการทำ Bitcoin Mining เริ่มต้นในปีค.ศ. 2009 เงินรางวัลในช่วงเวลานั้นเท่ากับ 50 BTC ต่อ 1 Block ระบบถูกออกแบบให้ลดเงินรางวัลเหลือครึ่งหนึ่งจากเดิมทุก ๆ 210,000 Blocks ที่ถูกยืนยัน โดยปกติค่า Difficulty จะถูกปรับอัตโนมัติให้เวลาในการทำ Proof-of-Work ในแต่ละ Block จะถูกยืนยันโดยเฉลี่ยในเวลาประมาณ 10 นาที หมายความว่า Bitcoin ที่เป็นเงินรางวัลจะถูกลดลงเหลือครึ่งหนึ่งจากเดิมโดยใช้เวลาประมาณ 2,100,000 นาที หรือประมาณ 4 ปี (ดูรูปที่ 6)
รูปที่ 6 : Bitcoin Reward Drop by Half
กล่าวคือ ประมาณปีค.ศ. 2013 รางวัลสำหรับการยืนยัน 1 Block จะเหลือ 25 BTC ซึ่งหลักการนี้สามารถช่วยแก้ไขปัญหาเงินเฟ้อ หรือภาวะที่มีปริมาณ Bitcoin ล้นตลาดจนอาจทำให้ Bitcoin มีมูลค่าต่ำลงได้
ทำไมจำนวน Bitcoin ถึงมากที่สุดประมาณ 21 ล้าน BTC ?
เนื่องจาก Bitcoin มีการปรับค่า Difficulty จึงถูกปรับอัตโนมัติให้เวลาในการทำ Proof-of-Work ในแต่ละ Block ถูกยืนยันโดยเฉลี่ยในเวลาประมาณ 10 นาที และในทุก ๆ 210,000 Blocks ที่ถูกยืนยันได้ ระบบจะลดรางวัลที่เป็น Bitcoin ลงเหลือครึ่งหนึ่ง ตั้งแต่ปีค.ศ. 2009 ไปเรื่อย ๆ
จากรูปที่ 6 แสดงถึงปีที่จะลดรางวัลที่เป็น Bitcoin เหลือครึ่งหนึ่ง, จำนวน Bitcoin ที่จะได้ต่อ Block, จำนวน Bitcoin ทั้งหมดที่จะได้รับก่อนจะเกิดการลดรางวัลที่เป็น Bitcoin เหลือครึ่งหนึ่งในการลดครั้งถัดไป และจำนวน Bitcoin สะสมตั้งแต่เริ่มต้น
ซึ่งเป็นเรื่องที่น่ามหัศจรรย์อย่างยิ่ง ทั้ง ๆ ที่จำนวนปีเพิ่มขึ้นเรื่อย ๆ แต่จำนวน Bitcoin ทั้งหมดบนโลกใบนี้จะลู่เข้าสู่ 21,000,000 BTC ที่เป็นเช่นนี้เพราะการเกิดการลดรางวัลที่เป็น Bitcoin เหลือครึ่งหนึ่ง ทำให้เงินรางวัลลดลงครึ่งหนึ่งทุก ๆ 4 ปี จนมีค่าเข้าใกล้ 0 มาก ๆ แต่ไม่มีทางที่เงินรางวัลจะเท่ากับ 0 ได้อย่างแน่นอน
หมายความว่า แท้จริงแล้วต่อให้ Bitcoin ทั้งหมดมีประมาณ 21,000,000 BTC มันก็ยังคงเพิ่มจำนวนอยู่ เพียงแต่เงินรางวัลมีจำนวนที่น้อยมาก ๆ เข้าใกล้ 0 (ดูรูปที่ 7) จนสามารถบอกได้ว่า Bitcoin ทั้งหมดมีประมาณ 21,000,000 BTC โดยเหตุการณ์นี้จะเกิดขึ้นอีกประมาณปีค.ศ. 2133 ซึ่งหลังจากนั้นรางวัลของการยืนยันธุรกรรมอาจจะกลายเป็นค่า Transaction Fees ของผู้ทำธุรกรรมเพียงอย่างเดียว และที่สำคัญ แนวโน้มมูลค่า Bitcoin น่าจะสูงขึ้นอย่างแน่นอน
กล่าวโดยสรุป เทคโนโลยี Blockchain เป็นนวัตกรรมใหม่ที่สามารถทำให้เกิดการเปลี่ยนแปลงได้อย่างมากมายต่อการทำธุรกรรมทางอิเล็กทรอนิกส์ในโลกของเรา จะเกิดอะไรขึ้นถ้าการทำธุรกรรมทางการเงินสามารถทำได้โดยไม่ต้องผ่านธนาคารและมีความมั่นคงปลอดภัยในระดับที่สามารถตรวจสอบที่มาที่ไปได้ จะเกิดอะไรขึ้นถ้าเราสามารถเคลื่อนย้ายหุ้น สัญญา เพลง หรือโฉนดที่ดินได้โดยไม่ผ่านคนกลางใด ๆ
ซึ่งในปัจจุบันนี้มีหลายองค์กรใหญ่ ๆ ที่เริ่มใช้นวัตกรรมเหล่านี้ในการสร้างความได้เปรียบในการแข่งขันกันแล้วในหลายองค์กร ซึ่งเทคโนโลยี Blockchain นั้นได้เริ่มเข้ามาในประเทศไทยแล้ว ดังนั้นเราควรศึกษากระบวนการทำงานของเทคโนโลยี Blockchain ให้เกิดความเข้าใจอย่างลึกซึ้ง เพื่อให้เห็นโอกาสใหม่ ๆ ที่กำลังจะเข้ามาและสามารถนำเทคโนโลยี Blockchain มาเพิ่มขีดความสามารถในการแข่งขันขององค์กรได้อย่างยั่งยืนต่อไป