บันทึกการเงิน

บิตคอยน์ตั้งแต่ศูนย์: เงินที่ไม่มีใครเป็นเจ้าของทำงานยังไง

เห็นคำว่าบิตคอยน์มาสิบกว่าปี แต่พอมีคนถามว่ามันทำงานยังไง ก็ยังตอบไม่ได้สักที บทนี้เริ่มจากศูนย์ ไม่ต้องรู้อะไรมาก่อนเลยสักอย่าง

ภาพหยาบ ๆ ก่อน แล้วค่อยแกะทีละชิ้น

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

เงินหนึ่งก้อนเดินทางยังไง

ที่เหลือทั้งบทคือการแกะว่าแต่ละจังหวะในนี้ทำงานยังไง ทำไมตรวจแล้วโกงไม่ได้ ทำไมไฟฟ้าถึงเอามาใช้แข่งได้ และทำไมสมุดที่ทุกคนถือคนละเล่มถึงลงเอยเหมือนกันหมดโดยไม่มีใครสั่ง เริ่มจากคำว่าสมุดที่ว่านี้คืออะไรก่อน

ถ้าคุณถือเหรียญอยู่แล้ว

บทนี้ตอบว่ามันทำงานยังไง ไม่ได้ตอบว่าราคาจะไปทางไหนหรือควรซื้อเพิ่มไหม บอกไว้ตั้งแต่ตรงนี้จะได้ไม่ต้องรอจนจบ

แต่มีคำถามอีกชุดที่คนถืออยู่แล้วมักตอบไม่ได้ คือสิ่งที่ถืออยู่ตอนนี้คืออะไรกันแน่ ตรวจเองได้ไหมว่ามันมีอยู่จริง และถ้าที่ที่ฝากไว้ล้มขึ้นมาจะเหลืออะไร ชุดนี้ตอบได้ด้วยกลไกล้วน ๆ และบทนี้ตอบให้ครบ ถ้าอยากลัดไปดูก่อน ไปที่ กระเป๋าและกุญแจ กับ ตารางสามวิธีถือ ได้เลย แล้วค่อยย้อนกลับมาอ่านว่าทำไมมันถึงเป็นแบบนั้น

ภาค 1 จาก 7 ปัญหาที่มีมาก่อนบิตคอยน์ ก่อนจะเข้าใจว่ามันแก้อะไร ต้องเห็นก่อนว่าเงินทุกวันนี้ฝากความเชื่อไว้กับใคร และถ้าเอาคนนั้นออกไปจะพังตรงไหน

เงินในแอปธนาคารคือรายการหนึ่งในสมุดบัญชี

ลองนึกถึงไฟล์ xlsx ที่คนใช้จดรายรับรายจ่ายกันในชีวิตจริง หนึ่งบรรทัดคือหนึ่งรายการ วันที่ ใครจ่ายให้ใคร เท่าไร ธนาคารก็ถือของแบบนั้นอยู่เล่มหนึ่ง แค่ใหญ่กว่ามากและมีทุกคนอยู่ในนั้น ของชิ้นนี้เรียกว่า สมุดบัญชี ต่อจากนี้ผมจะเรียกสั้น ๆ ว่าสมุด

เงินในแอปธนาคารของคุณจึงไม่ได้อยู่ในมือถือ มันคือผลของรายการทุกบรรทัดที่เกี่ยวกับคุณในสมุดเล่มนั้น พอคุณกดโอน ธนาคารก็เขียนรายการใหม่เพิ่มลงไปอีกหนึ่งบรรทัด

สมุดบัญชี · หน้าหนึ่ง สมชาย รับเงิน 100 บาท สมชาย จ่าย ร้าน A 30 บาท ร้าน A จ่าย ร้าน B 10 บาท สมชาย จ่าย ร้าน B 20 บาท บวกลบเอง ยอดของสมชาย 100 − 30 − 20 = 50 บาท
ยอดเงินไม่ได้ถูกจดไว้ที่ไหนเลย ใครถือสมุดครบก็บวกลบเอาเองได้ ข้อนี้ดูเหมือนรายละเอียดเล็ก ๆ แต่มันคือรากของวิธีเก็บเงินทั้งหมดที่จะเล่าท้ายบท

จุดที่ต้องสังเกตไว้ตั้งแต่ตอนนี้ เพราะจะได้ใช้ยาวไปจนจบบท คือ ไม่มีบรรทัดไหนในสมุดที่จดยอดคงเหลือของใครเอาไว้เลย ยอดของแต่ละคนคือผลบวกลบของรายการที่ผ่านมาทั้งหมด ใครถือสมุดครบก็คำนวณเองได้ ส่วนรายการหนึ่งบรรทัดแบบนี้ ภาษาทางการเรียกว่า ธุรกรรม (transaction) อ่านว่า "แทรนแซกชัน" บทนี้จะใช้สองคำนี้สลับกันไป

ทำไมถึงอยากเอาสมุดออกจากมือคนกลาง

ทั้งระบบข้างบนเดินได้เพราะข้อเท็จจริงข้อเดียว คือ มีคนกลางหนึ่งรายที่ทุกคนยอมให้ถือสมุดเล่มจริง เล่มของธนาคารถูกเสมอ เพราะไม่มีเล่มอื่นในโลกให้เอามาเทียบ

สมชาย ร้าน A ร้าน B ธนาคาร สมุดบัญชีเล่มเดียว อำนาจที่มากับการถือเล่มเดียว · แก้ตัวเลขในบัญชีคุณได้ · อายัดหรือปฏิเสธการโอนได้ · ปิดทำการวันไหนก็ได้
ทุกเส้นวิ่งเข้าหาจุดเดียว คนที่ถือเล่มเดียวในโลกจึงได้อำนาจที่คนอื่นไม่มีมาด้วยโดยอัตโนมัติ ไม่ใช่เพราะเขาอยากได้ แต่เพราะโครงสร้างมันเป็นแบบนั้น

ตราบใดที่ธนาคารทำตัวดี ทุกอย่างก็เรียบร้อย แต่โครงสร้างแบบนี้แปลว่าอำนาจสามข้อนั้นอยู่ในมือเขาตลอดเวลา โดยไม่ต้องขออนุญาตคุณสักครั้ง ถ้าไม่อยากยกอำนาจก้อนนี้ให้ใคร ทางเดียวที่เหลือคือ ไม่ต้องมีเล่มกลาง ให้ทุกคนถือสำเนาของตัวเอง ใครจ่ายเงินให้ใครก็ประกาศออกไปให้ทุกคนได้ยิน แล้วต่างคนต่างจดลงเล่มของตัวเอง เครื่องที่ทำหน้าที่ถือสมุดแบบนี้เรียกว่า โหนด (node) แปลว่าจุดต่อในเครือข่าย

สมชาย สมุดของตัวเอง ร้าน A สมุดของตัวเอง ร้าน B สมุดของตัวเอง นาย ค. สมุดของตัวเอง ทุกเล่มต้องมีรายการ เหมือนกันเป๊ะ
จุดกลางหายไป ทุกคนถือเล่มของตัวเองและคุยกันตรง ๆ ราคาของความอิสระข้อนี้คือกติกาที่โผล่มาพร้อมกัน ว่าทุกเล่มต้องมีรายการเหมือนกัน

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

แล้วคนที่ไม่ได้เกี่ยวข้องต้องจดด้วยไหม

ต้องจดครับ ทุกคน แม้ไม่ได้เป็นคู่กรณีของรายการนั้นเลยสักนิด เพราะถ้านาย ค. ไม่จดรายการของสมชายวันนี้ วันหน้าที่ร้าน A เอาเงินก้อนนั้นมาจ่ายเขา เขาจะเปิดเล่มตัวเองแล้วไม่เจอว่าร้าน A ได้เงินมาจากไหน ก็ต้องปฏิเสธทั้งที่เงินนั้นถูกต้อง การจดทุกอย่างของทุกคนจึงเป็นราคาที่ต้องจ่ายเพื่อไม่ต้องเชื่อใจใคร และเป็นที่มาของตัวเลขขนาดสมุดที่จะโผล่มาอีกหลายรอบในบทนี้

กติกาข้อนี้พังได้ยังไง

สมชายมีเงิน 100 บาท และ 100 บาทนั้นปรากฏเหมือนกันในทุกเล่ม เย็นวันหนึ่งเขาสั่งของออนไลน์สองเจ้าพร้อมกัน ร้าน A กับร้าน B อยู่คนละจังหวัด ไม่รู้จักกัน ไม่ได้โทรหากัน

เขาเขียนใบสั่งจ่ายเงิน 100 บาทให้ร้าน A แล้วอีกสองวินาทีเขียนใบสั่งอีกใบ จ่ายเงิน 100 บาทก้อนเดิมให้ร้าน B ใบสั่งทั้งสองใบถูกต้องสมบูรณ์ในตัวมันเอง ไม่มีอะไรผิดให้ร้านไหนจับได้ และใบสั่งทั้งสองใบถูกประกาศออกไปหาทุกคน ไม่ได้ส่งให้ใครเป็นการส่วนตัว ลองกดเดินดูทีละจังหวะว่าเกิดอะไรขึ้นกับสมุดทั้งสามเล่ม

จ่ายเงินก้อนเดียวสองรอบ

ทุกคนทำถูกทุกขั้นตอน แต่ผลลัพธ์ยังพัง เพราะคำว่ามาก่อนไม่มีคำตอบเดียว มันแปลว่ามาก่อนสำหรับใคร

ธนาคารไม่เจอปัญหานี้เพราะมีเล่มเดียว ใบไหนถึงเล่มนั้นก่อนก็คือมาก่อน จบ พอเอาเล่มกลางออกไป แต่ละเล่มก็มีลำดับของตัวเอง ปัญหาข้อนี้ชื่อ ปัญหาใช้เงินซ้ำ (double-spend) อ่านว่า "ดับเบิลสเปนด์" แปลตรงตัวว่าจ่ายซ้ำ ที่เหลือของบทนี้คือการไล่ดูว่าคนแก้ปัญหาข้อนี้กันยังไง

แล้วใครมีสิทธิ์เขียนหน้าถัดไป

ปัญหาถูกบีบเหลือคำถามเดียวแล้ว คือใครเป็นคนตัดสินว่าลำดับของใครถูก วิธีที่ทุกคนคิดออกเป็นอันดับแรกคือโหวต ให้ทุกโหนดยกมือว่าเห็นใบไหนก่อน แล้วถือเสียงข้างมากเป็นข้อยุติ

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

โจทย์ที่ค้างอยู่

สมุดกระจายไปถึงทุกคนแล้ว แต่ยังไม่มีวิธีตัดสินว่าใบไหนมาก่อน และโหวตด้วยจำนวนโหนดก็ใช้ไม่ได้ คำถามที่ต้องตอบให้ได้คือ จะทำให้การเสนอหน้าใหม่ในสมุดมีต้นทุนที่ปลอมไม่ได้ยังไง

ภาค 2 จาก 7 เครื่องมือสามชิ้นที่ทำให้ไม่ต้องเชื่อใจใคร แฮช คู่กุญแจ และการร้อยหน้ากระดาษเข้าด้วยกัน สามชิ้นนี้คือของทั้งหมดที่ต้องรู้จักก่อนไปดูการขุด

แฮช: เครื่องบดที่ย้อนกลับไม่ได้

แฮช (hash) อ่านว่า "แฮช" ในภาษาอังกฤษแปลว่าสับให้ละเอียดแล้วคลุกรวมกัน เมนูแฮชบราวน์ที่เป็นมันฝรั่งสับก็มาจากคำเดียวกัน ซึ่งตรงกับสิ่งที่มันทำพอดี คือรับข้อความยาวแค่ไหนก็ได้ สับจนละเอียด แล้วคืนออกมาเป็นเลขชุดหนึ่งที่ยาวเท่ากันเสมอ

ตัวที่ใช้กันในบทนี้ชื่อ SHA-256 อ่านว่า "ชาสองห้าหก" ผลลัพธ์ของมันคือ เลข 0 กับ 1 ต่อกัน 256 ตัว ซึ่งเขียนแบบนั้นแล้วยาวจนอ่านไม่ไหว คนเลยย่อมันด้วยเลขฐานสิบหก คือใช้สัญลักษณ์ 0 ถึง 9 กับ a ถึง f แทน แล้วมันจะเหลือแค่ พอดี

1 · ยาวแค่ไหนก็ได้ผลเท่ากัน "hello" 2cf24dba5fb0a30e26e83b2ac5b9e29e… ทั้งบทคัดย่อของ Satoshi 49a46b5ceddac62223f4299f638a8103… 2 · เปลี่ยนตัวเดียว เปลี่ยนทั้งชุด "hello" 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 "hellO" 04a6f55face2f46be8c23f627d539827615851e10751b63ec59db6d2c706b770 สีเขียวคือตำแหน่งที่บังเอิญตรงกัน นับได้ 3 ตัวจาก 64 3 · เดินหน้าได้ ถอยหลังไม่ได้ ข้อความ แฮช
คุณสมบัติสามข้อที่ทำให้แฮชมีค่า แฮชในภาพคำนวณจากข้อความจริงตอนสร้างหน้านี้ คู่กลางต่างกันแค่ตัวอักษรสุดท้าย ผลที่ได้จึงไม่เหลือเค้าเดิม

ข้อที่สามคือข้อที่จะกลายเป็นหัวใจของทั้งระบบในอีกสองหัวข้อข้างหน้า ลองเล่นดูก่อนครับ พิมพ์อะไรลงไปก็ได้ แล้วดูว่าแฮชเปลี่ยนยังไง

HASH LAB

ก่อนหน้า

-

-
SHA-256 กำลังคำนวณ

ตัวที่ระบายเขียวคือตำแหน่งที่บังเอิญตรงกับผลก่อนหน้า ที่เหลือเปลี่ยนหมด

กุญแจสองดอกที่ทำให้ไม่ต้องเชื่อใจใคร

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

ไอเดียที่พลิกเรื่องนี้คือ แยกความลับออกเป็นสองดอกที่คู่กัน ดอกหนึ่งเก็บไว้คนเดียวเรียกว่า กุญแจส่วนตัว (private key) อีกดอกแจกให้ทั้งโลกเรียกว่า กุญแจสาธารณะ (public key) ของที่เซ็นด้วยดอกแรก ตรวจได้ด้วยดอกที่สอง แต่จากดอกที่สองย้อนกลับไปหาดอกแรกไม่ได้

ทำไมเรียกว่ากุญแจ ทั้งที่ไม่มีอะไรให้ล็อก

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

ตรงนี้ต่อกับหัวข้อที่แล้วพอดี กุญแจส่วนตัวคือเลข 256 บิต หน้าตาเหมือนแฮชเป๊ะ ต่างกันแค่ที่มา แฮชได้มาจากการบดข้อความ ส่วนกุญแจได้มาจากการสุ่ม

ตอนนี้สมมติไปก่อนว่าคุณมีกุญแจคู่หนึ่งอยู่แล้ว เดี๋ยวหัวข้อกระเป๋าข้างล่างจะเล่าว่ามันเก็บไว้ยังไง เวลาจ่ายเงิน คุณ เซ็น ใบสั่งจ่ายด้วยกุญแจส่วนตัว ผลที่ได้เรียกว่า ลายเซ็นดิจิทัล (digital signature) ซึ่งคำนวณจากเนื้อความของใบสั่งรวมกับกุญแจของคุณ มันจึงผูกกับใบนั้นใบเดียว ก็อปไปแปะบนใบอื่นไม่ได้ และไม่มีใครเห็นกุญแจส่วนตัวของคุณเลยสักคน

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

ที่อยู่คืออะไร และใครสร้างก็ได้จริงหรือ

เวลาจะให้ใครโอนเงินมาหาคุณ ต้องมีอะไรสักอย่างให้เขากรอกเป็นปลายทาง สิ่งนั้นเรียกว่า ที่อยู่ (address) เป็นตัวอักษรชุดหนึ่งหน้าตาแบบ bc1q... เทียบง่าย ๆ คือเลขบัญชี ใครเห็นก็โอนเข้าได้ แต่เห็นแล้วเอาเงินออกไม่ได้

ก่อนจะไปว่าที่อยู่มาจากไหน ลองดูภาพรวมก่อนว่าเวลา A โอนให้ B จริง ๆ มันเดินยังไง ตั้งแต่ต้นจนจบ ของสามชิ้นที่คุยกันมาถูกใช้จังหวะไหนบ้าง

1 B สร้างที่อยู่ของตัวเองขึ้นมา ยังไม่ต้องบอกใคร 2 B ส่งที่อยู่นั้นให้ A ทางไหนก็ได้ แชต อีเมล คิวอาร์โค้ด 3 A เขียนใบสั่งจ่าย ระบุปลายทางเป็นที่อยู่ของ B 4 A เซ็นใบสั่งนั้นด้วยกุญแจส่วนตัวของ A เอง 5 A ประกาศใบสั่งออกไปให้ทุกโหนดได้ยิน 6 ทุกโหนดตรวจลายเซ็นด้วยกุญแจสาธารณะของ A แล้วจดลงเล่มของตัวเอง
ไม่มีจังหวะไหนเลยที่ B ต้องขออนุญาตใครก่อนจะมีที่อยู่ และไม่มีจังหวะไหนที่กุญแจส่วนตัวของ A ออกจากเครื่องตัวเอง สิ่งที่วิ่งอยู่ในสายมีแค่ที่อยู่ ใบสั่ง และลายเซ็น

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

ที่อยู่ไม่ได้มาจากไหนไกล มันคือ แฮชของกุญแจสาธารณะ ของคุณเอง สามอย่างนี้จึงต่อกันเป็นสายเดียวที่เดินได้ทางเดียว

กุญแจส่วนตัว เลขสุ่มขนาด 256 บิต คำนวณ ทางเดียว กุญแจสาธารณะ แจกได้ ไม่เป็นไร แฮช ที่อยู่ bc1q... ทางเดียว ย้อนกลับไม่ได้
กุญแจส่วนตัวเดินไปทางเดียวจนกลายเป็นที่อยู่ที่คุณเอาไปแปะให้คนโอนเข้าได้อย่างสบายใจ ย้อนกลับจากที่อยู่มาหากุญแจส่วนตัวคือสิ่งที่ทำไม่ได้ นี่คือเหตุผลที่ทำกุญแจหายแล้วไม่มีใครกู้ให้

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

แล้วสุ่มไปชนของคนอื่นได้ไหม

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

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

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

ร้อยหน้ากระดาษให้ฉีกออกไม่ได้

การจัดลำดับต้องใช้ของสองชิ้น ชิ้นแรกคือทำให้สมุดที่จดไปแล้วแก้ย้อนหลังไม่ได้ ชิ้นที่สองคือทำให้การเสนอหน้าใหม่มีต้นทุน หัวข้อนี้ว่าด้วยชิ้นแรก

รายการโอนไม่ได้ถูกจดทีละรายการ แต่ถูกรวบเป็นก้อนแล้วจดลงสมุดทีเดียวทั้งก้อน ก้อนนี้เรียกว่า บล็อก (block) เทียบง่าย ๆ คือหน้ากระดาษหนึ่งหน้า และในแต่ละหน้า นอกจากรายการโอนแล้ว ยังมีอีกช่องหนึ่งที่จดไว้ด้วย คือ แฮชของหน้าก่อนหน้า

