LEVEL 2 · กลไกเต็มวงจร
mining — จับฉลากด้วยไฟฟ้า
โจทย์ท้ายบทที่แล้วบวกคำถามข้อ 3 จากบทที่ 3 มาบรรจบกันตรงนี้: ใครควรได้สิทธิ์เขียนหน้าถัดไปของสมุด? เปิดให้เขียนฟรีทุกคนพร้อมกัน สมุดเละและโจรพิมพ์สมุดปลอมได้ไม่จำกัด แต่ถ้า เลือก ใครสักคนมาเป็นคนเขียน ก็เท่ากับตั้งนายทะเบียนกลับมาทั้งที่เพิ่งไล่ออกไป — ทางออกของ bitcoin แหวกทุกตำรา: ไม่เลือกใครเลย ให้ จับฉลาก แต่เป็นฉลากที่ต้องซื้อด้วยของจริงที่ปลอมไม่ได้ในโลกฟิสิกส์: พลังงาน
7.1 ปริศนาที่แก้ได้ทางเดียวคือ "ลองมั่วเป็นล้านล้านครั้ง"
กติกามีอยู่ว่า ใครอยากเขียนหน้าถัดไป ต้องหาเลขปริศนาตัวหนึ่ง (วงการเรียก nonce) มาแปะบนหัวกระดาษ โดยเลขนั้นต้องทำให้ hash ของทั้งหน้าออกมา "สวย" ตามเงื่อนไขที่ระบบกำหนด — เช่น ขึ้นต้นด้วยศูนย์ติดกันยาวเหยียด
จากบทที่ 6 คุณรู้แล้วว่า hash เปลี่ยนคาดเดาไม่ได้แม้ข้อมูลขยับตัวเดียว ดังนั้นจึง ไม่มีทางลัด: อยากได้ hash สวยต้องนั่งเปลี่ยนเลขแล้วลองใหม่ เปลี่ยนแล้วลองใหม่ วนไปหลักล้านล้านครั้งต่อวินาที ใครลองได้มากกว่าก็มีลุ้นเจอก่อน เหมือนลอตเตอรี่ที่ยิ่งซื้อหลายใบยิ่งมีสิทธิ์ถูก — แต่ตั๋วแต่ละใบจ่ายด้วยค่าไฟจริง เครื่องจริง ความร้อนจริง กระบวนการนี้ชื่อทางการว่า proof-of-work และคนที่ทำมันคือ miner (นักขุด)
ความงามซ่อนอยู่ที่ความไม่สมมาตรเดิมที่เราเจอมาแล้วสองบท: หา nonce ยากระดับโรงงาน แต่ ตรวจ ว่า nonce ถูกใช้เวลาเสี้ยววินาที — ทุกเครื่องในระบบจึงตรวจงานของ miner ได้ทันทีโดยไม่ต้องเชื่อใจใคร
nonce — ไล่เดาไปเรื่อย ๆ จนกว่า hash ของทั้งหน้าจะเข้าเงื่อนไข ไม่มีทางลัด ตั๋วฉลากทุกใบจึงจ่ายด้วยพลังงานจริง · แต่ความไม่สมมาตรคือหัวใจ: หายากระดับโรงงาน ตรวจง่ายเสี้ยววินาที ทุกเครื่องจึงตรวจงานกันเองได้โดยไม่ต้องเชื่อใจใคร (กระบวนการนี้ชื่อ proof-of-work)7.2 ระบบปรับความยากเองไม่ให้ใครเร่งสมุดได้
ถ้าเครื่องขุดทั้งโลกแรงขึ้นสิบเท่า ฉลากจะถูกเจอเร็วขึ้นสิบเท่าไหม? ไม่ — ทุก ๆ 2,016 หน้า (ราวสองสัปดาห์) ระบบจะวัดว่าช่วงที่ผ่านมาหน้าใหม่เกิดเร็วหรือช้ากว่าเป้า แล้วขยับความยากของปริศนาให้จังหวะกลับมาอยู่ที่ เฉลี่ยราวสิบนาทีต่อหน้า เสมอ กติกานี้ฝังในซอฟต์แวร์ ไม่มีใครสั่งขยับได้ — อัดเครื่องเข้ามาแค่ไหน สมุดก็เดินเท่าจังหวะเดิม (ทำไมต้องสิบนาที? เก็บคำถามนี้ไว้ บทที่ 12 ตอบ)
7.3 ทำไมคนแปลกหน้าถึงยอมเผาไฟให้ระบบ
ไม่มีใครขุดเพราะใจบุญ ทุกหน้าที่เขียนสำเร็จ กติกาอนุญาตให้ miner เขียนธุรกรรมพิเศษหนึ่งบรรทัดจ่ายรางวัลให้ตัวเอง: เหรียญใหม่จำนวนที่กติกากำหนด บวกค่าธรรมเนียมทุกบาทของธุรกรรมในหน้านั้น (ค่าธรรมเนียมจากบทที่ 5 เดินทางมาถึงกระเป๋าผู้รับตรงนี้เอง) — และนี่คือประตูเดียวในทั้งระบบที่เหรียญใหม่เกิดขึ้นได้ ข้อเท็จจริงเล็ก ๆ นี้จะกลายเป็นเรื่องใหญ่มากในบทที่ 11
มองถอยออกมาหนึ่งก้าวจะเห็นดีไซน์ที่ฉลาดเป็นบ้า: ระบบเอา ความโลภ ของคนแปลกหน้านับแสนที่ไม่รู้จักกัน มาผูกให้กลายเป็นยามเฝ้าสมุดโดยอัตโนมัติ — อยากได้รางวัลต้องเขียนหน้าที่ถูกกติกา เพราะหน้าที่ผิดกติกาจะถูกเครื่องอื่นปัดทิ้ง แปลว่าไฟที่เผาไปสูญเปล่า โกงระบบจึงเท่ากับเผาเงินตัวเอง