บล็อกเชนมีกลไกการทำงานอย่างไร
บล็อกเชนคืออะไร
กล่าวโดยสรุปได้ว่า บล็อกเชนคือรายการบันทึกข้อมูลที่ทำงานเป็นบัญชีแยกประเภทดิจิทัลแบบกระจายอำนาจ ข้อมูลจะได้รับการจัดระเบียบเป็นบล็อกตามลำดับเวลาและรักษาความปลอดภัยด้วยการเข้ารหัส
บล็อกเชนรุ่นแรกสุดสร้างขึ้นในต้นปี 1990 เมื่อนักวิทยาศาสตร์คอมพิวเตอร์ Stuart Haber และนักฟิสิกส์ W. Scott Stornetta ใช้เทคนิคการเข้ารหัสในบล็อกเชนเพื่อรักษาความปลอดภัยจากการดัดแปลงข้อมูลกับเอกสารดิจิทัล
ผลงานของ Haber และ Stornetta เป็นแรงบันดาลใจให้กับการทำงานของนักวิทยาศาสตร์คอมพิวเตอร์และผู้ที่ชื่นชอบการเข้ารหัส ซึ่งนำไปสู่การสร้าง Bitcoin เป็นระบบการเงินอิเล็กทรอนิกส์แบบกระจายอำนาจครั้งแรก (หรือเรียกง่ายๆ ว่าเป็นคริปโทเคอร์เรนซีแรก)
แม้ว่าเทคโนโลยีบล็อกเชนจะเก่ากว่าคริปโทเคอร์เรนซี แต่หลังจากที่สร้าง Bitcoin ขึ้นในปี 2008 ผู้คนก็เริ่มให้การยอมรับในศักยภาพ ตั้งแต่นั้นมา ความสนใจในเทคโนโลยีบล็อกเชนก็ค่อยๆ เติบโตขึ้น และคริปโทเคอร์เรนซีก็ได้รับการยอมรับในวงกว้างมากขึ้น
เทคโนโลยีบล็อกเชนส่วนใหญ่ใช้เพื่อบันทึกธุรกรรมคริปโทเคอร์เรนซี แต่ก็เหมาะกับข้อมูลดิจิทัลประเภทอื่นๆ อีกมากมาย และสามารถนำไปใช้กับหลากหลายกรณีการใช้งานได้ด้วย Network บล็อกเชนที่เก่าแก่ ปลอดภัยที่สุด และใหญ่ที่สุดคือ Bitcoin ซึ่งได้รับการออกแบบด้วยการผสมผสานระหว่างการเข้ารหัสและทฤษฎีเกมอย่างรอบคอบและสมดุล
บล็อกเชนมีกลไกการทำงานอย่างไร
ในบริบทของคริปโทเคอร์เรนซี บล็อกเชนประกอบด้วยห่วงโซ่ของบล็อกที่มีความเสถียร โดยแต่ละบล็อกจะจัดเก็บรายการธุรกรรมที่ยืนยันเอาไว้ก่อนหน้า เนื่องจาก Network บล็อกเชนได้รับการดูแลโดยคอมพิวเตอร์จำนวนมากมายที่กระจายอยู่ทั่วโลก จึงทำหน้าที่เป็นฐานข้อมูลแบบกระจายอำนาจ (หรือบัญชีแยกประเภท) ซึ่งหมายความว่าผู้เข้าร่วมแต่ละราย (Node) จะรักษาสำเนาของข้อมูลบล็อกเชน และจะสื่อสารระหว่างกันเพื่อรับรองว่าทุกรายมีข้อมูลเหมือนกัน (หรือบล็อกเดียวกัน)
ดังนั้น ธุรกรรมบล็อกเชนจึงเกิดขึ้นภายใน Network ระดับโลกแบบ Peer-to-Peer (P2P) และนี่คือสิ่งที่ทำให้ Bitcoin เป็นสกุลเงินดิจิทัลที่มีการกระจายอำนาจ ที่ไร้ขอบเขตและต้านทานการเซ็นเซอร์ได้ นอกจากนี้ ระบบบล็อกเชนส่วนใหญ่นับว่ามีรูปแบบ Trustless (ไม่ต้องอาศัยความไว้วางใจ) เนื่องจากไม่ต้องการความไว้วางใจใดๆ เลย ไม่มีหน่วยงานใดที่มีอำนาจควบคุม Bitcoin อย่างเบ็ดเสร็จ
ศูนย์กลางของเกือบทุกบล็อกเชนคือกระบวนการขุดซึ่งอาศัยอัลกอริทึมแฮช Bitcoin ใช้อัลกอริทึม SHA-256 (Secure Hash Algorithm 256 บิต) ซึ่งใช้อินพุตที่มีความยาวเท่าใดก็ได้ และจะสร้างเอาต์พุตที่มีความยาวเท่ากันเสมอ เอาต์พุตที่สร้างขึ้นเรียกว่า "แฮช" และในกรณีนี้จะประกอบด้วยอักขระ 64 ตัว (256 บิต) เสมอ
ดังนั้นอินพุตเดียวกันจะส่งผลให้มีเอาต์พุตเดียวกันไม่ว่าจะทำซ้ำกี่ครั้งก็ตาม แต่หากมีการเปลี่ยนแปลงเพียงเล็กน้อยกับอินพุต เอาต์พุตก็จะเปลี่ยนไปโดยสิ้นเชิง ด้วยเหตุนี้ ฟังก์ชันแฮชจึงเป็นแบบกำหนดผลลัพธ์ และในโลกของคริปโทเคอเรนซี ส่วนใหญ่ออกแบบให้เป็นฟังก์ชันแฮชทางเดียว"
การเป็นฟังก์ชันทางเดียวหมายความว่า การคำนวณเอาต์พุตเพื่อหาว่าอินพุตคืออะไรแทบจะเป็นไปไม่ได้เลย เราอาจเดาได้แค่ว่าอินพุตคืออะไร แต่โอกาสที่จะเดาถูกนั้นต่ำมาก นี่คือหนึ่งในเหตุผลที่ทำให้บล็อกเชนของ Bitcoin มีความปลอดภัย
ตอนนี้เรารู้แล้วว่าอัลกอริทึมทำอะไร เราจะสาธิตวิธีการทำงานของบล็อกเชนด้วยตัวอย่างธุรกรรมง่ายๆ กัน
ลองนึกภาพถึง Alice และ Bob ที่ถือครอง Bitcoin เอาไว้ สมมติว่า Alice ติด Bob อยู่ 2 Bitcoin
เมื่อ Alice ส่ง 2 Bitcoin ให้กับ Bob หมายความว่า Alice เผยแพร่ข้อความพร้อมธุรกรรมที่เธอต้องการทำให้กับ Miner ทุกคนใน Network
ในการทำธุรกรรมนั้น Alice จะให้ Address ของ Bob และจำนวน Bitcoin ที่ต้องการส่งให้กับ Miner พร้อมด้วยลายเซ็นดิจิทัลและ Public Key ของเธอเอง ลายเซ็นจะสร้างขึ้นโดยใช้ Private Key ของ Alice และ Miner สามารถตรวจสอบได้ว่า Alice เป็นเจ้าของเหรียญเหล่านั้นจริงๆ หรือไม่
เมื่อ Miner แน่ใจว่าธุรกรรมนั้นถูกต้อง ก็จะเพิ่มธุรกรรมนั้นไว้ในบล็อกพร้อมกับธุรกรรมอื่นๆ และพยายาม Mine บล็อก ซึ่งทำได้โดยการประมวลผลบล็อกผ่านอัลกอริทึม SHA-256 เอาต์พุตจะต้องเริ่มต้นด้วยจำนวน 0 ที่แน่นอน จึงจะถือว่าถูกต้อง จำนวน 0 ที่ต้องการนั้นขึ้นอยู่กับสิ่งที่เรียกว่า "Difficulty" (ความยาก) ซึ่งจะเปลี่ยนแปลงไปตามพลังการประมวลผลที่มีอยู่ใน Network
หากต้องการสร้างเอาต์พุตแฮชด้วยจำนวน 0 ที่ต้องการในตอนเริ่มต้น Miner จะเพิ่มสิ่งที่เรียกว่า "Nonce" ลงในบล็อกก่อนที่จะรันผ่านอัลกอริทึม เนื่องจากการเปลี่ยนแปลงเล็กน้อยในอินพุตจะเปลี่ยนเอาต์พุตไปโดยสิ้นเชิง Miner จึงพยายามสุ่ม Nonce จนกว่าจะพบแฮชเอาต์พุตที่ถูกต้อง
เมื่อขุดบล็อกได้แล้ว Miner จะถ่ายทอดบล็อกที่ขุดขึ้นใหม่ไปให้กับ Miner รายอื่นๆ ทุกคน จากนั้นก็จะตรวจสอบเพื่อความแน่ใจว่าบล็อกนั้นถูกต้อง จึงจะเพิ่มลงในสำเนาของบล็อกเชน และธุรกรรมก็จะเสร็จสมบูรณ์ แต่ในบล็อกนั้น Miner ยังต้องรวมเอาต์พุตแฮชจากบล็อกก่อนหน้าเอาไว้ด้วยเพื่อให้บล็อกทั้งหมดเชื่อมโยงเข้าด้วยกัน จึงเป็นที่มาของชื่อบล็อกเชน นี่คือขั้นตอนสำคัญ เพราะเป็นกลไกวิธีสำหรับความไว้วางใจในระบบ
Miner ทุกคนมีสำเนาบล็อกเชนของตนเองบนคอมพิวเตอร์ และทุกคนก็ไว้วางใจบล็อกเชนที่มีงานคำนวณมากที่สุด ซึ่งเป็นบล็อกเชนที่ยาวที่สุด หาก Miner จะเปลี่ยนธุรกรรมในบล็อกก่อนหน้า แฮชเอาต์พุตสำหรับบล็อกนั้นก็จะเปลี่ยนไป ซึ่งกระทบต่อแฮชทั้งหมดหลังจากที่เปลี่ยนแปลงด้วยเช่นกันเนื่องจากบล็อกเหล่านั้นเชื่อมโยงกันด้วยแฮช Miner ที่ต้องการเปลี่ยนแปลงธุรกรรมจะต้องทำขั้นตอนทั้งหมดซ้ำเพื่อให้ทุกคนยอมรับว่าบล็อกเชนนั้นถูกต้อง ดังนั้นหาก Miner คิดจะโกง ก็จะต้องใช้พลังงานการประมวลผลของ Network มากกว่า 50% ซึ่งไม่น่าจะเป็นไปได้ การโจมตี Network เช่นนี้จึงเรียกว่าการโจมตี 51%
รูปแบบการทำให้คอมพิวเตอร์ทำงานเพื่อผลิตบล็อกเรียกว่า Proof-of-Work (PoW) และยังมีรูปแบบอื่นๆ เช่น Proof-of-Stake (PoS) ซึ่งไม่ต้องใช้พลังการประมวลผลมากนัก และตั้งใจใช้พลังงานไฟฟ้าให้น้อยลง พร้อมสามารถขยายการทำงานให้ครอบคลุมผู้ใช้ได้มากขึ้นด้วย