ทีนี้ลองนึกถึงคุณสมบัติข้อสองที่คุณเพิ่งกดเล่นเมื่อกี้ คือเปลี่ยนตัวเดียวเปลี่ยนทั้งชุด พอเอามาต่อกันแบบนี้ การแก้หน้ากลางเล่มจะทำให้แฮชของหน้านั้นเปลี่ยน ซึ่งทำให้ช่องที่จดไว้ในหน้าถัดไปไม่ตรง แล้วก็ลามต่อไปเรื่อย ๆ

บล็อก 1 ก่อนหน้า: 0000… ข้อมูล แฮช: 00a3… บล็อก 2 ถูกแก้ ก่อนหน้า: 00a3… ข้อมูลใหม่ แฮช: 7c11… บล็อก 3 ก่อนหน้า: 00b9… ข้อมูล ไม่ตรง บล็อก 4 พังตาม แก้จุดเดียว พังทั้งแถวที่เหลือ
แก้ตัวเลขในบล็อกที่สองเพียงตัวเดียว แฮชของมันเปลี่ยน ทำให้ช่องแฮชก่อนหน้าในบล็อกถัดไปไม่ตรง แล้วลามต่อไปจนสุดโซ่ การแก้อดีตจึงไม่ใช่การแก้จุดเดียว แต่คือการเขียนใหม่ทั้งแถว

แกะคำศัพท์: บล็อกเชน

โซ่ของบล็อกที่คุณเพิ่งเห็นในภาพนี้ มีชื่อเรียกที่คุณน่าจะเคยได้ยินมาก่อนอ่านบทความนี้ด้วยซ้ำ คือ บล็อกเชน (blockchain) อ่านว่า "บล็อกเชน" มาจาก block ที่แปลว่าก้อน รวมกับ chain ที่แปลว่าโซ่ ตรงตัวเลยว่าโซ่ของก้อน

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

ถ้าทุกหน้าต้องจดแฮชของหน้าก่อนหน้า แล้วหน้าแรกสุดของสมุดจดอะไร

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

แกะคำศัพท์: บล็อกกำเนิด

หน้าแรกนี้เรียกกันว่า บล็อกกำเนิด (genesis block) คำว่า genesis อ่านว่า "เจเนซิส" แปลว่าการเริ่มต้นหรือการถือกำเนิด เป็นชื่อเดียวกับหนังสือเล่มแรกของคัมภีร์ไบเบิล ที่ภาษาไทยเรียกว่าปฐมกาล ซึ่งเล่าเรื่องการสร้างโลก

และในหน้านั้นมีข้อความภาษาอังกฤษบรรทัดหนึ่งสลักเอาไว้ด้วย เป็นพาดหัวข่าวหน้าหนึ่งของหนังสือพิมพ์ The Times ฉบับวันที่ 3 มกราคม 2009 เรื่องรัฐมนตรีคลังอังกฤษที่กำลังจะอุ้มธนาคารเป็นรอบที่สอง ที่ทำให้การสลักตรงนั้นมีน้ำหนักคือสิ่งที่คุณเพิ่งเห็นในภาพข้างบนนี้เอง แก้หน้าไหนก็พังทั้งแถวที่เหลือ ข้อความบรรทัดนั้นจึงเป็นข้อความที่ลบไม่ได้อีกเลย ตราบใดที่ยังมีคนรันโปรแกรมนี้อยู่ ทำไมถึงเลือกพาดหัวข่าวนี้ และมันถูกเขียนค้างไว้ในโค้ดยังไง เก็บไว้เล่าในหัวข้อประวัติท้ายบท

ห้าบล็อกข้างล่างนี้ต่อกันจริงตามกติกาที่เพิ่งเล่า ลองแก้ข้อความในบล็อกไหนก็ได้ แล้วดูว่าเกิดอะไรขึ้นกับบล็อกที่อยู่ทางขวาของมัน

CHAIN LAB

บล็อกจะถือว่าใช้ได้ก็ต่อเมื่อแฮชขึ้นต้นด้วยเลขศูนย์สามตัว และช่องแฮชก่อนหน้าตรงกับแฮชจริงของบล็อกซ้ายมือ ช่อง "เลขที่หาได้" คือเลขที่ต้องเดาไปเรื่อย ๆ จนกว่าแฮชจะขึ้นต้นถูกเงื่อนไข

ขอสมมติไปก่อนหนึ่งเรื่อง

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

ส่วนคำถามว่าใครเป็นคนเดาเลขนั้น และเดาไปทำไม อยู่ในหัวข้อถัดไป

เครื่องที่ไม่ได้เก็บสมุดทั้งเล่ม จะเช็คว่าเงินเข้าแล้วยังไง

ลองกลับไปที่ร้านที่เพิ่งขายของให้สมชาย ก่อนจะยอมส่งของ ร้านต้องรู้ให้ได้ว่าธุรกรรมนั้น ถูกจดลงบล็อกไปแล้วจริง ไม่ใช่แค่ลอยอยู่ในห้องรอ เครื่องที่เก็บสมุดครบทั้งเล่มก็แค่เปิดดู จบ

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

บล็อกหนึ่งก้อนมีสองส่วน

ก่อนอื่นต้องผ่าบล็อกให้เห็นข้างในก่อน บล็อกหนึ่งก้อนแบ่งเป็น ส่วนหัว ที่มีขนาดคงที่ 80 ไบต์เสมอ กับ ตัวบล็อก ที่เก็บธุรกรรมทั้งกอง ซึ่งช่วงนี้เฉลี่ยราว ต่อบล็อก

ส่วนหัว · 80 ไบต์เสมอ ช่องสรุปธุรกรรม 32 ไบต์ + อีก 5 ช่อง ตัวบล็อก · ธุรกรรมราว 5,325 ใบ สมชาย จ่าย ร้าน A 1 BTC ร้าน A จ่ายซัพพลายเออร์ 0.4 BTC อ่านออกทุกใบ ไม่ได้ถูกปิดบัง ต้นไม้ คำนวณเอา ไม่ได้เก็บ เก็บเฉพาะส่วนหัวทุกบล็อก ราว 77 MB เก็บสมุดครบทั้งเล่ม หนักกว่าราว 9,913 เท่า
ส่วนหัวมีขนาดคงที่ไม่ว่าจะมีธุรกรรมกี่ใบ เครื่องที่เก็บไม่ไหวจึงเลือกเก็บเฉพาะส่วนหัวของทุกบล็อกได้ ส่วนต้นไม้ที่วาดด้วยเส้นประไม่มีอยู่จริงในไฟล์ มันถูกคำนวณขึ้นมาใหม่เมื่อต้องใช้ ช่องสรุปธุรกรรมในส่วนหัวมีชื่อของมันอยู่ หัวข้อถัดไปจะเรียกชื่อนั้น

ส่วนหัวของทุกบล็อกรวมกันหนักแค่ราว ซึ่งมือถือเครื่องไหนก็เก็บได้สบาย โจทย์จึงเหลือข้อเดียว คือมีแค่ส่วนหัว จะเช็คธุรกรรมที่อยู่ในตัวบล็อกได้ยังไง

ย่อธุรกรรมทั้งกองให้เหลือแฮชเดียว

ในส่วนหัวมีช่องหนึ่งชื่อ รากเมอร์เคิล เป็นแฮชตัวเดียวขนาด 32 ไบต์ ที่สรุปธุรกรรมทั้งกองไว้ สร้างจากโครงสร้างที่เรียกว่า ต้นไม้เมอร์เคิล (Merkle tree) อ่านว่า "เมอร์เคิลทรี" ตั้งตามชื่อ Ralph Merkle อ่านว่า "ราล์ฟ เมอร์เคิล" นักวิทยาการรหัสลับที่จดสิทธิบัตรวิธีนี้ไว้ตั้งแต่ปี 1979

แกะคำศัพท์: ทำไมเรียกต้นไม้ และทำไมรากอยู่ข้างบน

เรียกว่าต้นไม้เพราะรูปร่างมันแตกออกเป็นกิ่งจากจุดเดียว ของที่แตกต่อไม่ได้แล้วเรียกว่า ใบ (leaf) อ่านว่า "ลีฟ" ซึ่งที่นี่คือธุรกรรมแต่ละใบ ส่วนจุดเดียวที่ทุกอย่างมารวมกันเรียกว่า ราก (root) อ่านว่า "รูท"

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

วิธีสร้างง่ายมาก แฮชธุรกรรมทีละใบ แล้วจับผลลัพธ์มาเข้าคู่กันแฮชอีกรอบ จำนวนจะเหลือครึ่งหนึ่ง ทำซ้ำไปเรื่อย ๆ จนเหลือแฮชเดียว นั่นคือราก

สองข้อที่ต้องรู้ก่อนไปต่อ

ถ้าชั้นไหนมีจำนวนคี่ ตัวสุดท้ายจะถูกจับคู่กับตัวมันเอง ชั้นที่มี 3 ตัว จึงกลายเป็นคู่ (1, 2) กับ (3, 3) ได้ผลออกมา 2 ตัว แล้วเดินต่อตามปกติ

ลำดับมีผล เพราะแฮชของ A ต่อ B ไม่เท่ากับแฮชของ B ต่อ A แต่ไม่มีใครเผลอสลับได้ เพราะลำดับไม่ใช่สิ่งที่คนคำนวณเลือกเอง มันคือลำดับที่ธุรกรรมเรียงอยู่ในตัวบล็อกอยู่แล้ว ใครเปิดบล็อกก้อนเดียวกันก็ได้รากเดียวกันเสมอ ส่วนคนที่ขยับลำดับ นั่นคือเขาเปลี่ยนบล็อกไปแล้ว ไม่ใช่คำนวณผิด

แฮชของ 1 กับ 2 แฮชของ 3 กับ 3 ตัวที่ 1 ตัวที่ 2 ตัวที่ 3 ตัวที่ 3 ไม่มีคู่ จึงจับกับตัวเอง
ชั้นที่มีสามตัว ตัวสุดท้ายถูกจับคู่กับตัวมันเอง จำนวนจึงลดลงได้ตามปกติโดยไม่ต้องมีกติกาพิเศษอะไรเพิ่ม
รากเมอร์เคิล แฮชคู่ แฮชคู่ แฮชคู่ แฮชคู่ แฮชคู่ แฮชคู่ ใบ 1 ใบ 2 ใบ 3 ใบ 4 ใบ 5 ใบ 6 ใบ 7 ใบ 8
ธุรกรรมแปดใบถูกจับคู่ขึ้นไปทีละชั้นจนเหลือแฮชเดียว แก้ใบไหนหรือสลับลำดับใบไหน รากก็เปลี่ยนทันที แฮชตัวเดียวจึงผูกกับทั้งเนื้อหาและลำดับของทั้งบล็อก

ภาพเมื่อกี้เป็นต้นไม้ที่สร้างเสร็จแล้ว แต่ของจริงมันไม่ได้โผล่มาพร้อมกันทั้งต้น มันเกิดทีละชั้นจากล่างขึ้นบน กดไล่ดูทีละจังหวะได้ข้างล่างนี้ว่าชั้นไหนเกิดตอนไหน และแต่ละจังหวะจับคู่ตัวไหนกับตัวไหน

ก่อร่างต้นไม้ทีละชั้น

ช่องรากเมอร์เคิลในส่วนหัวยังว่าง

นี่ไม่ใช่การเข้ารหัส

การเข้ารหัสมีกุญแจไว้ถอดกลับ และมีไว้ปิดบังเนื้อหา ส่วนแฮชถอดกลับไม่ได้และไม่ได้ปิดบังอะไรเลย ธุรกรรมทุกใบยังอยู่ในตัวบล็อกแบบอ่านออกทุกตัวอักษร เข้ารหัสคือเอาเอกสารใส่ตู้เซฟ ส่วนแฮชคือชั่งน้ำหนักเอกสารทั้งกองแล้วจดตัวเลขไว้ เอกสารยังวางเปิดอยู่บนโต๊ะ แต่ถ้าใครสับเปลี่ยนแผ่นไหน น้ำหนักที่ชั่งใหม่จะไม่ตรงกับที่จด

ในไฟล์จริงมีของอยู่แค่สองอย่าง คือส่วนหัวกับรายการธุรกรรม แฮชคู่ทุกตัวในภาพไม่ได้ถูกเก็บไว้ที่ไหนเลย มันถูกคำนวณขึ้นมาใหม่ทุกครั้งที่ต้องใช้ สิ่งเดียวที่ถูกเก็บคือรากตัวเดียวในส่วนหัว

ใครคำนวณราก ตอนไหน และพอบล็อกใหม่มาถึงแล้วไงต่อ

รากไม่ได้ถูกคำนวณครั้งเดียวแล้วส่งต่อกันไปเป็นทอด ๆ มันถูกคำนวณสองจังหวะโดยคนละฝ่าย และจังหวะที่สองคือจังหวะที่ตอบว่าบล็อกก้อนนั้นจะถูกรับไว้หรือถูกทิ้ง

จังหวะที่ 1 ตอนสร้างบล็อก จังหวะที่ 2 ตอนบล็อกมาถึงเครื่องเรา เลือกธุรกรรมเข้าบล็อก แล้วเรียงลำดับไว้ในตัวบล็อก ได้ส่วนหัวมาพร้อมธุรกรรมทั้งกอง เลขในส่วนหัวยังไม่ถูกเชื่อ คำนวณรากจากใบขึ้นไปทีละชั้น ตามที่เพิ่งกดไล่ดูข้างบน คำนวณรากใหม่เองด้วยวิธีเดียวกัน จากธุรกรรมที่เพิ่งได้มา ใส่รากลงในช่องของส่วนหัว ส่วนหัวก้อนนี้จึงถูกปิด เทียบกับเลขที่ติดมาในส่วนหัว ไม่ตรงคือทิ้งทั้งก้อน
ฝ่ายที่สร้างบล็อกคำนวณรากแล้วประกาศออกมา ส่วนเครื่องที่รับไม่เคยเชื่อเลขที่ติดมา มันคำนวณใหม่เองจากธุรกรรมที่ได้มาแล้วเทียบ ตรงกันคือรับ ไม่ตรงคือทิ้งทั้งก้อน

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

เครื่องที่มีแค่ส่วนหัวจึงต้องขอ

ข้อเมื่อกี้อธิบายทุกอย่างที่เหลือ เครื่องที่ถือธุรกรรมครบสร้างต้นไม้เองได้ทั้งต้น ส่วนเครื่องที่ถือแค่ส่วนหัวไม่มีธุรกรรมให้คำนวณ มันจึงต้องขอแฮชจากคนที่มีของครบ แต่ไม่ได้ขอทั้งต้น ขอแค่ แฮชพี่น้องชั้นละหนึ่งตัวตามทางเดินขึ้นไปหาราก คำว่าพี่น้องในที่นี้คือกล่องอีกใบที่ถูกจับคู่แฮชอยู่กับเราในชั้นนั้น เพราะจะขยับขึ้นไปอีกชั้นได้ ต้องมีของครบทั้งคู่เสมอ

ต้นไม้แปดใบสูงสามชั้น จึงขอแค่ 3 ตัว ส่วนบล็อกจริงที่มีธุรกรรมห้าพันกว่าใบ ขอราว เท่านั้น จากนั้นเครื่องเล็กเอาธุรกรรมของตัวเองมาแฮช แล้วไล่จับคู่ขึ้นไปเองจนได้ราก ถ้ารากที่คำนวณได้ตรงกับรากในส่วนหัวที่ตัวเองถืออยู่ ก็จบ ธุรกรรมนั้นอยู่ในบล็อกนั้นจริง

จุดสำคัญอยู่ตรงที่ไม่ต้องเชื่อคนที่ส่งแฮชมาให้เลยแม้แต่นิดเดียว ถ้าเขาส่งของปลอมมา ตัวเลขจะไม่ลงตัวและรากจะไม่ตรง เครื่องที่เก็บข้อมูลแค่เศษเสี้ยวจึงตอบคำถามนี้เองได้

ลองกดเลือกใบไหนก็ได้ในของเล่นข้างล่าง แล้วดูว่ามันขอแฮชตัวไหนบ้าง ปุ่มด้านล่างมีให้ลองสองอย่าง คือแก้เนื้อในธุรกรรมใบหนึ่ง กับสลับลำดับสองใบโดยไม่แก้เนื้อในเลย

MERKLE LAB

ส่วนหัวของบล็อก

รากเมอร์เคิล- แฮชของบล็อก-

สองช่องนี้คนละจังหวะกัน รากถูกคำนวณจากธุรกรรมก่อน แล้วส่วนหัวถึงถูกแฮชทั้งอันเป็นแฮชของบล็อก ส่วนหัวยังมีช่องอื่นอีก ที่เหลือเล่าในหัวข้อถัดไป

แตะใบธุรกรรมสักใบเพื่อดูว่าต้องขอแฮชกี่ตัวในการพิสูจน์

แล้วอะไรที่วิธีนี้ยังตอบไม่ได้

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

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

ส่วนคำถามว่าใครได้เขียนหน้าถัดไป ยังไม่ถูกตอบ นั่นคือหัวข้อต่อไป

ภาค 3 จาก 7 ใครได้เขียนหน้าถัดไป และทำไมทุกคนลงเอยเหมือนกัน หัวใจของบทอยู่ตรงนี้ การขุดคืออะไรจริง ๆ เลขศูนย์ข้างหน้ามาจากไหน และถ้าเกิดสองสายพร้อมกันใครชนะ

การขุด: การเดาเลขที่ต้องจ่ายด้วยไฟจริง

เหลือของชิ้นที่สอง ถ้าใครก็เสนอหน้าใหม่ได้ฟรี คนโกงก็เสนอเป็นพันหน้าแล้วกลบเสียงคนอื่น ทางแก้ตรงไปตรงมามาก คือ ทำให้การเสนอหน้าใหม่มีค่าเข้าที่จ่ายด้วยของจริง และค่าเข้านั้นต้องปลอมไม่ได้ ตรวจง่าย และไม่ต้องเชื่อใจใคร

งานที่ต้องทำคือการเดาเลข

ในแล็บโซ่ คุณกดปุ่มหาเลขใหม่ไปแล้ว ตอนนั้นเครื่องของคุณไล่เดาเลขทีละค่าจนกว่าแฮชจะขึ้นต้น ด้วยศูนย์สามตัว นั่นแหละคือ "งาน" ทั้งหมดที่นักขุดทำ ไม่มีอะไรมากกว่านั้น และเพราะแฮชย้อนกลับไม่ได้ตามที่เล่าไว้ จึงไม่มีสูตรลัดให้คำนวณคำตอบออกมาตรง ๆ มีทางเดียวคือเดาไปเรื่อย ๆ

การเดาแต่ละครั้งกินเวลาและกินไฟฟ้าจริง ยิ่งเดามากยิ่งจ่ายมาก ค่าไฟที่จ่ายไปแล้วนี่เองคือค่าเข้าที่ปลอมไม่ได้ ใครจะเสนอบล็อกปลอมเป็นพันก้อนก็ต้องจ่ายค่าไฟเป็นพันเท่า ต่างจากการเปิดโหนดปลอม ที่ทำได้ฟรีไม่จำกัด กลไกนี้มีชื่อว่า พิสูจน์งาน (Proof of Work) อ่านว่า "พรูฟ ออฟ เวิร์ก" แปลตรงตัวว่าหลักฐานว่าทำงานมาแล้ว ส่วนงานที่ว่าก็คือการเดาที่เพิ่งเล่าไป

ที่เหลือของหัวข้อนี้คือการดูว่าเดาอะไร เดาตรงไหน และทำไมคนอื่นถึงตรวจได้ในพริบตา

เดาเลขในช่องไหน

