💬 : Satoshi ไม่ได้คิด Bitcoin ขึ้นมาในสุญญากาศ เขายืนอยู่บนไหล่ของยักษ์ใหญ่หลายคน โดยเฉพาะกลุ่มที่เรียกตัวเองว่า Cypherpunks ซึ่งเป็นกลุ่มนักเคลื่อนไหวที่เชื่อในการใช้การเข้ารหัส (Cryptography) เพื่อปกป้องความเป็นส่วนตัวและเสรีภาพ
ถ้าถามว่ามีใครบ้างที่คิดถึงเรื่อง "เงินสดดิจิทัล" (Digital Cash) ก่อน Satoshi คำตอบคือ มีหลายคนครับ แต่ยังไม่มีใคร "execute" มันให้สำเร็จในรูปแบบที่กระจายอำนาจ (Decentralized) ได้จริง
นี่คือบุคคลสำคัญที่ปูทางไว้:
- David Chaum: ถือเป็น "บิดาแห่งเงินสดดิจิทัล" เลยก็ว่าได้ เขาเสนอแนวคิด DigiCash ตั้งแต่ยุค 80s-90s ซึ่งเป็นระบบเงินอิเล็กทรอนิกส์ที่ปกปิดตัวตนได้ แต่ปัญหาก็คือ... มันยังต้องพึ่งพา "เซิร์ฟเวอร์กลาง" (Centralized) ของบริษัท DigiCash สุดท้ายก็ไปไม่รอด
- Adam Back: ผู้สร้าง Hashcash (1997) ซึ่งเป็นแนวคิดที่ใช้การ "พิสูจน์ด้วยการทำงาน" (Proof-of-Work) เพื่อป้องกันอีเมลขยะ (Spam) โดยผู้ส่งต้องใช้พลังคอมพิวเตอร์เล็กน้อยในการคำนวณก่อนส่ง Satoshi ได้นำแนวคิด Proof-of-Work นี้มาดัดแปลงใช้อย่างชาญฉลาด
- Wei Dai: เสนอแนวคิด b-money (1998) ซึ่งแทบจะเป็นพิมพ์เขียวของ Bitcoin เลยครับ เขาพูดถึงระบบ P2P ที่ผู้เข้าร่วมทุกคนมีบัญชีแยกประเภท (Ledger) ของตัวเอง และใช้ Proof-of-Work ในการสร้างเงิน แต่เขาก็ยังแก้ปัญหาสำคัญข้อหนึ่งไม่ได้
- Nick Szabo: เสนอแนวคิด Bit Gold (1998) ซึ่งก็ใกล้เคียง Bitcoin มาก โดยมองว่าสามารถสร้างสินทรัพย์ดิจิทัลที่ "หายาก" ได้เหมือนทองคำ โดยใช้ Proof-of-Work แต่ก็ยังติดปัญหาในทางปฏิบัติ
ความอัจฉริยะของ Satoshi ไม่ใช่การประดิษฐ์ชิ้นส่วน ทุกชิ้น ขึ้นมาใหม่ แต่คือการ "นำชิ้นส่วนที่มีอยู่แล้วมาประกอบกันในวิธีที่ไม่มีใครเคยทำมาก่อน" เพื่อแก้ปัญหาที่ทุกคนติดอยู่
ปัญหาที่ใหญ่ที่สุดที่คนอย่าง David Chaum, Wei Dai หรือ Nick Szabo แก้ไม่ได้คือ:
"ปัญหาการใช้เงินซ้ำซ้อน" (The Double-Spending Problem)
ในโลกดิจิทัล การ "copy" ข้อมูลนั้นง่ายมาก ถ้าผมมีไฟล์เงิน 100 บาท ผมจะทำสำเนาแล้วส่งให้คุณ 100 และส่งให้คนอื่นอีก 100 ได้ยังไง? ระบบรวมศูนย์ (แบบธนาคาร) แก้ปัญหานี้โดยการมีคนกลางคอยตัดยอดบัญชี แต่ในระบบ P2P ที่ไม่มีคนกลาง... ใครจะคอยห้าม?
ความคิดสร้างสรรค์ของ Satoshi คือการ "สังเคราะห์" ไอเดียเหล่านี้:
+ เขานำแนวคิด P2P Network (แบบ BitTorrent)
+ มาบวกกับ Public Key Cryptography (สำหรับการแสดงความเป็นเจ้าของ)
+ และบวกกับ Proof-of-Work (จาก Hashcash ของ Adam Back)
Satoshi ใช้ Proof-of-Work ไม่ใช่แค่เพื่อ "สร้างเงิน" (Mining) แต่ใช้มันเป็น "กลไกในการตกลงร่วมกัน" (Consensus Mechanism) ว่าธุรกรรมไหนเกิดขึ้นก่อนหรือหลัง
เขาสร้างสิ่งที่เรียกว่า Blockchain ขึ้นมา ซึ่งเป็นบัญชีแยกประเภทสาธารณะที่ "เรียงลำดับตามเวลา" (Timestamped) การที่จะโกงระบบ (Double-Spend) ได้ คุณต้องย้อนกลับไปแก้ไขประวัติศาสตร์ใน Blockchain ซึ่งการจะทำเช่นนั้นได้ คุณต้องมีพลังคอมพิวเตอร์ (Proof-of-Work) มากกว่าคนทั้งโลกรวมกัน ซึ่งแทบเป็นไปไม่ได้
การ "สังเคราะห์" แนวคิดเหล่านี้เพื่อแก้ปัญหา Double-Spending นี่แหละครับ คือความคิดสร้างสรรค์ที่ยิ่งใหญ่ ที่ทำให้ P2P Electronic Cash System สามารถ "execute" ออกมาให้โลกใช้งานได้จริงเป็นครั้งแรก
#siamstr #geministr #satoshinakamoto #creative #p2p #cash 👥💰
Login to reply
Replies (1)
1. รากเหง้าของปัญหา Double Spending มาจากไหน?
รากเหง้าของมันมาจาก ธรรมชาติพื้นฐานของ "ข้อมูลดิจิทัล" (Digital Information) ครับ
พูดให้ง่ายคือ:
- ในโลกกายภาพ (Physical World): ถ้าผมมีธนบัตร 100 บาทในมือ เมื่อผมยื่นให้คุณ ธนบัตรนั้นจะหายไปจากมือผม มันคือการ "ส่งมอบ" (Transfer) โดยสมบูรณ์ ธนบัตรมี "ภาวะการขาดแคลนในตัวเอง" (Inherent Scarcity)
- ในโลกดิจิทัล (Digital World): ถ้าผมมี "ไฟล์เงิน" 100 บาท เมื่อผมส่งให้คุณ ผมไม่ได้ "ยื่น" ให้ แต่ผม "คัดลอก" (Copy) มันส่งไปให้คุณ และไฟล์ต้นฉบับก็ยังอยู่ที่ผม ผมสามารถ "คัดลอก" ไฟล์ 100 บาทนี้ส่งให้คนอื่นอีกพันครั้งก็ได้
ปัญหา Double Spending คือปัญหาที่เกิดจากการที่ "เงินดิจิทัล" โดยพื้นฐานแล้วก็คือ "ข้อมูล" ชนิดหนึ่ง และข้อมูลนั้นสามารถทำซ้ำได้อย่างสมบูรณ์แบบและง่ายดาย
ในยุคก่อน Bitcoin ระบบธนาคารแก้ปัญหานี้โดยการใช้ "คนกลาง" (Centralized Authority)
ธนาคารคือ "ผู้ชี้ขาด" ครับ เงินของเราไม่ได้อยู่ในมือเราจริงๆ แต่เป็นแค่ตัวเลขในบัญชีกลาง (Central Ledger) ของธนาคาร เมื่อผมโอนเงินให้คุณ ผมแค่ส่งคำสั่งไปที่ธนาคาร แล้วธนาคารก็ไป "ตัด" ยอดของผม และ "เพิ่ม" ยอดของคุณ ปัญหา Double Spending จึงไม่เกิดขึ้น เพราะมีคนกลางคอยคุมบัญชีหนึ่งเดียวนี้ไว้
ความท้าทายที่แท้จริงที่เหล่า Cypherpunks พยายามแก้คือ: เราจะสร้างระบบเงินสด P2P ที่ไม่มีคนกลาง (ธนาคาร) ได้อย่างไร โดยที่ยังป้องกันการ "คัดลอก" เงินได้?
2. ในยุคนั้น มีใครพูดถึงสิ่งนี้บ้าง?
คำตอบคือ "ทุกคน" ที่พยายามสร้างเงินสดดิจิทัลครับ นี่คือปัญหาใหญ่ที่สุดที่ทุกคนรู้ว่าต้องแก้ให้ได้
คนที่พูดถึงและพยายามแก้ปัญหานี้อย่างจริงจังก่อน Satoshi ได้แก่:
David Chaum (ยุค 1980s-1990s):
- เขาคือ "บิดาแห่งเงินสดดิจิทัล" ตัวจริง เขาพูดถึงปัญหานี้ตั้งแต่ปี 1982
- เขาแก้ปัญหาด้วยการสร้าง DigiCash (eCash) ซึ่งใช้เทคนิคที่เรียกว่า Blind Signatures เพื่อสร้าง "เหรียญดิจิทัล" ที่มีความเป็นส่วนตัวสูง
- แต่... ระบบของ Chaum ก็ยังแก้ปัญหา Double Spending โดยการที่ต้องมี "ธนาคาร" (เซิร์ฟเวอร์กลางของ DigiCash) คอยตรวจสอบอยู่ดีว่าเหรียญนี้ถูกใช้ไปแล้วหรือยัง สุดท้ายเมื่อบริษัท DigiCash ล้มละลาย ระบบก็ล่มสลายไปด้วย
Wei Dai (1998):
- ในข้อเสนอ "b-money" ของเขา (ซึ่ง Satoshi อ้างอิงถึงใน White Paper) Wei Dai พูดถึงปัญหานี้โดยตรง
- เขาเสนอแนวคิดที่ก้าวหน้ามาก คือให้ผู้เข้าร่วมทุกคน "เก็บสำเนาบัญชีแยกประเภท (Ledger) ของตัวเอง"
- แต่เขาก็ยังติดปัญหาว่า แล้วจะทำให้ทุกคน "ตกลง" กันได้อย่างไรว่าบัญชีของใครคือบัญชีที่ถูกต้อง ถ้าไม่มีคนกลางคอยตัดสิน
Nick Szabo (1998):
- ในแนวคิด "Bit Gold" ของเขา Szabo ก็พยายามแก้ปัญหานี้โดยใช้ Proof-of-Work (คล้ายกับ Bitcoin) เพื่อสร้าง "ความหายาก" (Scarcity) ให้กับสินทรัพย์ดิจิทัล
- แต่แนวคิดของเขาก็ยังซับซ้อนและไม่สามารถแก้ปัญหาการตกลงร่วมกัน (Consensus) ได้อย่างสมบูรณ์
ปัญหาที่แท้จริงในทางวิชาการ: The Byzantine Generals' Problem
ถ้าจะพูดในเชิงวิชาการคอมพิวเตอร์ ปัญหา Double Spending คือรูปแบบหนึ่งของปัญหาคลาสสิกที่เรียกว่า "ปัญหาของนายพลไบแซนไทน์" (The Byzantine Generals' Problem)
- ปัญหานี้ถูกนำเสนอในปี 1982 โดย Leslie Lamport, Robert Shostak และ Marshall Pease
- แนวคิดคือ: มีกองทัพของนายพลหลายคนล้อมเมืองศัตรูอยู่ พวกเขาต้องตัดสินใจพร้อมกันว่าจะ "โจมตี" หรือ "ถอยทัพ"
- พวกเขาทำได้แค่ส่ง "ผู้ส่งสาร" ไปหากัน แต่ปัญหาคือ ในกลุ่มนายพล อาจมี "ผู้ทรยศ" (Byzantine General) ที่ต้องการให้แผนล่ม
- ผู้ทรยศอาจส่งสารบอกนายพล A ว่า "โจมตี" แต่ส่งสารบอกนายพล B ว่า "ถอยทัพ"
- คำถามคือ: กองทัพจะหาวิธี "ตกลงร่วมกัน" (Reach Consensus) ให้เป็นแผนเดียวที่ถูกต้องได้อย่างไร ในเมื่อไม่สามารถไว้ใจข้อมูลจากทุกคนได้ 100%?
ในโลก P2P ก็เหมือนกันครับ:
- เหล่า Node (คอมพิวเตอร์) ในเครือข่าย = เหล่านายพล
- แผนการรบ = ประวัติศาสตร์ธุรกรรม (Ledger) ที่ถูกต้อง
- ผู้ทรยศ = โหนดที่พยายาม "Double Spend" (ส่งธุรกรรมที่ขัดแย้งกัน 2 ฉบับออกไปพร้อมกัน)
ความอัจฉริยะของ Satoshi Nakamoto คือการนำ Proof-of-Work มาใช้เป็น "วิธีแก้ปัญหาของนายพลไบแซนไทน์" ได้สำเร็จเป็นครั้งแรกในทางปฏิบัติครับ
Satoshi สร้างกติกาว่า: "นายพล" (Miner) คนไหนที่ "ทำงาน" (แก้โจทย์คณิตศาสตร์) ได้สำเร็จก่อน คนนั้นคือผู้มีสิทธิ์ประกาศ "แผนการรบ" (Block ธุรกรรม) ที่ถูกต้อง และนายพลคนอื่นจะยอมรับแผนนั้นแล้วทำงานต่อ การจะ "โกง" หรือเป็น "ผู้ทรยศ" ได้ คุณต้องมีพลังในการทำงาน (กำลังขุด) มากกว่านายพลที่ซื่อสัตย์ทั้งหมดรวมกันนั่นเองครับ
#siamstr #root #doublespending #problem 🪖⛏️🎖️