รากเมอร์เคิลที่เพิ่งเล่าไปเป็นหนึ่งในหกช่องของส่วนหัว หน้าตาครบ ๆ ของทั้งหกช่องเป็นแบบนี้

เวอร์ชัน 4 ไบต์ ล็อกโดย กติกา แฮชบล็อกก่อนหน้า 32 ไบต์ ล็อกโดย อดีตที่แก้ไม่ได้ รากเมอร์เคิล 32 ไบต์ ล็อกโดย ธุรกรรมที่เลือกมา เวลา 4 ไบต์ ล็อกโดย นาฬิกา ความยาก 4 ไบต์ ล็อกโดย กติกา นอนซ์ 4 ไบต์ ว่าง หมุนได้ตามใจ รวม 80 ไบต์ ไม่ว่าบล็อกนั้นจะมีธุรกรรมกี่รายการ
หัวบล็อกมีหกช่อง รวมกันได้ 80 ไบต์ ห้าช่องถูกล็อกโดยของที่นักขุดเปลี่ยนไม่ได้ เหลือช่องเดียวที่ว่างให้หมุน นักขุดจึงไม่มีอะไรให้ทำนอกจากหมุนช่องนั้นแล้วแฮชใหม่ทุกครั้ง

ช่องที่ว่างช่องนั้นชื่อ นอนซ์ (nonce) ย่อมาจาก number used once แปลว่าเลขที่ใช้ครั้งเดียวทิ้ง มันคือช่อง "เลขที่หาได้" ที่คุณกดเล่นไปแล้วในแล็บโซ่ คนที่อยากเสนอบล็อกต้องหาเลขนอนซ์ที่ทำให้แฮชของทั้งส่วนหัวออกมา ขึ้นต้นด้วยเลขศูนย์ตามจำนวนที่กำหนด ซึ่งยังเป็นเงื่อนไขที่ขอสมมติไว้ตั้งแต่แล็บโซ่

ส่วน แฮชของบล็อก ที่โผล่ในแล็บเมอร์เคิลไม่ใช่ช่องที่เจ็ด มันคือผลลัพธ์ของการแฮชทั้งหกช่องนี้รวมกัน พอหมุนนอนซ์ทีเดียว แฮชของบล็อกก็เปลี่ยนทั้งชุด

สองอย่างที่คนมักสะดุดตอนเห็นภาพนี้ ผมเก็บไว้ในสองกล่องข้างล่าง กดเปิดเฉพาะอันที่สงสัยก็ได้

แล้วสงสัยไหม ช่องนอนซ์เล็กแค่ 4 ไบต์ ถ้าหมุนจนครบแล้วยังไม่เจอจะทำยังไงต่อ

ช่องนี้เก็บได้ ซึ่งฟังดูเยอะ แต่หมุนจนครบทั้งช่องแล้วยังไม่เจอ เป็นเรื่องปกติที่เกิดขึ้นทุกเสี้ยววินาที

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

ห้าช่องที่ภาพบอกว่าล็อก จึงหมายถึงล็อกภายในการหมุนหนึ่งรอบเท่านั้น ไม่ได้ล็อกตลอดกาล

แล้วทำไมไม่ยิงขนาน เดาหลาย ๆ เลขพร้อมกันทีเดียวเลย

ทำได้ และเขาทำแบบนั้นล้วน ๆ อยู่แล้ว การเดาแต่ละครั้งไม่ขึ้นกับครั้งก่อนเลย เครื่องขุดจริงจึงเป็นชิปที่ปั๊มวงจรแฮชซ้ำเป็นหมื่นชุดบนแผ่นเดียว ทุกชุดเดาคนละเลขพร้อมกันตลอดเวลา

สิ่งที่ยิงขนานไม่ช่วยคือลดปริมาณงานรวม ยังต้องเดาเฉลี่ยเท่าเดิมอยู่ดี เครื่องมากขึ้นแค่ทำให้เดาได้เร็วขึ้นและชนะบ่อยขึ้นตามสัดส่วนที่จ่ายไป ซึ่งเป็นหัวใจของกลไกพอดี คือซื้อโอกาสได้ตามกำลังที่จ่ายจริง ไม่มีทางลัดให้ฉลาดกว่าคนอื่น

เจอแล้วเกิดอะไรขึ้น

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

ประกอบหัวบล็อก + นอนซ์ คำนวณ SHA-256 เข้าเงื่อนไขหรือยัง ยัง นอนซ์ +1 เข้าแล้ว ประกาศบล็อก รับรางวัล คนอื่นตรวจแค่ครั้งเดียว ต่อท้ายโซ่ ยอดขยับ ทุกคนเริ่มรอบใหม่บนยอดนี้ รอบใหม่ ใช้แฮชก่อนหน้าตัวใหม่
วงจรไม่ได้จบที่การประกาศ บล็อกใหม่ไปต่อท้ายโซ่ ยอดของสมุดขยับ แล้วทุกคนเริ่มรอบใหม่บนยอดนั้นทันที ใครที่ยังเดาค้างอยู่บนยอดเก่าต้องทิ้งงานที่ทำมาแล้วเริ่มใหม่หมด

คำว่าประกาศที่ใช้มาตลอดทั้งบท ฟังเหมือนตะโกนบอกทั้งโลกทีเดียว ของจริงไม่ใช่แบบนั้น โหนดแต่ละตัวรู้จักเพื่อนบ้านแค่ราวสิบตัว และเปิดช่องทางค้างไว้กับเพื่อนบ้านพวกนั้นตลอดเวลา ผ่าน ทีซีพี (TCP) อ่านว่า "ทีซีพี" ซึ่งเป็นวิธีต่อสายคุยกันแบบเดียวกับที่เว็บใช้ ต่างกันที่ข้อความบนสายเป็นรูปแบบที่บิตคอยน์ออกแบบเอง ไม่ใช่ HTTP

และเวลาได้บล็อกใหม่ก็ไม่ได้ยัดทั้งก้อนส่งไปเลย มันบอกเพื่อนบ้านก่อนว่ามีของใหม่ชิ้นนี้ ใครยังไม่มีค่อยขอมา พอได้มาแล้วก็ตรวจเองก่อนแล้วค่อยบอกต่อเป็นทอด ๆ ตามภาพข้างล่าง

คนเจอ เพื่อน 1 เพื่อน 2 ทอดถัดไป ทอดถัดไป 1. ส่งแค่ชื่อบล็อก 1. ส่งแค่ชื่อบล็อก 2. เพื่อนขอตัวบล็อก 3. ส่งตัวบล็อกให้ 4. ตรวจเองแล้วบอกต่อ 4. ตรวจเองแล้วบอกต่อ ทั้งสองสายเกิดครบสี่จังหวะเหมือนกัน ภาพวาดขั้นที่ 2 กับ 3 ไว้สายเดียวเพื่อไม่ให้เส้นทับกัน แต่ละตัวรู้จักเพื่อนบ้านราวสิบตัว ไม่มีใครรู้จักทั้งโลก
สี่จังหวะนี้เกิดกับเพื่อนบ้านทุกตัวเหมือนกันหมด จังหวะแรกส่งไปแค่ชื่อของบล็อก ฝั่งที่ยังไม่มีจึงต้องเป็นคนขอตัวเต็มมาเอง และเพราะทุกตัวตรวจเองก่อนส่งต่อ ของปลอมจึงตายตั้งแต่ทอดแรกที่มันไปถึง

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

ใครจะเขียนโปรแกรมขึ้นมาใหม่ด้วยภาษาอะไรก็ได้ ขอแค่ตรวจตามกฎเดิมและพูดภาษาเดียวกันบนสาย ก็เข้าร่วมได้ทันทีโดยไม่ต้องขออนุญาตใคร ระบบที่ประกอบขึ้นแบบนี้เรียกว่า ระบบกระจายศูนย์ (distributed system) อ่านว่า "ดิสทริบิวเท็ด ซิสเท็ม" แปลตรงตัวว่าระบบที่กระจายออกไป

ถ้าไฟดับทั้งโลกพร้อมกันสักครู่ บิตคอยน์ตายไหม

คำถามนี้มาจากภาพที่ว่าระบบไม่มีเซิร์ฟเวอร์ ไม่มีศูนย์กลาง ฟังแล้วเหมือนมันลอยอยู่กลางอากาศ รันค้างอยู่ในหน่วยความจำของเครื่องที่เปิดอยู่เท่านั้น ถ้าเป็นแบบนั้นจริง ไฟดับพร้อมกันทั้งโลกก็จบเห่

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

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

งั้นถ้าฝังไวรัสไว้ทุกเครื่อง ให้แก้ข้อมูลบนดิสก์ตอนบูตล่ะ นี่คือวิธีแฮ็กในทางทฤษฎีไหม

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

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

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

ลองขุดเองครับ เลื่อนจำนวนศูนย์ที่ต้องการแล้วกดขุด สังเกตว่าเพิ่มศูนย์ทีละหนึ่งตัว จำนวนครั้งที่ต้องเดาไม่ได้เพิ่มทีละนิด มันคูณสิบหกทุกครั้ง

MINE LAB

เดาไปแล้ว0
ใช้เวลา0.00 วิ
คาดว่าต้องเดา65,536
ความเร็วของคุณ-
แฮชล่าสุด กดเริ่มขุดเพื่อดู

กดหยุดแล้วกดเริ่มอีกครั้ง มันจะเดาต่อจากเลขเดิม ไม่ได้นับหนึ่งใหม่

ความจริงเรื่องเลขศูนย์ กับความยากคืออะไร

แฮชคือเลข เป้าคือเส้นเพดาน

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

กติกาลาก เส้นเพดาน ขวางช่วงนั้นไว้เส้นหนึ่ง เส้นนี้แหละที่เรียกว่า เป้า (target) อ่านว่า "ทาร์เก็ต" และคำตัดสินมีข้อเดียวคือ เลขที่จับได้ต้องตกอยู่ใต้เส้น ถ้าเหนือเส้นก็คือแพ้ เดาใหม่

ทีนี้ก็ตอบได้ว่าทำไมเป้าที่ต่ำลงถึงยากขึ้น เพราะช่วงที่นับว่าชนะคือช่วงตั้งแต่ 0 ขึ้นมาถึงเส้น เส้นยิ่งต่ำ ช่วงที่ชนะยิ่งแคบ สัดส่วนของใบที่ชนะเทียบกับใบทั้งหมดก็ยิ่งน้อยลงตามกัน พอสัดส่วนเหลือครึ่งเดียว ก็ต้องจับฉลากมากขึ้นเป็นสองเท่ากว่าจะเจอใบที่ชนะสักใบ ไม่มีเทคนิคอะไรมาย่นตรงนี้ได้ เพราะแต่ละใบเป็นอิสระจากกัน

ส่วนเลขศูนย์ที่สมมติไว้ตั้งแต่แล็บโซ่ มันเป็นแค่ผลพลอยได้ เลขที่น้อยพอจะตกใต้เส้น เขียนออกมาแล้วหลักหน้า ๆ ย่อมเป็นศูนย์เอง เลขศูนย์จึงเป็นอาการของการเป็นเลขที่น้อยพอ ไม่ใช่ตัวกฎ

ก่อนไปเล่น มีเรื่องหนึ่งที่ต้องบอกก่อน ไม่งั้นจะเข้าใจแถบข้างล่างผิดทั้งอัน คุณไล่นอนซ์จากน้อยไปมาก แต่ แฮชที่ได้ไม่ได้ไล่จากน้อยไปมากตามกัน ตามคุณสมบัติข้อสองของแฮชที่เล่าไปแล้ว เปลี่ยนอินพุตนิดเดียวผลลัพธ์เปลี่ยนเกือบทั้งชุด นอนซ์ 1000 กับ 1001 จึงให้เลขที่ไม่เกี่ยวกันเลย

แถบข้างล่างจึงไม่ใช่ทางเดินที่เดินเข้าหาโซนเขียวได้ ทุกครั้งที่เดา คุณถูกโยนไปตกที่ไหนก็ได้บนแถบ โซนเขียวไม่ใช่ปลายทาง มันคือช่องที่ต้องบังเอิญตกลงไป

แล้วทำไมไม่เริ่มจากฝั่งแฮชแทน

คำถามที่ควรผุดขึ้นมาตรงนี้คือ ถ้าอยากได้แฮชที่ต่ำกว่าเป้า ก็หยิบเลขต่ำ ๆ มาสักตัวก่อน แล้วค่อยหาว่าอินพุตอะไรให้ค่านั้น จะได้ไม่ต้องเดามั่ว

นั่นคือการเดินย้อนศรของแฮชพอดี ซึ่งเป็นสิ่งเดียวที่มันถูกออกแบบมาให้ทำไม่ได้ ฝั่งผลลัพธ์เดินเข้าไปเลือกไม่ได้เลย มีแต่ดันอินพุตเข้าไปแล้วดูว่าได้อะไรออกมา นี่คือเหตุผลที่งานนี้ต้องเผาไฟจริง ๆ ถ้าย้อนศรได้เมื่อไร บิตคอยน์พังทั้งระบบในวันเดียว

ของเล่นข้างล่างนี้คือช่วงของเลขทั้งหมดที่จับได้ ลากเส้นเป้าดูเองแล้วสังเกตสองอย่าง แถบเขียวคือช่วงที่ชนะซึ่งบางลงเรื่อย ๆ ส่วนจำนวนศูนย์นำหน้าไม่ได้ขยับตามทีละนิด แต่กระโดดเป็นขั้น

TARGET LAB

ซ้าย เป้าสูง งานง่ายขวา เป้าต่ำ งานยาก

0 · เลขน้อยที่สุดที่จับได้เลขมากที่สุดที่จับได้

ช่วงที่ชนะ-
ต้องเดาเฉลี่ย-
ศูนย์นำหน้าที่ได้-

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

เป้าวันนี้ต่ำกว่าเส้นที่กติกายอมให้กี่เท่า

กติกากำหนดไว้ว่าเส้นเป้าลากขึ้นได้สูงสุดแค่ไหน ที่เส้นสูงสุดนั้น ช่วงที่ชนะกว้างพอที่จะ เดาเฉลี่ย ราว 4.3 พันล้านครั้ง แล้วเจอหนึ่งครั้ง

เป้าที่ใช้จริงในวันนี้อยู่ต่ำกว่าเส้นสูงสุดนั้นมาก และ จำนวนเท่าที่มันต่ำกว่า คือสิ่งที่เรียกว่าความยาก (difficulty) อ่านว่า "ดิฟฟิคัลตี้" ตัวเลข ณ 3 กันยายน 2026 อยู่ที่ ความยากจึงเป็นตัวคูณตัวเดียวเท่านั้น เลขก้อนนี้ยาวจนอ่านไม่ไหว ต่อจากนี้ผมจะเรียกมันสั้น ๆ ว่า 125.8 ล้านล้านเท่า ซึ่งเป็นค่าเดียวกัน

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

พอรู้ตัวคูณ ก็คูณกลับได้เลย จำนวนครั้งที่ทั้งโลกต้องเดาโดยเฉลี่ยกว่าจะได้หนึ่งบล็อก คือ 4.3 พันล้าน คูณด้วยความยาก ออกมาเป็น ต่อหนึ่งบล็อก คำว่า เซกซ์ทิลเลียน (sextillion) คือ 10 ยกกำลัง 21 หรือเลข 1 ที่มีศูนย์ตามหลัง 21 ตัว

ถ้าอยากได้เป็นโอกาสต่อการเดาหนึ่งครั้ง ก็แค่กลับเศษส่วน การเดาหนึ่งครั้งมีโอกาสชนะ และถ้าอยากเห็นเป็นสัดส่วนของแถบใน TARGET LAB แทน แฮชมี 256 บิต พื้นที่ทั้งหมดจึงมี 1.16 x 10 ยกกำลัง 77 ค่า ส่วนที่นับว่าชนะมี 2.14 x 10 ยกกำลัง 53 ค่า สองบรรทัดนี้คือความยาวของแถบเขียวกับแถบทั้งอันในสัดส่วนจริง

เลขความยากตัวนี้ยังตอบคำถามที่ค้างไว้ตอนคุยเรื่องนอนซ์ด้วย ช่องนอนซ์เก็บได้ 4,294,967,296 ค่า ซึ่งก็คือ 4.3 พันล้านพอดี เท่ากับว่ากวาดช่องนอนซ์จนครบหนึ่งรอบ นับเป็นการเดา 4.3 พันล้านครั้ง จำนวนรอบที่ต้องกวาดกว่าจะได้หนึ่งบล็อก จึงเป็นเลขตัวเดียวกับความยากเป๊ะ ๆ

กวาดนอนซ์จนครบแล้วยังไม่เจอ ทำยังไงต่อ

คำถามนี้ตามมาทันที ช่องนอนซ์มีแค่ 4.3 พันล้านค่า แต่กว่าจะได้หนึ่งบล็อกต้องกวาดถึง 125,807 พันล้านรอบ กวาดรอบที่สองบนหัวบล็อกชุดเดิมย่อมได้แฮชชุดเดิมเป๊ะทั้ง 4.3 พันล้านตัว แล้วรอบที่สองมีไว้ทำไม

คำตอบคือ ระหว่างรอบ นักขุดเปลี่ยนช่องอื่นในหัวบล็อก หัวบล็อกเปลี่ยนเมื่อไร นอนซ์ทั้ง 4.3 พันล้านค่าก็กลายเป็นของใหม่ทั้งชุด และตรงนี้คุณรู้กลไกอยู่แล้ว เมอร์เคิลแล็บสอนไปแล้วว่าแก้อะไรสักอย่างในใบ รากก็เปลี่ยน แล้วค่าในหัวบล็อกก็เปลี่ยนตาม

ในหกช่องของหัวบล็อก มีแค่สองช่องที่ล็อกจริง คือ แฮชของบล็อกก่อนหน้า เพราะยอดโซ่อยู่ตรงไหนก็ต้องต่อตรงนั้น และ ช่องเป้า เพราะกติกาคำนวณให้ ใส่ค่าอื่นแล้วทุกโหนดตีตก อีกสี่ช่องขยับได้

กติกาไม่เคยห้ามเปลี่ยน มันบังคับแค่ว่า หัวบล็อกชุดใหม่ต้องยังเป็นบล็อกที่ถูกต้อง ธุรกรรมต้องใช้ได้จริง เวลาต้องอยู่ในกรอบ ช่องเป้าต้องตรงสูตร ไม่งั้นทั้งโลกไม่รับ เป็นอิสระภายในกติกา ไม่ใช่เช็คเปล่า

กวาดนอนซ์จนครบ 4.3 พันล้านค่า ยังไม่เจอ เติมเลขพิเศษ ในธุรกรรมรางวัลของตัวเอง รากเมอร์เคิลเปลี่ยน หัวบล็อกจึงเปลี่ยนตาม นอนซ์ว่างอีก 4.3 พันล้าน เป็นค่าใหม่ทั้งชุด วนกวาดใหม่ ทำซ้ำแบบนี้ราว 125,807 พันล้านรอบ จึงจะได้หนึ่งบล็อก
กวาดนอนซ์ครบแล้วไม่ใช่ทางตัน แค่ขยับช่องอื่นในหัวบล็อกหนึ่งครั้ง นอนซ์ทั้งช่องก็สดใหม่ให้กวาดอีกรอบ
แล้วถ้ามีเครื่องที่เดาได้เร็วมหาศาล หรือควอนตัมคอมพิวเตอร์ล่ะ

ทั้งโลกรวมกันตอนนี้เดาราว 9.01 x 10 ยกกำลัง 20 ครั้งต่อวินาที (เอา 5.40 x 10 ยกกำลัง 23 ครั้งต่อบล็อก หารด้วย 600 วินาที) เครื่องที่จะชนะแทบทุกก้อน ต้องเร็วกว่านั้นหลายเท่า

ควอนตัมไม่ใช่คำตอบของเกมนี้ อัลกอริทึมของโกรเวอร์ (Grover) ช่วยค้นของแบบไม่มีโครงสร้างได้เร็วขึ้นแบบรากที่สอง ไม่ใช่ทวีคูณ คือลดจาก 5.40 x 10 ยกกำลัง 23 ครั้ง เหลือราก ซึ่งยังเป็นเลขระดับล้านล้านรอบ และหนึ่งรอบของโกรเวอร์คือการรันวงจรแฮชทั้งวงจรแบบรักษาสถานะควอนตัมไว้ตลอด ซึ่งช้ากว่าวงจรของเครื่องขุดจริงมหาศาล ซ้ำร้าย โกรเวอร์ขนานกันไม่คุ้ม เอาเครื่องมาช่วยกันร้อยตัวได้เร็วขึ้นสิบเท่า ขณะที่เครื่องขุดร้อยตัวได้ร้อยเท่าเต็ม เกมนี้จึงเป็นเกมของเครื่องธรรมดา

ภัยจริงของควอนตัมกับบิตคอยน์อยู่คนละที่ คืออัลกอริทึมของชอร์ (Shor) ที่แกะกุญแจส่วนตัวจากกุญแจสาธารณะ นั่นคือฝั่งลายเซ็น ไม่ใช่ฝั่งการเดาแฮช

และต่อให้สร้างเครื่องแบบนั้นได้ ผ่านไป 2,016 บล็อก ความยากจะขยับขึ้นจนจังหวะกลับมาสิบนาทีเท่าเดิม คุณจะได้สิทธิ์เรียงลำดับธุรกรรม และได้รางวัลไปคนเดียว แต่เสกเหรียญเกินกติกาไม่ได้ และโอนเหรียญของคนอื่นไม่ได้ เพราะสองอย่างนั้นต้องใช้ลายเซ็น ซึ่งเป็นคนละกลไกกับการเดาแฮช

แล้วมันยากขนาดไหนเมื่อเทียบกับของที่เราคุ้น

ตัวเลขระดับเซกซ์ทิลเลียนไม่มีใครรู้สึกได้ ลองเทียบกับของที่คนไทยคุ้นกันแทน สลากกินแบ่งรางวัลที่ 1 เป็นเลขหกหลัก ความเป็นไปได้จึงมี 1,000,000 แบบ ซื้อหนึ่งใบก็คือมีโอกาสหนึ่งในล้าน

โอกาสชนะของการลองหนึ่งครั้ง ทอยลูกเต๋าได้ 6 1 ใน 6 ถูกรางวัลที่ 1 1 ใน 1,000,000 เดาแฮชถูก 1 ใน 540.3 เซกซ์ทิลเลียน กล่องขวาสุด เท่ากับกล่องกลาง 4 งวดติดกัน ถูกรางวัลที่ 1 ทุกงวด ไม่พลาดสักงวดเดียว
การเดาแฮชหนึ่งครั้งมีโอกาสชนะพอ ๆ กับซื้อสลากแล้วถูกรางวัลที่ 1 ติดกัน 4 งวดรวด ที่ระบบยังเดินได้ทุกสิบนาทีเพราะทั้งโลกช่วยกันจับฉลากพร้อมกันมหาศาลต่อวินาที

ที่ระบบยังคายบล็อกออกมาได้ทุกสิบนาทีทั้งที่โอกาสต่อครั้งต่ำขนาดนั้น เพราะทั้งโลกไม่ได้จับฉลากทีละใบ มันจับพร้อมกันเป็นจำนวนมหาศาลทุกวินาที ซึ่งพาไปสู่คำถามว่าจะนับความเร็วของการจับฉลากนั้นเป็นหน่วยอะไร

หน่วยที่ใช้วัดความเร็วในการเดา

หน่วยที่ใช้กันคือ แฮชต่อวินาที ตรงตัวคือเดาได้กี่ครั้งในหนึ่งวินาที และเพราะตัวเลขมันใหญ่มาก จึงพ่วงคำนำหน้าชุดเดียวกับที่คุณคุ้นจากขนาดไฟล์ ทั้งกิโล เมกะ กิกะ ซึ่งแต่ละขั้นคือคูณพัน

จุดที่มักทำให้สับสนคือสองฝั่งนี้วัดคนละชนิดกัน ไบต์เป็นหน่วยของปริมาณของที่กองอยู่ ส่วน แฮชต่อวินาทีเป็นหน่วยของความเร็ว บันไดตัวเลขเหมือนกันเป๊ะ แต่สิ่งที่ถูกนับคนละอย่าง อันหนึ่งนับว่ามีเท่าไร อีกอันนับว่าทำได้เร็วแค่ไหน

ไบต์ · นับปริมาณที่กองอยู่ แฮชต่อวินาที · นับความเร็ว 1 กิโลไบต์ = 1,000 ไบต์ ข้อความสั้น ๆ หนึ่งหน้า 1 กิโลแฮชต่อวินาที เดาได้ 1,000 ครั้งในหนึ่งวินาที 1 เมกะไบต์ = 1,000 กิโลไบต์ รูปถ่ายหนึ่งใบ 1 เมกะแฮชต่อวินาที เดาได้ 1,000,000 ครั้งในหนึ่งวินาที 1 กิกะไบต์ = 1,000 เมกะไบต์ 1 กิกะแฮชต่อวินาที
คำนำหน้าชุดเดียวกันเป๊ะ ต่างกันแค่ของที่ถูกนับ ฝั่งซ้ายนับปริมาณที่กองอยู่ ฝั่งขวานับจำนวนครั้งที่ทำได้ในหนึ่งวินาที

บันไดนี้ไม่ได้จบที่กิกะ ขั้นถัดขึ้นไปคือ เทระ (tera) คือ 10 ยกกำลัง 12 เพตะ (peta) คือ 10 ยกกำลัง 15 แล้วก็ เอกซะ (exa) อ่านว่า "เอกซะ" คือ 10 ยกกำลัง 18 ซึ่งเป็นหน่วยที่ใช้เรียกกำลังของทั้งเครือข่าย แต่ตัวเลขจริงคือ 909.6 เอกซะแฮชต่อวินาที เกือบพันเท่าของหนึ่งเอกซะ ทั้งเครือข่ายจึงยืนเลยขั้นเอกซะขึ้นไปแล้ว ค่อนไปทางขั้นถัดไปคือ เซตตะ (zetta) คือ 10 ยกกำลัง 21

แฮช 100 กิโล 103 เมกะ 106 กิกะ 109 เทระ 1012 เพตะ 1015 เอกซะ 1018 เซตตะ 1021 เบราว์เซอร์คุณ เครื่องขุด 1 เครื่อง ทั้งเครือข่าย
บันไดเดียวกับกิโลไบต์กับกิกะไบต์ที่คุ้นอยู่แล้ว แค่เปลี่ยนจากไบต์เป็นจำนวนครั้งที่แฮชได้ต่อวินาที จุดสามจุดปักตามค่าจริง เบราว์เซอร์ของคุณกับทั้งเครือข่ายห่างกันสิบหกขั้นบนสเกลนี้ และเครือข่ายอยู่เลยขั้นเอกซะขึ้นไปแล้ว

ทั้งเครือข่ายรวมกัน ณ 3 กันยายน 2026 ทำได้ ส่วนเบราว์เซอร์ของคุณอยู่ปลายล่างสุดของบันได

เทียบกับของเล่นข้างบน

ตัวเลขความเร็วที่ MINE LAB แสดงให้ดูคือความเร็วจริงของเครื่องคุณเอง ซึ่งจะอยู่ราว 95,871 ครั้งต่อวินาที ที่ความเร็วเท่านั้น ถ้าคุณขุดของจริงอยู่คนเดียว คุณจะใช้เวลาเฉลี่ย กว่าจะได้หนึ่งบล็อก หรือราว 13 เท่าของอายุเอกภพ

เป้าขยับเองทุกสองสัปดาห์

ถ้าเป้าอยู่นิ่ง วันที่คนแห่กันมาขุดมากขึ้น บล็อกก็จะออกถี่ขึ้นเรื่อย ๆ จนเสียจังหวะ ระบบจึงปรับเป้าเองทุก ซึ่งก็คือราวสองสัปดาห์ที่จังหวะ 10 นาทีต่อบล็อก

วิธีคิดเรียบง่ายมาก โหนดหยิบเวลาที่ประทับไว้ในส่วนหัวของบล็อกล่าสุด ลบด้วยเวลาของบล็อกเมื่อ 2,016 ก้อนก่อน ได้เวลาจริงที่ใช้ไป ถ้าใช้เวลาแค่ครึ่งเดียวของสองสัปดาห์ ก็แปลว่าเร็วไปเท่าตัว เป้าจึงถูกกดลงครึ่งหนึ่ง ถ้าใช้เวลาเป็นสองเท่า เป้าก็ถูกยกขึ้นเท่าตัว นี่คือหน้าที่จริงของช่องเวลาในส่วนหัวที่เห็นไปแล้ว

มีเพดานกันแกว่งอีกชั้น ไม่ให้เป้าเปลี่ยนเกิน 4 เท่าในรอบเดียว เผื่อกรณีที่กำลังขุดหายหรือเพิ่มแบบสุดขั้วในรอบเดียว

กำลังขุดหายไป กำลังขุดเข้ามาเพิ่ม บล็อกออกช้ากว่า 10 นาที บล็อกออกเร็วกว่า 10 นาที ครบ 2,016 บล็อก เป้าถูกยกขึ้น หาง่ายขึ้น ครบ 2,016 บล็อก เป้าถูกกดลง หายากขึ้น กลับมาที่ 10 นาที
กลไกนี้ดึงกลับเข้าหาสิบนาทีจากทั้งสองทาง กำลังขุดหายก็ยกเป้าขึ้น กำลังขุดเข้ามาก็กดเป้าลง ไม่ว่าจะเบนออกไปทางไหนก็ถูกดึงกลับที่เดิม

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

จุดที่ควรสังเกตคือระหว่างนั้นไม่มีใครต้องประกาศอะไร ไม่มีการโหวต และไม่มีธุรกรรมไหนเสียหาย เพราะทุกโหนดคำนวณเลขเดียวกันจากข้อมูลชุดเดียวกัน ใครส่งบล็อกที่ใส่ความยากไม่ตรงกับที่คำนวณได้ ทุกโหนดปฏิเสธทันที

แล้วสิบนาทีที่พูดถึงมาตลอด มันวัดจากอะไรกันแน่

สิบนาทีไม่ใช่เวลาที่ใช้สร้างบล็อก และไม่ใช่ตารางเวลาที่ใครตั้งนาฬิกาปลุกไว้ มันคือค่าเฉลี่ยของระยะห่างระหว่างบล็อก ของจริงสุ่มมาก บางคู่ห่างกันไม่กี่วินาที บางคู่ห่างเป็นชั่วโมง

2 นาที 38 นาที 14 นาที 31 นาที บล็อกที่ออกมาจริง เรียงตามเวลา เฉลี่ยทั้งเส้นแล้วได้ราว 10 นาทีต่อก้อน ตัวเลขในภาพเป็นตัวอย่างสมมติเพื่อให้เห็นว่าระยะห่างไม่เท่ากัน
ระยะห่างจริงระหว่างบล็อกไม่เท่ากันสักคู่ เพราะแต่ละครั้งคือการจับฉลากใหม่ที่ไม่ขึ้นกับครั้งก่อน สิบนาทีคือเส้นค่าเฉลี่ยที่ลากผ่านความไม่เท่ากันนั้น
แล้วถ้าวันไหนทั้งโลกไม่มีใครโอนเงินเลย บล็อกจะยังออกไหม

ออกครับ ทุกสิบนาทีเหมือนเดิม เพราะการขุดไม่ได้รอธุรกรรม นักขุดเดาเลขตลอดเวลา ไม่ว่าจะมีของให้ใส่หรือไม่ บล็อกที่แทบไม่มีธุรกรรมเลยก็มีจริง และทุกบล็อกมีธุรกรรมอย่างน้อยหนึ่งใบเสมอ คือใบที่จ่ายรางวัลให้ตัวเอง ใบเดียวกับที่นักขุดใช้เป็นที่ว่างตอนนอนซ์หมด

บล็อกวันที่คนโอนกันเยอะ ธุรกรรมเต็มบล็อก บล็อกวันที่ไม่มีใครโอนเลย มีใบเดียว คือใบจ่ายรางวัลให้ตัวเอง ที่เหลือว่าง สองก้อนนี้ใช้เวลาเฉลี่ยเท่ากัน คือสิบนาที
สองก้อนนี้ใช้เวลาเท่ากัน เพราะงานที่ทำคือการเดาเลขบนส่วนหัว ซึ่งมีขนาดคงที่เสมอไม่ว่าตัวบล็อกจะมีกี่ใบ

ส่วนธุรกรรมที่มาทีหลังก็ไม่ได้ทำให้เกิดบล็อกใหม่ มันไปนั่งรอจนบล็อกถัดไปถูกเจอ

นาฬิกาของระบบเดินด้วยการเดาเลข ไม่ได้เดินด้วยปริมาณธุรกรรม

แกะคำศัพท์: ทำไมเรียกว่าขุด

การขุด (mining) อ่านว่า "ไมนิ่ง" ไม่ได้ขุดอะไรขึ้นมาจากดินจริง ๆ คำนี้ยืมภาพมาจากเหมืองทอง ตรงที่ต้องลงแรงและลงทุนไปก่อนโดยไม่รู้ว่าจะเจอไหม และคนที่เจอจะได้เหรียญใหม่ที่ไม่เคยมีอยู่ในระบบมาก่อนเป็นรางวัล ส่วนงานที่นักขุดทำจริง ๆ คือการเดาเลขและการจดสมุดให้ทั้งเครือข่าย

ถ้ามีสองสายพร้อมกัน ใครชนะ

บางครั้งนักขุดสองคนคนละซีกโลกเจอบล็อกพร้อมกัน ต่างคนต่างประกาศออกไป โหนดที่อยู่ใกล้ใคร ก็รับสายของคนนั้น สมุดเลยแตกเป็นสองสายชั่วคราว อาการนี้เรียกว่า ฟอร์ก (fork) อ่านว่า "ฟอร์ก" คำเดียวกับส้อมที่แยกเป็นซี่ ในที่นี้แปลว่าทางแยก และมันเกิดขึ้นเป็นปกติทุกสัปดาห์ ไม่ใช่เรื่องผิดปกติ

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

งานสะสมของสายหนึ่งสาย คืออะไร

บล็อกหนึ่งก้อนมี น้ำหนักงาน ของมันเอง เท่ากับความยากตอนที่ขุดมันได้ ซึ่งก็คือจำนวนครั้งที่ต้องเดาโดยเฉลี่ยกว่าจะได้ก้อนนั้น น้ำหนักนี้ปลอมไม่ได้ เพราะมันคือค่าไฟที่จ่ายไปจริง ๆ

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

แกะคำศัพท์: ฉันทามติ

สิ่งที่เพิ่งเกิดขึ้นตรงนี้ คือทั้งโลกลงเอยเห็นตรงกันว่าสายไหนคือของจริง โดยไม่มีการโหวต ไม่มีที่ประชุม และไม่มีใครประกาศผล เรื่องนี้มีชื่อเรียกในวงการว่า ฉันทามติ (consensus) อ่านว่า "คอนเซนซัส" แปลว่าการที่ทุกคนลงเอยเห็นพ้องกัน รากศัพท์มาจากภาษาละติน consentire ที่แปลว่ารู้สึกไปในทางเดียวกัน

ที่แปลกกว่าการเห็นพ้องแบบที่เราคุ้นคือ ไม่มีใครต้องคุยกับใครเลย แต่ละเครื่องแค่เดินตามกฎข้อเดียวกันว่า ให้เชื่อสายที่งานสะสมหนักที่สุด แล้วผลก็ออกมาตรงกันเอง กฎข้อนี้คือกติกาฉันทามติของบิตคอยน์ทั้งหมด

สามจังหวะข้างล่างนี้คือสิ่งที่เกิดขึ้นตามลำดับ ตั้งแต่ตอนที่สองสายยังเสมอกัน จนถึงตอนที่สายหนึ่งทิ้งห่าง

จังหวะที่ 1 · เสมอกัน สายบน งานสะสม 1 ก้อน สายล่าง งานสะสม 1 ก้อน เท่ากันเป๊ะ ยังตัดสินไม่ได้ ทั้งคู่ถูกกติกา จังหวะที่ 2 · สายบนได้ก้อนถัดไปก่อน 2 ก้อน ยังอยู่ที่ 1 ก้อน งานสะสมสายบนแซงขึ้นมาแล้ว จังหวะที่ 3 · ทุกโหนดย้ายไปสายบนเอง สายจริงเดินต่อ ไม่มีใครขุดต่อ จึงหยุดอยู่แค่นั้น ธุรกรรมในก้อนที่ถูกทิ้งกลับไปนั่งรอในห้องรอ ไม่ได้หายไปไหน
จังหวะแรกไม่มีใครผิด ทั้งสองสายถูกกติกาเท่ากันและงานสะสมเท่ากันเป๊ะ สิ่งที่ตัดสินคือจังหวะที่สอง ใครได้ก้อนถัดไปก่อน ไม่ใช่ใครประกาศก่อน

ส่วนภาพข้างล่างนี้ย่นเวลาไปอีกหน่อย ให้เห็นแถบงานสะสมของทั้งสองสายเทียบกันตรง ๆ

ก้อนที่ 1 ก้อนที่ 2 ก้อนที่ 3 ก้อนที่ 4 ก้อนที่ 5 สายบน · งานสะสมมากกว่า จึงชนะ ก้อนที่ 3 สายล่าง · งานสะสมตามไม่ทัน จึงถูกทิ้ง
แถบข้างใต้แต่ละสายคืองานสะสมของสายนั้น สายที่แพ้ไม่ได้ถูกใครสั่งให้ยกเลิก มันแค่ไม่มีใครขุดต่อ แถบของมันเลยหยุดยาวอยู่แค่นั้น

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

คุณอาจเคยได้ยินข่าวว่าบิตคอยน์จะแตกเป็นสองสกุล ใช่ทางแยกอันนี้หรือเปล่า

คนละเรื่องกันเลยครับ และเป็นจุดที่คนสับสนกันบ่อยที่สุดจุดหนึ่ง เพราะมันใช้คำว่าฟอร์กเหมือนกัน

อันที่เพิ่งเล่าคือฟอร์กที่ไม่มีใครตั้งใจ เกิดจากจังหวะบังเอิญที่สองคนเจอพร้อมกัน ทุกคนยังเดินตามกติกาเดิมเหมือนกันหมด สายจึงกลับมาบรรจบกันเองภายในบล็อกเดียวสองบล็อก เหลือเหรียญสกุลเดียวเหมือนเดิม

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

ฟอร์กที่ไม่มีใครตั้งใจ ถูกทิ้ง เหลือสายเดียว เหรียญสกุลเดียว ฟอร์กที่ตั้งใจ เดินคู่กันไปตลอด สองสกุล
ต่างกันที่ปลายทาง ฝั่งซ้ายแยกแล้วกลับมาบรรจบ เหลือสายเดียวและเหรียญสกุลเดียว ฝั่งขวาแยกแล้วไม่กลับมาอีก เพราะสองฝั่งเลิกยอมรับบล็อกของกันและกัน

กรณีที่ดังที่สุดคือปี 2017 ซึ่งอยู่ในไทม์ไลน์ข้างล่าง และในหัวข้อเรื่องเพดานขนาดบล็อก

แล้วถ้ามีคนอยากย้อนธุรกรรมล่ะ

กติกาสายยาวกว่าชนะ เปิดช่องให้คนที่อยากลบธุรกรรมของตัวเองทิ้ง เขาต้องสร้างสายของตัวเอง ที่ไม่มีธุรกรรมนั้นอยู่ แล้วขุดให้ยาวกว่าสายที่ทั้งโลกกำลังต่ออยู่ ซึ่งเรียกกันว่าการขุดแซง ปัญหาของเขาคือทั้งโลกไม่ได้หยุดรอ

แข่งกันขุดแซง

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

ซึ่งพาไปสู่คำที่ได้ยินบ่อยว่า การโจมตี 51% ชื่อนี้เป็นการปัดเลข ของจริงแค่เกินครึ่งก็พอ 50.1% ก็ใช้ได้ แต่ที่สำคัญกว่าตัวเลข คือมันไม่ใช่สวิตช์ที่กดแล้วติด

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

โอกาสที่คนกำลังน้อยกว่าครึ่งจะไล่ทัน ตามหลัง 1 2 3 4 5 6 บล็อก แท่งขวาสุดคือจุดที่ร้านค้าถือว่าเงินเข้าแน่นอน
ทุกบล็อกที่ต่อทับลงไป โอกาสที่คนตามหลังจะไล่ทันหดลงเป็นเท่าตัว ไม่ได้ลดทีละนิด หกบล็อกจึงเป็นจุดที่คนส่วนใหญ่พอใจ ไม่ใช่เพราะเป็นเลขศักดิ์สิทธิ์

เอกสารต้นฉบับของซาโตชิคำนวณเส้นความน่าจะเป็นนี้ไว้แล้วในหัวข้อที่ 11 ส่วนข้อจำกัดของคนที่อยากทำจริงคือกำลังขุดขนาดนั้นต้องซื้อเครื่องและจ่ายค่าไฟจริง ระบบไม่ได้ห้ามไม่ให้ทำ มันแค่ทำให้การทำแบบนั้นแพงกว่าผลตอบแทน

และต่อให้ทำสำเร็จ สิ่งที่กำลังขุดซื้อได้ก็แคบกว่าที่คนส่วนใหญ่คิดมาก

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

ภาค 4 จาก 7 ตกลงเหรียญคืออะไร และเงินเดินยังไง กลไกครบแล้ว คราวนี้ตอบคำถามที่ค้างมาตั้งแต่ต้นบท แล้วดูว่าเหรียญ กระเป๋า และค่าธรรมเนียมทำงานยังไง

ตกลงบิตคอยน์คืออะไร

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

สิ่งที่เรียกว่าเหรียญคือรายการในสมุด และการเป็นเจ้าของคือการถือกุญแจที่ปลดล็อกรายการนั้นได้ เท่านั้นเอง

แกะคำศัพท์: คริปโตเคอร์เรนซี

ของสามชิ้นข้างบนรวมกันคือสิ่งที่คนเรียกว่า คริปโตเคอร์เรนซี (cryptocurrency) อ่านว่า "คริปโทเคอร์เรนซี" มาจาก crypto ที่ย่อมาจาก cryptography คือวิชาการเข้ารหัส รากกรีก kryptos แปลว่าซ่อนเร้น รวมกับ currency ที่แปลว่าสกุลเงิน แปลตรงตัวว่าเงินที่ค้ำด้วยวิชาเข้ารหัส

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

ตั้งแต่นี้ไปผมจะใช้คำว่าเหรียญตามที่คนทั่วไปพูดกัน แต่ให้จำภาพนี้ไว้ข้างหลังเสมอ เพราะมันคือสิ่งที่ทำให้หัวข้อกระเป๋าและหัวข้อก้อนเงินข้างล่างเข้าใจง่ายขึ้นมาก

ถ้ามันเป็นแค่โปรแกรม ทำไมถึงไม่มีใครแก้กติกา

ข้อสามที่เพิ่งบอกไปว่าบิตคอยน์คือโปรแกรมที่ใครก็โหลดไปรันได้ ฟังดูเหมือนช่องโหว่ใหญ่มาก เพราะโปรแกรมมันก็แค่ไฟล์ ใครอยากแก้ก็แก้ได้ โค้ดของบิตคอยน์เป็น โอเพนซอร์ส (open source) อ่านว่า "โอเพนซอร์ส" แปลว่าเปิดต้นทางให้ดู คือเปิดให้ใครก็ได้อ่าน ก๊อป และแก้ ไม่ต้องขออนุญาตใครสักคน

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

สิ่งที่แก้โค้ดแล้วได้มาคือเครือข่ายใหม่ที่มีผมอยู่คนเดียว ผมมีเหรียญ 210 ล้านจริง ในสมุดที่ไม่มีใครบนโลกถืออีกเล่ม เอาไปซื้ออะไรไม่ได้สักอย่าง เพราะไม่มีใครยอมรับสมุดเล่มนั้น สิ่งที่แก้ไม่ได้ด้วยการแก้โค้ด คือการทำให้คนอื่นเอาโค้ดของคุณไปรัน

แกะคำศัพท์: ทฤษฎีเกม

คำถามที่ว่าทำไมคนถึงเลือกไม่ย้าย ทั้งที่ย้ายได้ เป็นคำถามของวิชาที่ชื่อ ทฤษฎีเกม (game theory) อ่านว่า "เกม เธียวรี" คือวิชาที่ศึกษาว่า เมื่อผลของการตัดสินใจของคุณขึ้นอยู่กับว่าคนอื่นตัดสินใจยังไงด้วย แต่ละฝ่ายจะเลือกทางไหน

คำว่าเกมในที่นี้ไม่ได้แปลว่าของเล่น มันแปลว่าสถานการณ์ที่มีผู้เล่นหลายฝ่าย แต่ละฝ่ายมีทางเลือก และคะแนนของแต่ละฝ่ายขึ้นกับทางที่คนอื่นเลือกด้วย บิตคอยน์ทั้งระบบวางอยู่บนเกมแบบนี้เกมเดียว

ลองไล่ดูว่าแต่ละฝ่ายได้อะไรจากการย้ายไปสมุดเล่มใหม่ คนถือเหรียญย้ายไปแล้วถือของที่ไม่มีคนรับซื้อ นักขุดย้ายไปแล้วได้เหรียญที่ขายไม่ออก ทั้งที่ค่าไฟยังต้องจ่ายเป็นเงินจริง ส่วนร้านค้าย้ายไปแล้วรับเงินจากลูกค้าที่ไม่มีอยู่

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

อ่านด้วยวิจารณญาณ

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

ผมคิดว่ามุมนี้น่าสนใจ แต่มันเป็นการมองย้อนหลังแล้วเล่าให้ฟังดูมีเหตุผล ไม่มีใครพิสูจน์ได้ว่าถ้าย้อนเวลากลับไปแล้วเริ่มใหม่ ผลจะออกมาเหมือนเดิมหรือไม่เหมือน อ่านไว้เป็นมุมมองก็พอ อย่าเอาไปใช้ตัดสินใจเรื่องเงิน

เหรียญมาจากไหน และทำไมถึงหยุดที่ 21 ล้าน

แกะคำศัพท์: ซาโตชิ

ชื่อผู้สร้างระบบคือ Satoshi Nakamoto อ่านว่า "ซาโตชิ นากาโมโตะ" เป็นนามแฝง ไม่มีใครรู้ว่าเป็นใครหรือกี่คน ชุมชนเลยตั้งชื่อหน่วยย่อยที่สุดตามเขา หนึ่ง ซาโตชิ (satoshi) เท่ากับ 0.00000001 เหรียญ หรือหนึ่งในร้อยล้าน เวลาเห็นว่าหนึ่งเหรียญแพงจนซื้อไม่ไหว จำไว้ว่าซื้อเป็นเศษเสี้ยวได้

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

ตอนเริ่มระบบในปี 2009 รางวัลอยู่ที่ 50 เหรียญต่อบล็อก และกติกาเขียนไว้ว่า ทุก 210,000 บล็อก ให้หารรางวัลด้วยสอง เหตุการณ์นี้เรียกว่า ฮาล์ฟวิง (halving) อ่านว่า "ฮาล์ฟวิง" แปลว่าแบ่งครึ่ง ซึ่งกินเวลาราว ต่อหนึ่งครั้ง

เหตุผลเบื้องหลังคือความตั้งใจให้ปริมาณเหรียญคาดเดาได้ล่วงหน้าเป็นร้อยปี ไม่มีใครสั่งพิมพ์เพิ่มได้แม้อยากพิมพ์แค่ไหน ซึ่งเป็นจุดที่มันต่างจากเงินที่ธนาคารกลางออก โดยสิ้นเชิง

ตารางการออกเหรียญ คำนวณจากกติกาโดยตรง
ยุค เริ่มที่บล็อก เมื่อไร รางวัลต่อบล็อก สะสมเมื่อจบยุค
1 0 3 ม.ค. 2009 50.000 10,500,000
2 210,000 28 พ.ย. 2012 25.000 15,750,000
3 420,000 9 ก.ค. 2016 12.500 18,375,000
4 630,000 11 พ.ค. 2020 6.250 19,687,500
5 (ตอนนี้) 840,000 20 เม.ย. 2024 3.125 20,343,750
6 1,050,000 ราวปี 2028 1.563 20,671,875
7 1,260,000 ราวปี 2032 0.78125 20,835,938
… … … … …
33 (ยุคสุดท้าย) 6,720,000 ราวปี 2136 0.00000001 20,999,999.9769
รางวัลถูกเก็บเป็นจำนวนเต็มหน่วยซาโตชิ พอหารครึ่งไปเรื่อย ๆ จนเหลือหนึ่งซาโตชิแล้วหารอีกครั้ง มันกลายเป็นศูนย์ ระบบจึงหยุดออกเหรียญเองที่ยุคที่ 33 โดยไม่ต้องมีใครสั่ง

ตัวเลข 21 ล้านที่ได้ยินกันบ่อย ๆ จริง ๆ แล้วเป็นเลขกลม ๆ ที่ปัดขึ้นมาเล็กน้อย ผลรวมจริงคือ และมันไม่ได้ถูกกำหนดไว้เป็นเพดานตรง ๆ ในโค้ด มันคือผลลัพธ์ที่โผล่ออกมาเองจากการหารครึ่งไปเรื่อย ๆ บนตัวเลขจำนวนเต็ม

ณ บล็อกที่ เมื่อวันที่ 3 กันยายน 2026 มีเหรียญออกมาแล้วราว หรือ 95.6% ของทั้งหมด รางวัลปัจจุบันอยู่ที่ 3.125 เหรียญต่อบล็อก และเหลืออีก 84,762 บล็อก หรือราว 589 วัน จะถึงฮาล์ฟวิงครั้งถัดไป

เพดาน 21,000,000 เหรียญ 0 10.5M 21M 28 พ.ย. 2012 9 ก.ค. 2016 11 พ.ค. 2020 20 เม.ย. 2024 วันนี้ 95.6% ความสูงบล็อก (แต่ละช่วงคือหนึ่งฮาล์ฟวิง ราวสี่ปี) ราวปี 2049
เส้นอุปทานสะสมชนเพดานเร็วกว่าที่คนส่วนใหญ่คิด เหรียญ 96% แรกถูกขุดไปหมดแล้วภายในสิบเจ็ดปี ส่วนที่เหลือจะทยอยออกยาวไปอีกกว่าร้อยปี

กระเป๋า กุญแจ และคำสิบสองคำที่ห้ามหาย

เริ่มด้วยคำถามที่คนถามกันมากที่สุดเวลาเพิ่งเริ่มถือเลย ทำมือถือหาย เงินหายไหม คำตอบคือไม่หาย ถ้าคุณยังมีคำสิบสองคำนั้นอยู่ ซื้อเครื่องใหม่ ลงแอปใหม่ พิมพ์คำเดิมเข้าไป เงินอยู่ครบเหมือนเดิม เหตุผลอยู่ที่ว่าในมือถือเครื่องนั้นไม่เคยมีเงินอยู่เลยตั้งแต่แรก

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

ทีนี้กระเป๋าใบเดียวสร้างที่อยู่ได้ไม่จำกัด และคนส่วนใหญ่ใช้ที่อยู่ใหม่ทุกครั้งที่รับเงิน เพื่อไม่ให้ใครกวาดตาเห็นยอดรวมทั้งหมดของตัวเองในที่เดียว กุญแจจึงมีหลายดอก ซึ่งจดยากมากถ้าต้องจดเป็นเลข 256 บิตทีละดอก กระเป๋าสมัยใหม่เลยเก็บแค่ต้นทางเดียว แล้วให้กุญแจทุกดอกงอกออกมาจากต้นทางนั้น ต้นทางที่ว่าคือคำภาษาอังกฤษ 12 หรือ 24 คำ เรียกว่า ชุดคำกู้คืน (seed phrase) อ่านว่า "ซีดเฟรซ" คำว่า seed แปลว่าเมล็ด ตรงกับหน้าที่ของมันพอดี คือเมล็ดเดียวที่งอกออกมาเป็นทุกอย่าง

คำ 12 คำ จดใส่กระดาษได้ กุญแจดอกที่ 1 กุญแจดอกที่ 2 กุญแจดอกที่ 3 ที่อยู่ที่ 1 ที่อยู่ที่ 2 ที่อยู่ที่ 3 ย้อนทางกลับไม่ได้สักขั้น รู้ที่อยู่ก็ไม่มีทางหากุญแจ รู้กุญแจก็ไม่มีทางหาคำสิบสองคำ
เดินทางเดียวจากซ้ายไปขวาเท่านั้น จากคำสิบสองคำงอกเป็นกุญแจได้ไม่จำกัด และจากกุญแจคำนวณเป็นที่อยู่ได้ แต่ย้อนกลับไม่ได้สักขั้น นี่คือเหตุผลที่จดคำสิบสองคำแทนการจดกุญแจทีละดอกได้

ระวัง

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

ส่วนแอปกระเป๋าในมือถือที่ค้างคำถามไว้ตอนต้นไม้เมอร์เคิล ก็คือแอปแบบนี้เอง มันเก็บกุญแจให้คุณ เก็บแค่ส่วนหัวของทุกบล็อกซึ่งหนักไม่กี่สิบเมกะไบต์ แล้วเวลาจะเช็คว่าเงินเข้าหรือยัง ก็ขอหลักฐานเมอร์เคิลเป็นราย ๆ ไป

ตรงนี้พาไปสู่ประโยคที่คนในวงการพูดกันจนติดปาก not your keys, not your coins ถ้ากุญแจไม่ได้อยู่กับคุณ เหรียญก็ไม่ได้เป็นของคุณ เวลาซื้อผ่านแอปตลาดซื้อขายแล้วปล่อยทิ้งไว้ในนั้น กุญแจอยู่กับตลาด สิ่งที่คุณถืออยู่จริง ๆ คือคำสัญญาของบริษัทว่าจะจ่ายให้เมื่อคุณขอถอน หัวข้อประวัติข้างล่างจะให้ตัวอย่างว่าความต่างข้อนี้ราคาเท่าไร

เงินไม่ได้เก็บเป็นยอด แต่เก็บเป็นก้อน

ลองเปิดกระเป๋าสตางค์ของตัวเองดูก่อน สมมติในนั้นมีอยู่ 850 บาท คุณไม่ได้มียอด 850 ลอย ๆ คุณมีแบงก์ห้าร้อยหนึ่งใบ แบงก์ร้อยสามใบ และแบงก์ห้าสิบอีกหนึ่งใบ ยอดของคุณคือผลบวกของใบที่อยู่ในนั้น สมุดของบิตคอยน์ก็เก็บแบบนี้เป๊ะ ไม่มีบรรทัดไหนเก็บยอดคงเหลือของใครเลย มีแต่ก้อนเงินที่ยังไม่ถูกใช้กระจายอยู่

ใบสั่งจ่ายที่เห็นตอนคุยเรื่องกุญแจจึงไม่ได้เขียนว่า "หักจากยอดของฉัน" แต่ระบุเจาะจงว่า จะใช้ก้อนเงินก้อนไหน เหมือนตอนหยิบแบงก์ใบไหนออกมาจ่าย ก้อนแบบนี้มีชื่อทางเทคนิคว่า ผลลัพธ์ธุรกรรมที่ยังไม่ถูกใช้ (Unspent Transaction Output หรือย่อว่า UTXO) อ่านว่า "ยูทีเอกซ์โอ"

กติกาที่ตามมาจึงตรงกับการจ่ายเงินสดพอดี ใช้แบงก์ครึ่งใบไม่ได้ ต้องใช้เต็มใบแล้วรับเงินทอน มีก้อนเดียวขนาด 1 เหรียญ แล้วจะจ่ายร้านกาแฟ 0.02 เหรียญ ก็ต้องกินก้อนนั้นเข้าไปทั้งก้อน แล้วสร้างก้อนใหม่ออกมาสองก้อน ก้อนหนึ่งไปที่ร้าน อีกก้อนกลับมาที่ตัวคุณเอง เรียกว่า เงินทอน (change)

ก้อนที่เคยมีคนโอนมาให้คุณ และยังไม่เคยถูกใช้ ขาเข้า 1.0000 ใบสั่งจ่าย เซ็นด้วยกุญแจคุณ ร้านกาแฟ 0.0200 เงินทอน กลับหาคุณ 0.9799 นักขุดของบล็อกนี้ 0.0001 เส้นนี้ไม่มีช่องให้กรอกในใบสั่ง มันคือส่วนที่เหลือ
ก้อนขาเข้าคือก้อนที่เคยมีคนโอนมาให้แล้วยังไม่ถูกใช้ พอเอามาจ่าย มันถูกกินทั้งก้อนแล้วเกิดก้อนใหม่ออกมา ขาออกรวมกันได้ไม่ถึงขาเข้า และส่วนที่ขาดไปไม่มีช่องให้กรอกที่ไหนเลย มันคือค่าธรรมเนียมที่นักขุดของบล็อกนั้นหยิบไปเอง
แล้วถ้าลืมใส่ก้อนเงินทอนกลับมาหาตัวเองล่ะ จะเกิดอะไรขึ้น

เพราะค่าธรรมเนียมคือส่วนต่าง ไม่ใช่ช่องที่กรอก การลืมใส่ก้อนเงินทอนจึงไม่ใช่แค่เขียนไม่ครบ มันคือการยกเงินทั้งก้อนให้นักขุดโดยไม่ตั้งใจ และไม่มีใครทวงคืนให้ได้

เขียนครบ ขาเข้า 1.0000 ไปร้าน 0.0200 เงินทอนกลับหาคุณ 0.9799 ส่วนที่เหลือ 0.0001 นักขุดได้ไปนิดเดียว ลืมใส่ก้อนเงินทอน ขาเข้า 1.0000 ไปร้าน 0.0200 ไม่มีก้อนเงินทอน ส่วนที่เหลือ 0.9800 นักขุดได้ไปเกือบทั้งก้อน
สองใบนี้ต่างกันแค่มีก้อนเงินทอนหรือไม่มี แต่ผลต่างกันคนละเรื่อง เพราะระบบไม่มีทางรู้ว่าส่วนที่เหลือนั้นคุณตั้งใจให้หรือลืม

กระเป๋าสำเร็จรูปจัดการเรื่องนี้ให้อัตโนมัติอยู่แล้ว คนที่เจอปัญหานี้คือคนที่เขียนโปรแกรมสร้างใบสั่งจ่ายเอง และมันคือคำอธิบายว่าทำไมข่าวคนจ่ายค่าธรรมเนียมสูงผิดปกติถึงเกิดขึ้นได้จริง

เอาเงินบาทเข้าไปเป็นเหรียญได้ยังไง แล้วเก็บยังไง

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

แกะคำศัพท์: ตลาดซื้อขายสินทรัพย์ดิจิทัล

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

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

ขั้นที่ 1 ในโลกของบริษัท โอนเงินบาทเข้าบัญชีบริษัท บริษัทแก้ตัวเลขในฐานข้อมูลตัวเอง ยังไม่มีอะไรลงสมุดเลยสักบรรทัด ขั้นที่ 2 ในสมุดจริง กดถอนไปที่อยู่ของคุณเอง ธุรกรรมจริงถูกประกาศและถูกขุด กุญแจย้ายมาอยู่กับคุณ คนจำนวนมากหยุดอยู่แค่กล่องซ้าย แล้วเข้าใจว่าตัวเองถือเหรียญแล้ว
สองขั้นนี้อยู่คนละโลกกัน ขั้นแรกทั้งหมดเกิดในฐานข้อมูลของบริษัท ถ้าหยุดแค่นั้น สิ่งที่คุณถืออยู่คือคำสัญญาของบริษัท ต่อเมื่อกดถอนออกมาเท่านั้น เหรียญถึงจะกลายเป็นของที่ผูกกับกุญแจของคุณเอง

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

แล้วเก็บกุญแจไว้ที่ไหนดี

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

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

สองอย่างที่ไม่มีใครกู้ให้ได้

ความที่แก้ย้อนหลังไม่ได้เป็นคุณสมบัติที่ดีมากตอนมีคนพยายามโกงคุณ และเป็นคุณสมบัติเดียวกันเป๊ะตอนที่คนพลาดเอง

ระวัง: ส่งผิดที่ ไม่มีปุ่มยกเลิก

ข่าวดีคือที่อยู่ทุกอันมีตัวตรวจทานฝังอยู่ในตัวมันเอง พิมพ์ตกหรือสลับตัวอักษรไปหนึ่งตัว กระเป๋าจะขึ้นว่าที่อยู่ไม่ถูกต้องแล้วไม่ยอมส่งให้ตั้งแต่แรก พลาดแบบพิมพ์ผิดเฉย ๆ จึงแทบไม่ทำให้เงินหาย

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

ระวัง: การหลอกลวงที่เจอซ้ำ ๆ

กติกาข้อเดียวที่กันได้เกือบทั้งหมดคือ ชุดคำกู้คืนไม่เคยต้องถูกพิมพ์ที่ไหนนอกจากตอนกู้กระเป๋าของตัวเอง ไม่มีเว็บไหน แอปไหน หรือฝ่ายซัพพอร์ตของใครที่ต้องใช้มัน ใครขอคือมิจฉาชีพร้อยเปอร์เซ็นต์ ไม่มีข้อยกเว้น

ท่าที่เหลือเป็นการหลอกให้คุณกดส่งเอง เพราะคนร้ายขโมยจากสมุดตรง ๆ ไม่ได้ ที่เจอบ่อยคือให้โอนไปก่อนแล้วจะคืนให้เป็นสองเท่า เว็บลงทุนที่การันตีผลตอบแทน แอปกระเป๋าปลอมที่โหลดจากลิงก์ที่คนส่งมาให้ และคนที่ทักมาสอนลงทุนแล้วค่อย ๆ ให้โอนเพิ่ม ทุกท่าลงเอยที่การให้คุณเป็นคนกดส่ง เพราะนั่นเป็นทางเดียวที่เหรียญจะขยับได้

ค่าธรรมเนียม และห้องรอที่ชื่อเมมพูล

ธุรกรรมที่ประกาศออกไปแล้วแต่ยังไม่เข้าบล็อก จะไปนั่งรออยู่ในห้องรอที่แต่ละโหนดถือไว้เอง เรียกว่า เมมพูล (mempool) อ่านว่า "เมมพูล" ย่อมาจาก memory pool แปลว่าแอ่งพักในหน่วยความจำ

คำว่า "ที่แต่ละโหนดถือไว้เอง" สำคัญกว่าที่ฟัง เพราะแปลว่า ไม่มีห้องรอกลางที่ไหนเลย มีแต่ห้องรอของใครของมันหลายหมื่นห้อง ธุรกรรมของคุณจึงไม่ได้ไปเข้าคิวที่เดียว มันถูกส่งต่อไปนั่งอยู่ในห้องรอของโหนดที่ได้ยินข่าว และสองห้องไม่จำเป็นต้องมีของเหมือนกันเป๊ะ เพราะข่าวเดินทางไม่พร้อมกัน

โหนด A ใบของคุณ โหนด B ใบของคุณ โหนด C ยังไม่ได้ยินข่าว ห้องรอของใครของมัน ไม่มีคิวกลาง ลำดับในแต่ละห้องก็เรียงเองด้วย ไม่ได้มาจากส่วนกลาง
ห้องรอเป็นของใครของมัน ธุรกรรมใบเดียวกันจึงไปนั่งอยู่หลายหมื่นห้องพร้อมกัน และห้องที่ยังไม่ได้ยินข่าวก็ยังไม่มีใบนั้น ตอนนักขุดประกอบบล็อก เขาหยิบจากห้องของตัวเองเท่านั้น

แล้วนักขุดนั่งเลือกเองหรือเปล่า

ไม่ได้นั่งเลือกครับ ของจริงเป็นงานอัตโนมัติล้วน ๆ โปรแกรมโหนดประกอบบล็อกตัวอย่างให้เสร็จ โดยเรียงใบในห้องรอของตัวเองตามค่าธรรมเนียมต่อขนาด แล้วหยิบจากบนลงล่างจนที่ว่างเต็ม เครื่องขุดรับส่วนหัวของบล็อกตัวอย่างนั้นไปเดาเลขอย่างเดียว ไม่ได้ยุ่งกับการเลือกธุรกรรมเลย

วิธีเรียงนี้เป็นค่าตั้งต้น ไม่ใช่กติกา

กติกาของระบบไม่ได้บังคับว่าต้องหยิบใบที่จ่ายสูงก่อน มันแค่บอกว่าบล็อกต้องไม่เกินขนาดที่กำหนด และทุกใบในนั้นต้องถูกต้อง นักขุดจะหยิบใบไหนก็ได้ จะขุดบล็อกเปล่าที่มีแต่ใบจ่ายรางวัลก็ยังถูกกติกา

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

ห้องรอ เรียงตามค่าธรรมเนียมต่อขนาด ธุรกรรม 42 ต่อไบต์ ธุรกรรม 30 ต่อไบต์ ธุรกรรม 21 ต่อไบต์ ธุรกรรม 9 ต่อไบต์ ธุรกรรม 4 ต่อไบต์ ตักไป บล็อกถัดไป ที่ว่างจำกัดเป็นไบต์ รับได้แค่สามใบบนสุด ที่เหลือรอรอบหน้า ห้องรอแน่นเมื่อไร ค่าธรรมเนียมก็พุ่งตามการแย่งกันเข้าบล็อก
โปรแกรมเรียงตามค่าธรรมเนียมต่อขนาด ไม่ใช่ยอดค่าธรรมเนียมดิบ ๆ เพราะที่ว่างในบล็อกมีจำกัดเป็นไบต์ ใบที่จ่ายน้อยกว่าไม่ได้ถูกปฏิเสธ มันแค่ต้องรอรอบถัดไป
โอน 1,000 บาท ขนาด 250 ไบต์ ค่าธรรมเนียมเท่ากัน โอน 10,000,000 บาท ขนาด 250 ไบต์ ค่าธรรมเนียมเท่ากัน คิดตามที่ว่างที่กินไป ไม่ใช่ตามยอดเงิน
กฎที่คนแปลกใจที่สุดของค่าธรรมเนียม คือมันไม่เกี่ยวกับยอดเงินที่โอนเลย ใบที่โอนพันบาทกับใบที่โอนสิบล้าน ถ้าขนาดข้อมูลเท่ากันก็จ่ายเท่ากัน

ข้อนี้ทำให้สายหลักไม่เหมาะกับการซื้อกาแฟในชีวิตประจำวัน มีความพยายามแก้ด้วยชั้นที่สร้างทับข้างบน อย่าง Lightning Network ซึ่งยาวพอที่จะเป็นอีกบทหนึ่ง

ภาค 5 จาก 7 ลองถือสมุดเอง ส่วนที่ลงมือทำตามได้จริงและไม่เสียเงิน สมุดใหญ่แค่ไหน คอมบ้าน ๆ ไหวไหม และเปิดโหนดของตัวเองยังไง

สมุดที่ทุกคนถือ มันบวมแค่ไหน

ธุรกรรมทุกใบถูกเก็บไว้เต็ม ๆ อ่านออกทุกตัวอักษร ตามที่คุยกันไปตอนเรื่องต้นไม้เมอร์เคิล เว็บเปิดดูสมุดจึงค้นธุรกรรมของปี 2010 ได้ทุกใบ และผลที่ตามมาก็ตรงไปตรงมา สมุดมีแต่โตขึ้น และทุกโหนดที่เก็บครบก็ต้องแบกมันทั้งเล่ม ณ 3 กันยายน 2026 สมุดทั้งเล่มหนักราว และในรอบหนึ่งปีที่ผ่านมามันโตขึ้นราว ซึ่งฮาร์ดดิสก์ราคาหลักพันบาทก็ยังรับไหว

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

สมุดโตได้แค่ไหนในหนึ่งปี 80 GB ที่โตจริงปีที่ผ่านมา 205 GB เพดานที่กติกายอมให้ ทั้งเล่มตอนนี้ 748 GB
ช่องว่างระหว่างสองเส้นคือหัวใจของเรื่อง ต่อให้ทุกบล็อกอัดเต็มพิกัดทุกก้อนตลอดปี สมุดก็โตได้แค่เส้นบน ซึ่งยังเป็นตัวเลขที่ฮาร์ดดิสก์เครื่องบ้านรับไหว

และไม่ใช่ทุกเครื่องที่ต้องเก็บครบ ของจริงมีสามชั้นให้เลือก หนักไม่เท่ากันคนละโลก

โหนดที่เก็บครบทั้งเล่ม ตรวจได้เองทุกอย่างตั้งแต่บล็อกแรก และตอบคำถามคนอื่นได้ 748 GB โหนดที่ตรวจครบแล้วทิ้งของเก่า ตรวจเองมาแล้วตั้งแต่ต้น เหลือเก็บแค่ยอดคงเหลือปัจจุบัน ไม่กี่ GB แอปกระเป๋าในมือถือ เก็บแค่ส่วนหัวทุกบล็อก แล้วขอหลักฐานเมอร์เคิลเป็นราย ๆ ราว 77 MB
สามชั้นนี้ตรวจได้ไม่เท่ากัน ชั้นบนสุดตรวจได้เองทั้งหมดตั้งแต่บล็อกแรก ชั้นล่างสุดต้องขอหลักฐานจากคนอื่นเป็นราย ๆ แต่ก็ยังไม่ต้องเชื่อใจว่าเขาพูดจริง เพราะหลักฐานตรวจเองได้
แล้วถ้ามีคนตั้งใจปั่นให้สมุดบวมล่ะ ทำได้ไหม

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

ที่ว่างในบล็อกหนึ่งก้อน เท่ากันทั้งสองวัน วันปกติ ใบของคนทั่วไปได้ที่ครบ วันที่มีคนปั่น ใบของคนปั่น ใบของคนปั่น คนอื่นเหลือที่ใบเดียว ต้องเสนอสูงขึ้นเพื่อแย่ง
เงินที่นักขุดคืนให้เพื่อนไม่ใช่ต้นทุนจริงของเขา ต้นทุนจริงคือค่าธรรมเนียมของคนอื่นที่เขาไม่ได้รับ เพราะเอาที่ว่างไปให้เพื่อนแทน ยิ่งปั่นนาน ยิ่งแพงสำหรับคนปั่นเอง

ต้นทุนจริงของนักขุดที่ฮั้วด้วยจึงไม่ใช่เงินที่คืนไป แต่คือค่าธรรมเนียมของคนอื่นที่เขาไม่ได้รับ เพราะเอาพื้นที่ไปให้เพื่อนแทน ยิ่งปั่นนาน ยิ่งแพงสำหรับคนปั่นเอง

ราคาที่จ่ายเพื่อให้คอมบ้าน ๆ ยังถือสมุดได้

เพดานที่เพิ่งพูดถึงมีอีกด้านที่ต้องยอมรับตรง ๆ ถ้าบล็อกโตไม่ได้ จำนวนธุรกรรมต่อวินาทีก็โตไม่ได้เหมือนกัน จากบล็อกจริงในช่วงนี้ บิตคอยน์รับได้ราว ขณะที่เครือข่ายบัตรเครดิตอย่างวีซ่าบอกเองว่ารับได้ถึง 83,000 ข้อความต่อวินาที ต่างกันราว 9 พันเท่า

หนึ่งจุด เท่ากับหนึ่งใบต่อวินาที บิตคอยน์ 8.9 ใบต่อวินาที นับได้ด้วยตา วีซ่า 83,000 ข้อความต่อวินาที วาดเป็นจุดไม่ไหว ต้องวาดแถวข้างบนซ้ำอีกราว 9 พันแถว จึงจะได้ความยาวเท่ากัน ภาพนี้ไม่ได้ย่อสเกล เพราะถ้าย่อให้พอดีหน้า ฝั่งบิตคอยน์จะหายไปเลย
ช่องว่างนี้ใหญ่เกินกว่าจะวาดเป็นแท่งเทียบกันตรง ๆ ได้ ถ้าให้หนึ่งจุดแทนหนึ่งใบต่อวินาที ฝั่งบิตคอยน์คือเก้าจุด ส่วนฝั่งวีซ่าต้องวาดแบบเดียวกันอีกราว 9 พันแถว

เพดานนี้ไม่ใช่ข้อจำกัดที่แก้ไม่ได้ แค่แก้ตัวเลขในกติกาให้บล็อกใหญ่ขึ้นก็จบ ราคาของมันคือวงจรข้างล่างนี้

ขยายขนาดบล็อก สมุดโตเร็วขึ้นตามกัน เครื่องบ้าน ๆ เก็บครบไม่ไหว เหลือแต่ศูนย์ข้อมูลที่ถือสมุด ต้องถามเขาว่าเงินเรามีเท่าไร กลับไปมีคนกลางเหมือนเดิม คือปัญหาข้อแรกของบทความนี้ ทางแยกอยู่ที่ขั้นแรก ทุกอย่างหลังจากนั้นตามมาเอง
ปลายทางของการขยายบล็อกไปเรื่อย ๆ คือวงกลับไปที่ปัญหาข้อแรกของบทความนี้พอดี คือคนทั่วไปต้องถามคนอื่นว่าเงินตัวเองมีเท่าไร

ความเร็วต่ำไม่ใช่ความบกพร่องที่ยังแก้ไม่เสร็จ มันคือราคาที่จ่ายไปแลกกับการที่คอมบ้าน ๆ เครื่องหนึ่งยังตรวจทุกอย่างเองได้โดยไม่ต้องเชื่อใจใคร

เรื่องนี้ไม่ได้ตกลงกันด้วยดี ปี 2017 สองฝั่งเถียงกันเรื่องขั้นแรกของวงจรนี้ตรง ๆ แล้วจบด้วยการแยกสายกันเป็นคนละเครือข่าย ซึ่งก็คือฟอร์กแบบตั้งใจตามที่เล่าไว้ในหัวข้อทางแยก และเป็นบรรทัดปี 2017 ในไทม์ไลน์ข้างล่าง

ส่วนทางที่ฝั่งที่ไม่ขยายเลือกเดินแทน คือย้ายการโอนย่อย ๆ ออกไปทำนอกสมุด เปิดช่องทางระหว่างสองคนไว้ โอนกันกี่รอบก็ได้โดยไม่แตะสมุดเลย แล้วค่อยสรุปยอดสุดท้ายลงสมุดทีเดียวตอนปิดช่อง เหมือนเปิดบิลไว้ที่ร้านแล้วเคลียร์ทีเดียวตอนกลับ ของแบบนี้เรียกว่า ชั้นที่สอง (layer 2) และตัวที่ใช้กันจริงบนบิตคอยน์ชื่อ ไลต์นิง เน็ตเวิร์ก (Lightning Network) แปลตรงตัวว่าเครือข่ายสายฟ้า ตั้งชื่อตามความเร็วที่ตั้งใจให้เป็น

โอนบนสมุดตรง ๆ 10 ครั้ง กินที่ในสมุด 10 บรรทัด เปิดช่องทางแล้วโอนกันนอกสมุด บรรทัดเปิดช่อง โอนกันไปมา 10 ครั้ง สมุดไม่รับรู้เลยสักครั้ง บรรทัดปิดช่อง สมุดเห็นแค่ 2 บรรทัด แทนที่จะเป็น 10 เหมือนเปิดบิลไว้ที่ร้านแล้วเคลียร์ทีเดียวตอนกลับ
โอนกันสิบครั้งบนสมุดกินที่สิบบรรทัด แต่ถ้าเปิดช่องทางไว้ สมุดเห็นแค่สองบรรทัด คือตอนเปิดกับตอนปิด ที่เหลือเกิดขึ้นระหว่างสองคนเท่านั้น

อยากถือสมุดเองบ้าง ต้องทำยังไง

ทั้งบทพูดถึงโหนดมาตลอดว่ามันคือเครื่องที่ถือสมุดและตรวจทุกอย่างเอง ของแบบนี้ฟังดูเหมือนต้องเป็นบริษัท แต่จริง ๆ คือโปรแกรมตัวหนึ่งที่ลงในคอมที่บ้านได้ ไม่เสียเงิน ไม่ต้องขออนุญาตใคร และไม่ต้องบอกใครว่าคุณเปิด

โปรแกรมที่คนส่วนใหญ่ใช้ชื่อ Bitcoin Core อ่านว่า "บิตคอยน์ คอร์" คำว่า core แปลว่าแกน คือชุดโค้ดสายหลักที่สืบทอดมาจากโปรแกรมตัวแรกที่ซาโตชิปล่อยออกมา โหลดได้ที่ bitcoincore.org และเปิดโค้ดให้อ่านทุกบรรทัดที่ github.com/bitcoin/bitcoin

หน้าดาวน์โหลดจริง มีให้เลือกทุกระบบปฏิบัติการ และมีลิงก์ SHA256 ไว้ให้ตรวจว่าไฟล์ที่โหลดมาไม่ถูกใครสับเปลี่ยนกลางทาง ภาพหน้าจอ bitcoincore.org/en/download เมื่อ 4 กันยายน 2026

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

หน้าแรกที่เจอตอนเปิดโปรแกรม ช่องติ๊กบรรทัดล่างสุดคือโหมดพรูนที่จะเล่าต่อข้างล่าง ติ๊กตรงนี้ครั้งเดียวจบ ภาพหน้าจอ Bitcoin Core 31.1 บนวินโดวส์ เมื่อ 4 กันยายน 2026

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

ตรงนี้แหละคือของที่แลกมากับเวลาที่เสียไป ช่องว่างสามข้อของเครื่องเล็กที่เล่าไว้ใน ท้ายหัวข้อรากเมอร์เคิล ปิดหมดทุกข้อเมื่อคุณถือสมุดครบเอง ไม่มีใครเงียบใส่คุณได้เพราะคุณเปิดดูเองทุกใบ ไม่ต้องเชื่อว่าใครตรวจกติกาให้แล้วเพราะคุณตรวจเอง

ระหว่างนั้นหน้าจอจะขึ้นช่อง "เวลาที่เหลือโดยคาดการณ์" ให้ดู และมันคือช่องที่ผมอยากให้คุณอย่าเพิ่งเชื่อ เก้าภาพข้างล่างนี้ถ่ายจากรอบซิงก์รอบเดียวกัน กดลูกศรดูทีละใบแล้วดูที่บรรทัดล่างสุด

1 / 9
เพิ่งเริ่ม สมุดเดินอยู่แถวเดือนมกราคม 2010 ทำได้ 0.02% ต่อชั่วโมง โปรแกรมจึงเดาว่าจะเสร็จใน 28 สัปดาห์ ภาพหน้าจอ Bitcoin Core 31.1 บนวินโดวส์ เมื่อ 4 ถึง 5 กันยายน 2026

จาก 28 สัปดาห์ เหลือ 2 วัน เหลือ 33 ชั่วโมง แล้วเหลือ 9 ชั่วโมง ตัวเลขนี้ไม่ได้เพี้ยน โปรแกรมแค่เอาอัตราที่ทำได้ล่าสุดไปคูณกับงานที่เหลือตรง ๆ พอดูอีกช่องหนึ่งจะเห็นว่าอัตรานั่นแหละที่กำลังวิ่งขึ้น จาก 0.02% ต่อชั่วโมง เป็น 1.41% เป็น 2.94% แล้วพุ่งไปถึง 10.31%

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

ใบสุดท้ายคือจังหวะที่เงื่อนไขนั้นเป็นจริงพอดี อัตรานิ่งอยู่ที่ 12.00% ต่อชั่วโมง งานที่เหลือลดลงเหลือ 42,335 ก้อนจากเกือบล้านก้อน คำเดาจึงหดลงมาเป็น 48 นาที ซึ่งเป็นครั้งแรกที่มันกลายเป็นตัวเลขที่เอาไปวางแผนได้ ตัวเลขเดียวกันนี้ถ้าไปอ่านตอนใบแรกจะไร้ความหมายสิ้นเชิง

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

พอไล่จบ หน้าจอจะเปลี่ยนไปเลย กล่องเตือนสีเหลืองที่บอกว่ายอดในกระเป๋าอาจยังไม่ถูกต้องหายไป แถบที่ขอบล่างซึ่งคอยบอกว่าตามหลังอยู่กี่สัปดาห์ก็หายไปด้วย เครื่องของคุณถือสมุดครบทั้งเล่มและตรวจมาเองทุกก้อนแล้ว

หน้าตาตอนไล่จบ กล่องเตือนสีเหลืองหายไป แถบ "ตามหลัง" ที่ขอบล่างหายไปด้วย เหลือแค่หน้าต่างเปล่ากับคำถามว่าจะเปิดกระเป๋าไหม ภาพหน้าจอ Bitcoin Core 31.1 บนวินโดวส์ เมื่อ 5 กันยายน 2026

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

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

ถ้าปิดคอมกลางคันตอนยังซิงก์ไม่เสร็จ งานที่ไล่มาหายไหม

ไม่หายครับ เหตุผลเดียวกับที่เล่าไว้ในหัวข้อไฟดับทั้งโลกข้างบน คือโปรแกรมเขียนลงดิสก์จริงตลอดทาง ที่ต่างกันคือรอบนี้เป็นเรื่องของเครื่องคุณเอง ซึ่งมีรายละเอียดที่ควรรู้ก่อนกดปิด

ปิดแบบปกติ คือสั่งจากเมนูไฟล์หรือกดกากบาทที่มุมหน้าต่าง มันจะเขียนของที่ค้างอยู่ในหน่วยความจำลงดิสก์ให้เรียบร้อยก่อนแล้วค่อยดับ ระหว่างนั้นจะขึ้นหน้าต่างบอกว่ากำลังปิดอยู่ บางทีกินเวลาเป็นนาที ปล่อยให้มันทำงานจนหน้าต่างหายไปเอง เปิดใหม่คราวหน้ามันเดินต่อจากจุดเดิมทันที

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

กรณีที่แย่กว่านั้นแต่ยังไม่ถึงกับต้องโหลดใหม่ ถ้าดัชนีนั้นพังจริง เปิดโปรแกรมมาจะมีหน้าต่างถามว่าจะสร้างฐานข้อมูลใหม่ไหม กดตกลงแล้วมันสร้างใหม่จากแฟ้มบล็อกที่อยู่ในเครื่อง ไม่ได้โหลดใหม่จากเน็ต แต่ต้องไล่ตรวจใหม่ทั้งหมด ซึ่งกินเวลาพอ ๆ กับที่เพิ่งไล่มา ส่วนกรณีที่ต้องโหลดใหม่จริงคือแฟ้มบล็อกเสียหายไปด้วย ซึ่งเจอไม่บ่อย

ระวัง: ปุ่มปิดเครื่องของวินโดวส์

การสั่งปิดเครื่องจะบอกให้ทุกโปรแกรมปิดตัว แต่ให้เวลาจำกัด ถ้า Bitcoin Core ปิดไม่ทัน มันจะโดนฆ่าทิ้ง ซึ่งกลายเป็นกรณีที่สองข้างบน ปลอดภัยกว่าคือปิด Bitcoin Core เองก่อน รอจนหน้าต่างหายไปจริง แล้วค่อยสั่งปิดเครื่อง

เคล็ดลับ: ถ้าฮาร์ดดิสก์ไม่พอ

สมุดทั้งเล่มตอนนี้หนักราว 748 กิกะไบต์และโตขึ้นทุกปี ถ้าไม่อยากเสียที่ขนาดนั้น เปิดโหมดที่เรียกว่า พรูน (prune) อ่านว่า "พรูน" แปลว่าตัดแต่งกิ่ง โปรแกรมจะยังโหลดและตรวจทุกบล็อกตั้งแต่ก้อนแรกเหมือนเดิมทุกอย่าง แต่พอตรวจเสร็จก็ทิ้งบล็อกเก่าที่ไม่ต้องใช้แล้ว เหลือเก็บไว้แค่ไม่กี่ร้อยเมกะไบต์

คุณยังตรวจเองได้เต็มร้อยเหมือนเดิม สิ่งที่เสียไปคือคุณแจกสมุดเก่าให้คนอื่นโหลดไม่ได้ และย้อนดูธุรกรรมเก่า ๆ ในเครื่องตัวเองไม่ได้

เรื่องที่ต้องบอกให้ชัดคือ การเปิดโหนดไม่ใช่การขุด และไม่ได้เงินสักบาท เครื่องของคุณไม่ได้เดาเลขแข่งกับใคร มันแค่ตรวจกับเก็บ สิ่งที่คุณได้กลับมามีอย่างเดียว คือคุณเลิกต้องเชื่อคำบอกเล่าของใครทั้งสิ้น กระเป๋าที่ต่อกับโหนดตัวเองจะถามยอดจากสมุดของคุณเอง แทนที่จะถามจากเซิร์ฟเวอร์ของบริษัทไหน

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

ประกอบร่าง: เกิดอะไรขึ้นตอนคุณกดปุ่มส่ง

ทุกชิ้นส่วนถูกวางครบแล้ว ลองกดเดินดูทีละจังหวะว่าเงินหนึ่งก้อนเดินทางยังไง ทุกสถานีบนเส้นทางนี้คือของที่ผ่านตามาแล้วทั้งหมด

เส้นทางของธุรกรรมหนึ่งใบ

ที่น่าสังเกตคือไม่มีขั้นตอนไหนเลยที่ต้องขออนุญาตใคร ไม่มีใครอนุมัติ ไม่มีใครปฏิเสธได้ สิ่งที่ตัดสินว่าธุรกรรมของคุณผ่านหรือไม่ผ่านมีสองอย่าง คือลายเซ็นถูกต้องไหม และค่าธรรมเนียมที่คุณให้คุ้มพอให้นักขุดหยิบไหม

และถ้าถอยออกมามองทั้งวง จะเห็นว่าไม่มีใครในภาพนี้ทำเพราะถูกสั่งเลยสักคน ทุกฝ่ายทำเพราะมันคุ้มกับตัวเอง แล้วบังเอิญว่าทางที่คุ้มกับตัวเองของแต่ละฝ่าย ดันเป็นทางเดียวกับที่ทำให้ระบบทั้งระบบยังเดินอยู่ได้พอดี

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

ภาค 6 จาก 7 ที่มา ประวัติ และโค้ดจริง ย้อนดูว่าของชิ้นนี้เดินทางมายังไงตลอดสิบแปดปี และโค้ดชุดแรกที่ทุกอย่างเริ่มจากมันอยู่ตรงไหน

แล้วปี 2140 ที่เหรียญหมด นักขุดจะอยู่ด้วยอะไร

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

คำตอบตามการออกแบบคือ ค่าธรรมเนียมจะรับช่วงต่อ ทุกครั้งที่ฮาล์ฟวิงเกิดขึ้น รางวัลก็หดลงครึ่งหนึ่ง ส่วนค่าธรรมเนียมไม่ได้ถูกกติกาบังคับให้ลด สัดส่วนรายได้จึงขยับไปทางค่าธรรมเนียมทีละขั้น

ยุค 1 50 ยุค 2 25 ยุค 3 13 ยุค 4 6 ยุค 5 3 ยุค 6 2 ยุค 7 0.78 รางวัลต่อบล็อก หน่วยเหรียญ ค่าธรรมเนียมไม่ได้ถูกกติกาบังคับให้ลดตาม
แท่งเขียวคือรางวัลบล็อกที่หารครึ่งทุกยุคตามกติกา ส่วนแถบทองคือค่าธรรมเนียม ซึ่งวันนี้ยังเป็นเพียง 0.41% ของรายได้นักขุด คำถามที่ยังไม่มีใครตอบได้คือ ตอนที่แท่งเขียวหดจนหมด แถบทองจะโตพอไหม

วันนี้สัดส่วนยังห่างกันมาก อ่านจากบล็อกจริง 144 บล็อกล่าสุด ค่าธรรมเนียมคิดเป็นเพียง ของรายได้นักขุด ที่เหลือมาจากรางวัลบล็อกทั้งหมด

ตรงนี้ผมอยากพูดตรง ๆ ว่ามันเป็นสมมติฐานที่ยังไม่เคยถูกทดสอบจริง ไม่มีใครรู้ว่าค่าธรรมเนียมล้วน ๆ จะพอจ่ายความปลอดภัยระดับที่เครือข่ายมีอยู่ตอนนี้ไหม ข้อถกเถียงนี้มีอยู่ในวงการมานาน และเราเหลือเวลาอีกร้อยกว่าปีให้หาคำตอบ ผมยกมาเพราะมันเป็นคำถามเปิดที่แท้จริงของระบบ ไม่ใช่ข้อบกพร่องที่ปิดบังไว้

ไม่ระบุชื่อ แต่ไม่ได้ไร้ร่องรอย

ความเข้าใจผิดที่ค้างอยู่ในหัวคนมานานที่สุดข้อหนึ่งคือบิตคอยน์เป็นเงินที่ตามรอยไม่ได้ ความจริงมันกลับกันเกือบสุดขั้ว ธุรกรรมทุกรายการตั้งแต่ปี 2009 เปิดให้ทุกคนในโลกอ่านได้ตลอดเวลา เปิดเว็บดูสมุดแล้วไล่ได้เลยว่าที่อยู่ไหนโอนไปที่อยู่ไหน เมื่อไร เท่าไร

สิ่งที่สมุดไม่ได้เก็บคือชื่อคน มันเก็บแค่ที่อยู่ ลักษณะแบบนี้เรียกว่า การใช้นามแฝง (pseudonymity) อ่านว่า "ซูโดนิมิตี" ส่วนคำว่า pseudo แปลว่าเทียมหรือปลอม รากศัพท์เดียวกับที่ใช้ในคำว่านามปากกา ซึ่งต่างจากการไร้ตัวตนโดยสิ้นเชิง ตรงที่นามแฝงถูกโยงกลับมาหาตัวจริงได้ ถ้ามีใครสักคนรู้จุดเชื่อม

สมุดสาธารณะ เห็นทุกเส้นแต่ไม่มีชื่อ bc1… bc1… bc1… bc1… bc1… ยืนยันตัวตนที่ตลาด ด้วยบัตรประชาชน ที่อยู่ที่คุณแปะไว้ ให้คนโอนเข้า ถอนเข้าบัญชีธนาคาร ชื่อคุณเต็ม ๆ
สมุดไม่มีชื่อคนสักตัว แต่จุดเชื่อมกลับมาหาตัวจริงมีอยู่รอบตัวในชีวิตประจำวัน พอมีจุดเชื่อมจุดเดียว การไล่กราฟย้อนขึ้นลงจากจุดนั้นก็เป็นงานที่มีบริษัทรับทำเป็นอาชีพ เช่น Chainalysis

เงินสดคือเงินที่ไม่มีใครจดว่าคุณจ่ายให้ใคร บิตคอยน์คือเงินที่ทุกคนจดไว้ตลอดกาล แต่จดโดยไม่ใส่ชื่อคุณลงไป


สิบแปดปีของบิตคอยน์

  1. 2008เอกสารต้นฉบับเก้าหน้าชื่อ Bitcoin: A Peer-to-Peer Electronic Cash System ถูกโพสต์ลงเมลลิงลิสต์
  2. 2009บล็อกกำเนิดถูกขุด เครือข่ายเริ่มเดินด้วยเครื่องเดียวในโลก
  3. 2010พิซซ่าสองถาดแลก 10,000 เหรียญ ราคาเกิดขึ้นเป็นครั้งแรก
  4. 2011ผู้สร้างถอยออกจากโครงการแล้วหายไปเงียบ ๆ
  5. 2014Mt.Gox ล่ม บริษัทตัวกลางล้ม ไม่ใช่เครือข่ายล่ม
  6. 2017เถียงกันว่าจะขยายบล็อกเพื่อรับคนมากขึ้น หรือคงไว้เล็กเพื่อให้เครื่องบ้าน ๆ ยังเก็บสมุดครบได้ ตกลงกันไม่ได้จนเกิดฟอร์กแบบตั้งใจ แยกสายเป็น Bitcoin Cash
  7. 2022FTX ล่ม บริษัทตัวกลางอีกราย
  8. 2024ETF ที่ถือเหรียญจริงได้ไฟเขียว และฮาล์ฟวิงครั้งที่สี่

เหตุการณ์ที่เปลี่ยนอะไรจริง ๆ มีไม่กี่จุด สองจุดที่คนจำผิดบ่อยที่สุดคือปี 2014 กับ 2022 ซึ่งเป็นบริษัทตัวกลางล่ม ไม่ใช่เครือข่ายล่ม

สามจุดในไทม์ไลน์นั้นควรเล่ายาวกว่าบรรทัดเดียว จุดแรกคือบล็อกกำเนิดเมื่อวันที่ 3 มกราคม 2009 กับพาดหัว The Times ที่สลักอยู่ในนั้น ซึ่งค้างคำถามไว้ตั้งแต่หัวข้อร้อยหน้ากระดาษว่าทำไมต้องเป็นข่าวชิ้นนี้ คำตอบคือข้อความนั้นทำหน้าที่สองอย่างพร้อมกัน เป็นหลักฐานว่าบล็อกนี้ถูกสร้างหลังวันนั้น ไม่ได้แอบขุดล่วงหน้า เพราะไม่มีใครรู้พาดหัวของวันพรุ่งนี้ได้ และเป็นคำแถลงจุดยืนว่าเขากำลังสร้างอะไรอยู่ ในวันที่ข่าวหน้าหนึ่งคือรัฐบาลกำลังจะอุ้มธนาคารเป็นรอบที่สอง

จุดที่สองคือวันที่ 22 พฤษภาคม 2010 Laszlo Hanyecz อ่านว่า "ลาสโล ฮันเยตซ์" โปรแกรมเมอร์ที่ฟลอริดา จ่าย 10,000 เหรียญแลกพิซซ่า Papa John's สองถาด โดยมีคนวัยสิบเก้าชื่อ Jeremy Sturdivant รับข้อเสนอ มูลค่าตอนนั้นอยู่ที่ราวสี่สิบเอ็ดดอลลาร์ คนชอบเล่าเรื่องนี้เป็นมุกว่าพิซซ่าที่แพงที่สุดในโลก แต่ประเด็นที่สำคัญกว่าคือ วันนั้นคือวันที่ราคาเกิดขึ้นเป็นครั้งแรก ราคาไม่ได้มาจากสูตรหรือจากการรับรองของใคร มันมาจากการที่มีคนสองคนตกลงแลกของกันจริงหนึ่งครั้ง

จุดที่สามคือปี 2014 กับ 2022 เดือนกุมภาพันธ์ 2014 Mt.Gox อ่านว่า "เมาท์ก็อกซ์" ตลาดซื้อขายที่ใหญ่ที่สุดในยุคนั้น หยุดให้ถอนเงินแล้วยื่นล้มละลาย โดยแจ้งว่าเหรียญราว 850,000 เหรียญหายไป ในจำนวนนั้น 750,000 เหรียญเป็นของลูกค้า ภายหลังพบเหรียญเก่าคืนมาราว 200,000 เหรียญ ส่วนเดือนพฤศจิกายน 2022 FTX ล้มลงด้วยเหตุผลคนละแบบ คือเอาเงินลูกค้าไปใช้ในบริษัทในเครือ

จุดที่คนสับสนบ่อยที่สุด

ทั้ง Mt.Gox และ FTX คือ บริษัทตัวกลางล่ม ไม่ใช่เครือข่ายล่ม ตลอดสองเหตุการณ์นั้นเครือข่ายเดินหน้าออกบล็อกทุกสิบนาทีตามปกติ ไม่มีธุรกรรมไหนหาย สิ่งที่พังคือบริษัทที่ลูกค้าฝากกุญแจไว้ให้ ซึ่งย้อนกลับไปที่ประโยคในหัวข้อกระเป๋าพอดี

อีกจุดที่ตอบคำถามว่าทำไมเวลาค้นคำว่าบิตคอยน์ถึงเจอชื่อคล้าย ๆ กันหลายตัว คือปี 2017 ชุมชนเถียงกันหนักเรื่องขนาดของบล็อก ฝั่งหนึ่งอยากขยายบล็อกให้ใส่ธุรกรรมได้มากขึ้นเพื่อลดค่าธรรมเนียม อีกฝั่งค้านว่าบล็อกใหญ่ทำให้ต้นทุนการรันโหนดสูงขึ้นจนคนทั่วไปรันไม่ไหว การเถียงจบลงด้วยการที่ฝั่งหนึ่ง แยกไปเขียนกติกาของตัวเองเมื่อเดือนสิงหาคม 2017 เกิดเป็นเหรียญชื่อ Bitcoin Cash การแยกแบบนี้เรียกว่า ฮาร์ดฟอร์ก (hard fork) คือการเปลี่ยนกติกาแบบที่โหนดเก่ารับไม่ได้ จึงกลายเป็นคนละเครือข่ายถาวร ต่างจากทางแยกชั่วคราวในหัวข้อสองสายที่จบเองในไม่กี่นาที

จุดสุดท้ายคือวันที่ 10 มกราคม 2024 คณะกรรมการกำกับหลักทรัพย์ของสหรัฐอนุมัติ กองทุนรวมดัชนีที่ซื้อขายในตลาด (Exchange-Traded Fund หรือย่อว่า ETF) ที่ถือเหรียญจริง พร้อมกันสิบเอ็ดกอง หลังจากปฏิเสธคำขอลักษณะเดียวกันมากว่ายี่สิบครั้งตั้งแต่ปี 2018 แล้ววันที่ 20 เมษายนปีเดียวกัน ฮาล์ฟวิงครั้งที่สี่ก็เกิดขึ้น รางวัลลดจาก 6.25 เหลือ 3.125 เหรียญต่อบล็อก ซึ่งเป็นอัตราที่ยังใช้อยู่จนถึงวันนี้


โค้ดชิ้นแรกอยู่ตรงไหน

กติกาทุกข้อที่เล่ามาทั้งบทมีตัวตนจริงในรูปของโค้ดที่รันได้ และชุดแรกสุดยังอยู่ครบ ชุดที่ปล่อยเมื่อวันที่ 9 มกราคม 2009 ชื่อ Bitcoin v0.1 เป็นภาษา C++ รันบนวินโดวส์อย่างเดียว ทั้งโปรเจกต์มีหมื่นเก้าพันกว่าบรรทัด และเกินหนึ่งในสามของมันเป็นหน้าต่างโปรแกรม ไม่ใช่กติกา

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



ภาค 7 จาก 7 มุมเงิน ราคา และภาษี ส่วนที่คนตามข่าวสงสัยที่สุด ราคามาจากไหน ผันผวนแค่ไหน ถือเองหรือถือผ่านกองทุน และเสียภาษียังไงในไทย

ราคามาจากไหน

ถ้าคุณเรียนวิธีประเมินมูลค่าหุ้นมา คุณจะเคยเห็นการคิดจากกระแสเงินสดที่กิจการจะทำได้ในอนาคต ถ้าเป็นทองก็มีความต้องการใช้ในอุตสาหกรรมและเครื่องประดับรองอยู่ ถ้าเป็นที่ดินก็ให้ค่าเช่าได้

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

จุดที่คนเจอกันวันที่ผมเขียนอยู่ที่ ต่อเหรียญ หรือราว 2,554,294 บาท คิดเป็นมูลค่าตลาดราว 1.55 ล้านล้านดอลลาร์ ตัวเลขนี้จะไม่ตรงกับตอนที่คุณอ่านแน่นอน ซึ่งเป็นเรื่องปกติของของที่ราคาแกว่งทั้งวัน

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

สามเลนส์ที่คนใช้มองบิตคอยน์
เลนส์ ข้อโต้แย้งฝั่งสนับสนุน ข้อโต้แย้งฝั่งค้าน
ทองดิจิทัล อุปทานจำกัดและรู้ล่วงหน้า ไม่มีใครสั่งพิมพ์เพิ่มได้ ย้ายข้ามประเทศได้ด้วยการจำคำสิบสองคำ ทองมีประวัติการรักษามูลค่ามาหลายพันปี บิตคอยน์มีสิบเจ็ดปี และมันมักร่วงพร้อมสินทรัพย์เสี่ยงอื่น แทนที่จะสวนทาง
สินทรัพย์เสี่ยงตัวหนึ่งในพอร์ต เป็นคำอธิบายที่ตรงกับพฤติกรรมราคาจริงมากที่สุด และเป็นมุมที่กองทุนสถาบันใช้เข้าซื้อผ่าน ETF ถ้ามองแบบนี้ก็ต้องยอมรับว่ามันเป็นการเก็งกำไรที่ราคาขึ้นกับความต้องการล้วน ๆ ไม่ใช่ประกันความเสี่ยง
ระบบชำระเงิน ส่งข้ามประเทศได้โดยไม่ต้องผ่านธนาคาร มีประโยชน์จริงในประเทศที่เงินเฟ้อรุนแรงหรือระบบธนาคารเข้าถึงยาก บนสายหลักทำได้ไม่กี่รายการต่อวินาที ค่าธรรมเนียมแกว่ง และราคาที่ผันผวนทำให้ตั้งราคาสินค้าลำบาก
ทั้งสามเลนส์มีคนถือจริงและเถียงกันอยู่ ผมยกมาให้เห็นว่าคำถามว่าบิตคอยน์คืออะไรยังไม่มีคำตอบที่ทุกฝ่ายยอมรับ ใครที่เล่าให้คุณฟังเหมือนมันจบไปแล้ว กำลังขายเลนส์ของเขาให้คุณอยู่

ความผันผวนที่ตัวเลขไม่โกหก

เรื่องที่คนเล่าถึงบิตคอยน์บ่อยที่สุดคือรอบที่ราคาขึ้น แต่รอบที่ราคาลงก็เกิดขึ้นทุกรอบเช่นกัน และลงแรงมาก

การลงจากยอดถึงก้นในแต่ละรอบ
รอบ ยอด ก้น ลงไป ใช้เวลา ต้องขึ้นเท่าไรจึงกลับที่เดิม
2011 มิ.ย. 2011 พ.ย. 2011 -93% 5 เดือน +1,329%
2013 ถึง 2015 ธ.ค. 2013 ม.ค. 2015 -86% 13 เดือน +614%
2017 ถึง 2018 ธ.ค. 2017 ธ.ค. 2018 -84% 12 เดือน +525%
2021 ถึง 2022 พ.ย. 2021 พ.ย. 2022 -77% 12 เดือน +335%
ตัวเลขในสองคอลัมน์แรกเป็นค่าประมาณจากราคาปิดรายวัน ส่วนคอลัมน์สุดท้ายคำนวณตอน build จากคอลัมน์ที่สี่ ด้วยสูตรที่ว่าถ้าเหลือเงิน (1 ลบสัดส่วนที่ลง) ต้องคูณกลับด้วยส่วนกลับของมัน

คอลัมน์สุดท้ายคือเลขคณิตที่คนมองข้ามบ่อยที่สุด ลง 50% ต้องขึ้น 100% ถึงจะเท่าทุน ลง 93% อย่างรอบปี 2011 ต้องขึ้น 1,329% ความไม่สมมาตรข้อนี้ไม่ได้เกี่ยวกับบิตคอยน์โดยเฉพาะ มันเป็นจริงกับทุกสินทรัพย์ แต่มันเจ็บกว่าตรงนี้เพราะขนาดของการลงใหญ่กว่าที่อื่นมาก

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

ไฟที่เผาไป

การขุดต้องใช้ไฟฟ้าจริง และปริมาณไม่น้อย รายงานของศูนย์ทางเลือกทางการเงินแห่งเคมบริดจ์ปี 2025 ประเมินการใช้ไฟของทั้งเครือข่ายไว้ที่ราว 138 เทระวัตต์ชั่วโมงต่อปี หรือประมาณ 0.54% ของการใช้ไฟทั่วโลก และประเมินว่าราว 52% ของพลังงานที่ใช้มาจากแหล่งที่ยั่งยืน ซึ่งนับรวมพลังงานหมุนเวียนกับนิวเคลียร์

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

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

ถือเอง หรือถือผ่าน ETF

หลังปี 2024 คนที่อยากมีบิตคอยน์ในพอร์ตมีทางเลือกที่ต่างกันในเชิงโครงสร้าง ไม่ใช่แค่ต่างกันที่ความสะดวก

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

ภาษีคริปโตในไทย ณ ปี 2026

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

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

ฝั่งกฎหมายไทยมีความเคลื่อนไหวที่สำคัญในปี 2025 คือมีการออก กฎกระทรวงฉบับที่ 399 พ.ศ. 2568 ออกตามความในประมวลรัษฎากร ประกาศในราชกิจจานุเบกษาเมื่อวันที่ 5 กันยายน 2025 ยกเว้นภาษีเงินได้บุคคลธรรมดาสำหรับกำไรจากการขายคริปโทเคอร์เรนซีและโทเคนดิจิทัล ตั้งแต่วันที่ 1 มกราคม 2025 ถึงวันที่ 31 ธันวาคม 2029 รวมห้าปี

เงื่อนไขที่ทำให้สิทธิ์นี้หลุดได้ง่ายที่สุด

การยกเว้นนี้ใช้เฉพาะกำไรจากการขายผ่าน ผู้ประกอบธุรกิจสินทรัพย์ดิจิทัลที่ได้รับใบอนุญาตจาก ก.ล.ต. ไทย ซึ่งได้แก่ศูนย์ซื้อขาย นายหน้า และผู้ค้าที่จดทะเบียนในไทย กำไรจากการขายบนแพลตฟอร์มต่างประเทศที่ไม่มีใบอนุญาตไทย หรือจากการซื้อขายกันเองนอกระบบ ไม่เข้าเงื่อนไขนี้

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

เรื่องภาษีเป็นส่วนที่เปลี่ยนบ่อยที่สุดในบทความนี้ และรายละเอียดในทางปฏิบัติขึ้นกับกรณีของแต่ละคน สิ่งที่ผมทำได้คือชี้ตัวบทและวันที่ประกาศให้ ส่วนก่อนยื่นจริงควรตรวจกับประกาศฉบับล่าสุดของกรมสรรพากร หรือปรึกษาผู้ทำบัญชี เพราะข้อความในหน้านี้ตรวจสอบไว้ ณ วันที่ 3 กันยายน 2026

สิ่งที่คนถืออยู่แล้วตรวจเองได้จากบทนี้

ทั้งหมดข้างล่างนี้ผ่านตาคุณมาแล้วระหว่างทาง ตรงนี้แค่รวมไว้ที่เดียวสำหรับคนที่มีเหรียญอยู่จริง ทุกข้อเป็นเรื่องที่ตรวจได้ด้วยตัวเอง ไม่มีข้อไหนเป็นคำแนะนำว่าควรซื้อหรือควรขาย

ข้อที่คนถืออยู่แล้วมักประหลาดใจที่สุดคือข้อแรก เพราะมันเป็นข้อเดียวที่ไม่ส่งเสียงอะไรเลยตอนปกติ ยอดในแอปขึ้นเท่าเดิม กราฟเดินเหมือนกัน และมันจะต่างก็ต่อเมื่อสายเกินจะย้ายแล้ว ตัวอย่างของวันแบบนั้นอยู่ในไทม์ไลน์ข้างบน ทั้ง Mt.Gox และ FTX


สรุปบรรทัดเดียว

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

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

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

แหล่งอ้างอิง

เรียบเรียงและอธิบายใหม่ด้วยคำตัวเอง โดยตรวจสอบข้อเท็จจริงกับแหล่งปฐมภูมิด้านล่าง

  1. เอกสารต้นฉบับ Bitcoin: A Peer-to-Peer Electronic Cash System โดย Satoshi Nakamoto เผยแพร่ 31 ตุลาคม 2008 (bitcoin.org/bitcoin.pdf) หัวข้อ double-spending การเรียงลำดับด้วย proof of work และการรอหลายบล็อกก่อนถือว่ายืนยันแล้ว มาจากเอกสารฉบับนี้โดยตรง
  2. สถานะเครือข่าย ณ 3 กันยายน 2026 ความสูงบล็อก 965,238 อัตราแฮชราว 909.6 เอกซะแฮชต่อวินาที และค่าความยาก 125,807,076,547,198 อ่านจากหน้า mempool.space/mining ภาพหน้าจอของทั้งสามค่าอยู่ในกล่องอธิบายข้างตัวเลขแต่ละตัวในบทความ
  3. ราคาอ้างอิง 77,006 ดอลลาร์ หรือราว 2,554,294 บาทต่อเหรียญ และมูลค่าตลาดราว 1.55 ล้านล้านดอลลาร์ อ่านจาก CoinGecko ณ 3 กันยายน 2026 ราคาเปลี่ยนตลอดเวลา ตัวเลขนี้ใช้เพื่อให้เห็นภาพขนาดเท่านั้น
  4. ตารางการออกเหรียญและกราฟอุปทานสะสมในหน้านี้ ผมคำนวณเองตอน build จากกติกาสองข้อ คือรางวัลเริ่มต้น 50 เหรียญ และหารครึ่งทุก 210,000 บล็อกบนหน่วยจำนวนเต็มซาโตชิ ยอดรวม 20,999,999.9769 เหรียญเป็นผลลัพธ์ของโมเดลนี้ วันที่ฮาล์ฟวิงสี่ครั้งแรกเป็นวันที่เกิดขึ้นจริง ส่วนยุคถัดไปเป็นการประมาณจากอัตราสิบนาทีต่อบล็อก
  5. ขนาดสมุดราว 748 GB ณ 3 กันยายน 2026 และค่าเมื่อ 1 กันยายน 2025 ราว 667 GB อ่านจากกราฟ Blockchain Size ของ blockchain.com ส่วนอัตราโตต่อปีในบทความคือผลต่างของสองค่านี้ ภาพหน้าจอของกราฟอยู่ในกล่องอธิบายข้างตัวเลข
  6. เพดานน้ำหนักบล็อก 4,000,000 หน่วย ซึ่งเป็นที่มาของเพดานราว 4 เมกะไบต์ต่อบล็อก ระบุไว้ใน BIP-141 ส่วนเพดาน 205 GB ต่อปี ผมคูณเองจากจำนวนบล็อกต่อปีที่กติกาเล็งไว้
  7. ตัวเลข 83,000 ข้อความต่อวินาทีของวีซ่า มาจากคำอธิบายเครือข่ายของบริษัทเองที่ระบุว่า "processing up to 83,000 transaction messages per second worldwide" (Visa) สืบค้น 3 กันยายน 2026
  8. เพดานน้ำหนักบล็อกและวิธีปรับความยาก อ้างตามโค้ดที่ใช้จริง คือกติกาจำกัดเวลาจริง ไม่ให้ต่างจากรอบเป้าหมายเกิน 4 เท่าในรอบเดียว ก่อนคูณเป้าเดิมด้วยอัตราส่วน (pow.cpp)
  9. การปรับความยากลง 27.94% เมื่อ 3 กรกฎาคม 2021 ที่ความสูง 689,472 ซึ่งเป็นการลดครั้งเดียวที่แรงที่สุดในประวัติศาสตร์ ผมอ่านจากประวัติการปรับความยากทั้งหมดของ mempool.space สืบค้น 3 กันยายน 2026
  10. เหตุการณ์พิซซ่า 22 พฤษภาคม 2010 โดย Laszlo Hanyecz และผู้รับข้อเสนอ Jeremy Sturdivant อ้างตามบันทึกกระทู้ในเว็บบอร์ด BitcoinTalk และหน้าประวัติใน Bitcoin Wiki
  11. Mt.Gox ยื่นล้มละลายเมื่อ 28 กุมภาพันธ์ 2014 โดยแจ้งว่าบิตคอยน์ราว 850,000 เหรียญหายไป ในจำนวนนั้น 750,000 เหรียญเป็นของลูกค้า และภายหลังพบคืนราว 200,000 เหรียญ (NPR)
  12. ซอร์สโค้ด Bitcoin v0.1 ที่เผยแพร่เมื่อ 9 มกราคม 2009 (สำเนาที่เก็บไว้บน GitHub) ที่มาของจำนวนบรรทัดที่อ้างถึงในหัวข้อโค้ดชิ้นแรก ซึ่งผมนับเองจากไฟล์จริงในชุดนั้น โค้ดที่ยกมาทีละชิ้นอยู่ในหน้า เปิดฝาดูโค้ดชิ้นแรกของบิตคอยน์
  13. ลำดับการเผยแพร่: Hal Finney โหลดโปรแกรมชุดแรกไปรันในวันที่ปล่อย และธุรกรรมระหว่างคนสองคนครั้งแรก เกิดขึ้นในบล็อกที่ 170 เมื่อ 12 มกราคม 2009 เป็นการโอน 10 บิตคอยน์จาก Satoshi ไปหา Hal Finney ตรวจสอบตัวบล็อกได้จาก block explorer ใด ๆ ส่วนเวลาของบล็อกกำเนิด 1231006505 อ่านได้จากโค้ดในรายการก่อนหน้า
  14. การลดความยากครั้งใหญ่ที่สุดในประวัติศาสตร์เกิดขึ้นในเดือนกรกฎาคม 2021 หลังจีนสั่งห้ามการขุด โดยกำลังขุดของทั้งเครือข่ายหายไปราวครึ่งหนึ่งภายในไม่กี่สัปดาห์ ตรวจสอบได้จากประวัติค่าความยากบน mempool.space
  15. การแยกสายเป็น Bitcoin Cash เมื่อ 1 สิงหาคม 2017 เป็นผลจากข้อถกเถียงเรื่องขนาดบล็อกที่ยืดเยื้อมาตั้งแต่ปี 2015 ส่วนโครงสร้างต้นไม้เมอร์เคิลที่ใช้ในหัวบล็อก ระบุไว้ในหัวข้อที่ 7 ของเอกสารต้นฉบับในรายการแรก
  16. การอนุมัติ ETF ที่ถือบิตคอยน์จริงจำนวนสิบเอ็ดกองเมื่อ 10 มกราคม 2024 อ้างตามแถลงการณ์ของประธานคณะกรรมการกำกับหลักทรัพย์สหรัฐ (SEC)
  17. ตัวเลขพลังงาน 138 เทระวัตต์ชั่วโมงต่อปี และสัดส่วนพลังงานยั่งยืนราว 52% มาจากรายงานอุตสาหกรรมการขุดดิจิทัลปี 2025 ของศูนย์ทางเลือกทางการเงินแห่งเคมบริดจ์ (CBECI) ข้อสังเกต: การประเมินแบบนี้มีช่วงความไม่แน่นอนกว้าง แหล่งอื่นในช่วงเวลาเดียวกันให้ตัวเลขสูงกว่านี้อยู่พอสมควร
  18. การยกเว้นภาษีเงินได้บุคคลธรรมดาสำหรับกำไรจากการขายสินทรัพย์ดิจิทัลผ่านผู้ประกอบธุรกิจที่ได้รับใบอนุญาตจาก ก.ล.ต. ระหว่าง 1 มกราคม 2025 ถึง 31 ธันวาคม 2029 อ้างตามกฎกระทรวงฉบับที่ 399 พ.ศ. 2568 ประกาศในราชกิจจานุเบกษาวันที่ 5 กันยายน 2025 สืบค้น 3 กันยายน 2026 เรื่องภาษีเปลี่ยนบ่อย ควรตรวจกับ กรมสรรพากร ก่อนยื่นจริง
  19. ตารางดรอว์ดาวน์รายรอบเป็นค่าประมาณจากราคาปิดรายวันในช่วงที่ระบุ ตัวเลขจากแหล่งราคาต่างเจ้ากันจะคลาดเคลื่อนกันได้ไม่กี่เปอร์เซ็นต์ ส่วนคอลัมน์ที่บอกว่าต้องขึ้นเท่าไรจึงกลับที่เดิม คำนวณเองจากคอลัมน์ก่อนหน้า
  20. ของเล่นสามชิ้นในหน้านี้ ผมเขียนเอง ทำงานในเครื่องผู้อ่านล้วนผ่าน Web Crypto API ที่มากับเบราว์เซอร์ ไม่มีการส่งข้อความที่คุณพิมพ์ออกไปที่ไหน และไม่ได้เชื่อมกับเครือข่ายบิตคอยน์จริง
  21. บันทึกนี้ทำเพื่อการศึกษาเท่านั้น ไม่ใช่คำแนะนำการลงทุนหรือคำแนะนำทางภาษี